AWS インフラストラクチャコンポーザーとは何ですか?
AWS Infrastructure Composer は、視覚的なキャンバスで AWS のサービスをドラッグ、グループ化、接続することで、デベロッパーがアプリケーションアーキテクチャをより簡単に設計できるようにする視覚的なビルダーです。開発者は新しいアーキテクチャをゼロから始めることも、既存の AWS CloudFormation または AWS サーバーレスアプリケーションモデル (SAM) テンプレートをインポートすることもできます。AWS Infrastructure Composer のエクスペリエンスは、AWS Lambda、AWS Step Functions、Amazon EventBridge などの一般的なサーバーレスサービスに焦点を当てていますが、AWS CloudFormation のリソースでサポートされている任意の AWS のサービスを構成するために使用できます。デベロッパーは Infrastructure as Code (IaC) をエクスポートして、AWS SAM コマンドラインインターフェイス (CLI) を使用したローカルテスト、バージョン管理を通じたピアレビュー、CloudFormation ならびに継続的インテグレーションおよびデリバリー (CI/CD) パイプラインを通じたデプロイなど、既存のプロセスに組み込むことができます。
AWS インフラストラクチャコンポーザーを使用する理由を教えてください。
AWS Infrastructure Composer は、現代のインフラストラクチャを構築する際の抽象的な推測作業を、理解しやすく、すぐに反復できる視覚的なプロセスに変えます。最初に IaC フレームワークを学習したり、サービスドキュメントを参照したりする必要はありません。同僚とホワイトボードで行うように、すぐにソリューションを図に起こして、必要に応じて概念的または具体的にすることができます。ビジュアルエディタで繰り返し作業を進めていくと、AWS Infrastructure Composer は関連するサービス統合、リソース間の AWS Identity and Access Management (IAM) ポリシーアクションの設定を準備し、コンテキストに関連するラベルでリソースをグループ化してチームが連携できるように支援します。
IDE でインフラストラクチャーコンポーザーを使用できますか?
はい、インフラストラクチャコンポーザーは Visual Studio Code 用 AWS ツールキットに含まれています。まず、 AWS ツールキットをインストールします。IDE で CloudFormation テンプレートを開き、「Infrastructure Composer で開く」ボタンをクリックします。VS Code ファイルブラウザで CloudFormation テンプレートを右クリックして、インフラストラクチャコンポーザーを開くこともできます。
CodeWhisperer を AWS インフラストラクチャコンポーザーで使用できますか?
はい。CodeWhisperer は AWS Infrastructure Composer とともに Visual Studio Code 用の AWS ツールキットに含まれています。一緒に使用すれば、CodeWhisperer を使用してアイデアから機能的な CloudFormation テンプレートへと移行し、AWS Infrastructure Composer で新しいテンプレートを視覚化してアプリケーションの編集を続けることができます。CodeWhisperer は、VS Code で有効にすると、AWS Infrastructure Composer のリソースの詳細ページから直接 CloudFormation リソース構成を自動的に生成することもできます。テンプレートまたは図にコードの提案を受け入れると、変更が自動的に他のテンプレートまたは図に反映されます。
ビジュアルエディターにはどのようなリソースがありますか?
AWS Infrastructure Composer は、CloudFormation で定義された AWS アーキテクチャをインポートして視覚化できます。AWS Infrastructure Composer は、視覚的なビルダーを通じて追加するサービスのリソースプロパティをスキャフォールディングするのに役立ちます。また、多くのサーバーレスリソースは、他のサービスとの統合を含むベストプラクティス IaC で設定されます。
アプリケーションでワークフローを定義できますか?
はい。Infrastructure Composer は、アプリケーション内の複数のサービスのオーケストレーションを可能にする AWS Step Functions ワークフローをサポートしています。Step Functions サービスをアプリケーションに追加し、Infrastructure Composer 内の Step Functions ワークフローのビジュアルビルダーである Step Functions Workflow Studio を使用してワークフローを編集し、単一のビジュアルビルダーエクスペリエンスを実現できます。Infrastructure ComposerのWorkflow Studioを使用すると、ワークフローを視覚的に設計したり、ワークフロータスクをアプリケーションリソースに簡単にリンクしたり、定義の代替によるさまざまな環境やアカウントのリソースのパラメータ化を合理化したり、リソース間でIAMポリシーアクションを準備したりすることで、開発から展開までのプロセスを加速できます。
どの IaC テンプレートがサポートされていますか?
CloudFormation テンプレートと AWS SAM テンプレートを使用してインポートおよび視覚化できます。
AWS インフラストラクチャコンポーザーはどのようにしてダイアグラムをインフラストラクチャに変換しますか?
AWS インフラストラクチャーコンポーザーは、CloudFormation のサポートから始めて、IaC 定義に変換できるアーキテクチャ全体のモデルを維持しています。ビジュアルエディタでこれらの定義のプレビューを表示したり、インフラストラクチャテンプレート全体をエクスポートして、バージョン管理プロセスに組み込んだりできます。エディタを使用してリソースを接続すると、AWS Infrastructure Composer は、2 つのサービスを統合する意図を、関連するサービス統合と IAM 許可に対応する IaC 設定に変換するように設計されています。これらは、いつでも検査または変更できます。たとえば、Amazon Simple Storage Service (S3) バケットをビジュアルキャンバスに追加し、それを Lambda 関数に接続すると、IAM ポリシー、イベントサブスクリプション、および関数自体のスキャフォールドファイルに必要な設定が生成されます。
AWS インフラストラクチャコンポーザーは AWS ベストプラクティスに従うのにどのように役立ちますか?
AWS インフラストラクチャコンポーザーは、AWS のベストプラクティスに従った IaC 定義を設定するように設計されています。例えば、デベロッパーがキャンバスに S3 バケットを追加すると、AWSInfrastructure Composer は BucketEncryption プロパティと PublicAccessBlockConfiguration プロパティを設定および統合するように設計されているため、デフォルトの AWS Key Management Service (KMS) キーで暗号化がアクティブ化され、パブリックアクセスが非アクティブ化されます。CloudFormationを深く掘り下げなくてもビジュアルエディターでこれらの設定を変更できますが、何もしなければ、よくある設定ミスや見落としを減らすために、AWSのベストプラクティスに従ったS3バケットをデプロイできます。
AWS インフラストラクチャコンポーザーで既存のインフラストラクチャを編集できますか?
はい。AWS Infrastructure Composer を使用すると、既存の CloudFormation IaC テンプレートをインポートできます。 Infrastructure Composer は、テンプレートの編集可能なビジュアライゼーションを迅速に提供します。
AWS インフラストラクチャコンポーザーはアプリケーションアーキテクチャのデプロイに役立ちますか?
AWS Infrastructure Composer を使用して、デプロイ可能な CloudFormation テンプレートを編集およびエクスポートし、いくつかの AWS サーバーレスリソースのために AWS のベストプラクティスを組み込むことができます。このテンプレートは、AWS SAM CLI を通じて CloudFormation ツールでデプロイするか、CloudFormation テンプレートと互換性のある既存の CI/CD ツールでデプロイできます。
AWS インフラストラクチャコンポーザーの料金はいくらですか?
AWS Infrastructure Composer は追加料金なしで使用できます。手動で作成した場合と同じ方法で、AWS Infrastructure Composer を使用して作成された AWS リソース (S3 バケットや Lambda 関数など) の料金をお支払いいただきます。実際に使用した分の料金のみをお支払いいただきます。最低料金や前払いの義務は発生しません。