AWS クラウド開発キット

使い慣れたプログラミング言語を使用してクラウドインフラストラクチャを定義する

AWS Cloud Development Kit (AWS CDK) は、使い慣れたプログラミング言語を使用してクラウドアプリケーションリソースを定義するためのオープンソースのソフトウェア開発フレームワークです。

クラウドアプリケーションのプロビジョニングは、手作業やカスタムスクリプトの作成を必要としたり、テンプレート管理やドメイン固有の言語の学習を必要としたりする困難なプロセスになる場合があります。AWS CDK では、アプリケーションのモデリングに、プログラミング言語についての知識とプログラミング言語の表現力を使用できます。実証済みのデフォルト設定でクラウドリソースを事前設定する、コンストラクトという高レベルのコンポーネントが用意されているため、クラウドアプリケーションを簡単に構築できます。AWS CDK では、AWS CloudFormation を使用してリソースを安全かつ反復可能な方法でプロビジョニングできます。また、組織の要件を組み込んだ独自のカスタム構成を作成して共有できるため、新しいプロジェクトを促進できます。

Terraform を好まれるお客様には、CDK コンストラクトが cdktf によって作成されるため、TypeScript および Python で Terraform HCL ステートファイルが定義されます。Kubernetes ユーザーの場合、cdk8s プロジェクトでは、CDK 構造を使用して TypeScript、Python、Java で Kubernetes 構成を定義できます。さらに、cdk8s は、どこでも実行される Kubernetes インフラストラクチャを定義するために使用でき、AWS CDK の Amazon Elastic Kubernetes Service (Amazon EKS) コンストラクトライブラリで使用できます。cdk8s および cdktf はどちらもアルファリリースです。 これらすべての CDK を 1 か所で見つけるには、オープンソースコミュニティ、AWS、およびパートナーによって公開されているコンストラクトライブラリを見つけてから、共通の場所である Construct Hub を確認してください。

Amazon CTO Werner Vogels が語る AWS CDK の利点 (15:00)

利点

クラウドへの簡単なオンボーディング

AWS CDK では新たに学習すべきことがほとんどないため、AWS へのオンボーディングを加速します。CDK では既存のスキルやツールの使用が可能になるため、それをクラウドインフラストラクチャの構築タスクに適用できます。また、CDK で提供される高レベルのコンポーネントによって、クラウドリソースが実績のあるデフォルト設定を使用して事前設定されるため、専門知識がなくても AWS での構築を行えます。

より迅速な開発プロセス

AWS CDK では、インフラストラクチャを定義するためにプログラミング言語の表現力を活用できます。オブジェクト、ループ、条件といった使い慣れた機能により開発プロセスを加速できます。 また、統合開発環境 (IDE) で AWS CDK を使用し、既存の生産性ツールやテストフレームワークを活用することも可能です。

カスタマイズおよび共有可能

AWS CDK では、組織のセキュリティ、コンプライアンス、ガバナンスの要件を満たした再利用可能な独自のコンポーネントを設計できます。他のソフトウェアライブラリと同様、組織全体にコンポーネントを簡単に共有できるため、デフォルトでベストプラクティスを使用して新しいプロジェクトを迅速に立ち上げることができます。

コンテキスト切り替えが不要

AWS CDK では、お使いの IDE 内でクラウドアプリケーションを構築できます。ランタイムコードの記述や、AWS リソースの定義に、同じプログラミング言語を使用します。AWS Toolkit for VS Code を使用して、CDK アプリケーションスタックとリソースを視覚化できます。

仕組み

仕組み - AWS Cloud Development Kit

お客様

deepwatch

deepwatch は、企業ネットワークをどこでも、毎日保護することにより、デジタル経済を安全にしています。 deepwatch は、世界クラスのセキュリティエキスパートのチームによって管理される Cloud SecOps プラットフォームを提供し、受賞歴のある Managed Detection & Response(MDR)、Vulnerability Management、および Endpoint Detection & Response Services を顧客に提供します。

deepwatch は、クライアントに最高のサービスを提供するため常に革新を続けています。deepwatch のエンジニアリングチームは、サーバーレスファーストのアプローチでソフトウェアを開発する機能を必要としていました。また、スケーラブルでデベロッパーに優しい Infrastructure as Code フレームワークをより速く移動することを望んでいました。これを可能にするために、チームは AWS Cloud Development Kit (CDK) を実装することを選択しました。 

「厳格なセキュリティ基準は、私たちの活動にとって重要です。AWS CDK を使用することにより、チームは CI/CD パイプラインとシームレスに統合しながら、最も一般的なインフラストラクチャパターンをより迅速かつ効率的にプロビジョニングできます。AWS CDK の活用を決定後、完全にテスト可能でリバースエンジニアリングされた非常に複雑なバックエンドインフラストラクチャを 2 週間以内に移行し、効率を 60% 向上させました。IAC 製品スイート全体を AWS CDK に移行します。互いに信頼できる開発チームとなることが目標です。CDK は、チームとしてより速く、よりスマートに作業する能力を大幅に向上させ、その目標をサポートしています。」

Parag Baxi、製品エンジニアリング部長 - deepwatch

Culture Amp

Culture Amp によって、従業員のフィードバックを簡単に収集、理解、取り入れるようにすることで、企業をより働きやすい職場にできます。Culture Amp により、HR リーダーはより適切な意思決定を行い、影響力を示し、企業文化を競争力に変えることができます。Culture Amp は AWS を使用して、2012 年に世界初のオンデマンドの従業員フィードバックプラットフォームを構築しました。それ以来、メルボルン、サンフランシスコ、ニューヨーク、ロンドンオフィスから急増している世界中の顧客をサポートしてきました。主に AWS Fargate、Amazon DynamoDB、Amazon Relational Database Service を使用して、Amazon EC2 で実行されていた単一リージョンのモノリシックアプリケーションを、Amazon Elastic Container Service 上で実行されるマイクロサービスベースのマルチリージョンアーキテクチャにモダナイズすることを Culture Amp が決定するにあたっては、制限付きの環境にログインしなくても、または AWS や AWS CloudFormation に関する詳細な知識を習得しなくても、事前承認済みの AWS アーキテクチャをエンジニアが利用できる方法を求めていました。Culture Amp チームは、AWS Cloud Development Kit (AWS CDK) を利用して、サポート対象のデータベースとユーザーロールを共有し、反復可能な方法で AWS Fargate サービスのプロビジョニングを自動化しました。Culture Amp は、カスタム AWS CDK コンストラクトのライブラリを構築した結果、豊富な機能を備え、開発チーム間でスピードと効率を向上できるエンジニア向けの新しいマイクロサービスをプログラムで作成できるようになりました。

「現在、エンジニアは豊富な機能を備えた事前承認済みの AWS アーキテクチャを利用できます。これには、詳細なデプロイロール、ロードバランシング、認定の検証、自動スケーリング、ログを転送する AWS Lambda 関数、ストレージバックエンドとしての Dynamo または RDS の選択などの AWS Fargate サービスが含まれます。以前は 6 週間かかっていたものを、たった数時間で実行できるようになりました」。

Matthew Tapper 氏、リード SRE エンジニア - Culture Amp

Stedi

Stedi は手間のかかるポイントツーポイント運用によらず、取引先との接続およびトランザクションを高速処理する機能を法人組織に提供していますが、標準化フォーマットで 300 超のさまざまな商取引タイプを処理する完全セルフサービス型の「デジタルメールボックス」によってこれが可能になりました。

Stedi には、世界のあらゆる B2B トランザクションを処理することで、企業で単純作業に費やされる膨大な時間をセーブするという野望があります。これには、まず自社内で単純作業をなくすことが先決で、このために Stedi でフルサーバーレスの AWS アーキテクチャによるビルドを早期に決めたのです。しかし、Stedi と AWS の協業は単なるサーバーレスアーキテクチャにとどまらず、AWS CDKAWS Amplify のような AWS ネイティブのデベロッパーツールを採用して、イテレーションを高速化し、デプロイ頻度を上げました。

「きっかけは CDK でした。フィードバックのサイクルが大きく改善され、まったく新しいインフラストラクチャのフルデプロイまでの時間が短縮されました」。

Tyler van Hensbergen 氏、エンジニアリング - Stedi

CyberArk

CyberArk は、エンタープライズ全体にわたって、DevOps パイプラインを通して、クラウド内のデータ、インフラストラクチャ、アセットを保護するための IT マネジメントの重要なレイヤーであるアクセス権限管理の領域におけるグローバルリーダーです。CyberArk は、権限付き認証情報およびシークレットによってリスクを軽減するソリューションを提供しています。同社は Fortune 500 社の 50% 超を含む世界のトップクラスの企業から信頼を得て、外部からの攻撃者や悪意のあるインサイダーから保護します。

製品の特徴を見る
製品の特徴を見る

AWS CDK の機能の詳細について確認できます。

詳細 
無料のアカウントにサインアップ
無料のアカウントにサインアップ

AWS 無料利用枠にすぐにアクセスできます。 

サインアップ 
ドキュメント
ドキュメント

デベロッパーガイドで AWS CDK の詳細をご覧ください。

詳細はこちら