Infrastructure Composer を使用して最初のアプリケーションを構築する - AWS Infrastructure Composer

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Infrastructure Composer を使用して最初のアプリケーションを構築する

このチュートリアルでは、 AWS Infrastructure Composer を使用して、データベース内のユーザーを管理する作成、読み取り、更新、削除 (CRUD) サーバーレスアプリケーションを構築します。

このチュートリアルでは、 で Infrastructure Composer を使用します AWS Management Console。Google Chrome または Microsoft Edgeと全画面表示のブラウザウィンドウを使用することをお勧めします。

サーバーレスを初めてご利用の場合:

次のトピックの基礎的な理解を備えておくことをお勧めします。

詳細については、「のサーバーレスの概念 AWS Infrastructure Composer」を参照してください。

リソースプロパティリファレンス

アプリケーションの構築時に、この表を参照して Amazon API Gateway と AWS Lambda リソースのプロパティを設定します。

[メソッド] パス 関数名

GET

/ 項目

getItems

GET

/items/{id}

getItem

PUT

/items/{id}

UpdateItem(更新項目)

POST

/ 項目

addItem

DELETE

/items/{id}

deleteItem

ステップ 1: プロジェクトを作成する

CRUD サーバーレスアプリケーションの使用を開始するには、Infrastructure Composer で新しいプロジェクトを作成し、ローカル同期を有効にします。

新しい空のプロジェクトを作成するには
  1. Infrastructure Composer コンソールにサインインします。

  2. ホームページで、プロジェクトの作成を選択します。

次の図に示すように、Infrastructure Composer はビジュアルキャンバスを開き、開始 (空白) アプリケーションテンプレートをロードします。

空白のビジュアルキャンバスを持つ Infrastructure Composer。
ローカル同期を有効にするには
  1. Infrastructure Composer メニューから保存 > ローカル同期のアクティブ化を選択します。

    ローカル同期のアクティブ化が選択された Infrastructure Composer メニュー。
  2. プロジェクトの場所 で、フォルダの選択 を押し、ディレクトリを選択します。ここで、Infrastructure Composer は設計時にテンプレートファイルとフォルダを保存および同期します。

    プロジェクトの場所には、既存のアプリケーションテンプレートを含めることはできません。

    注記

    ローカル同期には、ファイルシステムアクセス API をサポートするブラウザが必要です。詳細については、「Data Infrastructure Composer が にアクセス」を参照してください。

  3. アクセスを許可するように求められたら、ファイルの表示を選択します。

  4. Activate を押してローカル同期を有効にします。変更を保存するように求められたら、変更の保存を選択します。

    有効にすると、キャンバスの左上に自動保存インジケータが表示されます。

ステップ 2: キャンバスにカードを追加する

API Gateway REST API と 5 つの Lambda 関数から始めて、拡張コンポーネントカードを使用してアプリケーションアーキテクチャの設計を開始します。

API Gateway と Lambda カードをキャンバスに追加するには

リソースパレットの拡張コンポーネントセクションで、次の操作を行います。

  1. API Gateway カードをキャンバスにドラッグします。

  2. Lambda 関数カードをキャンバスにドラッグします。キャンバスに 5 つの Lambda 関数カードを追加するまで繰り返します。

1 つの API Gateway と 5 つの Lambda 関数カードを含む Infrastructure Composer キャンバスビュー。

ステップ 3: API Gateway REST API を設定する

次に、API Gateway カード内に 5 つのルートを追加します。

API Gateway カードにルートを追加するには
  1. API Gateway カードのリソースプロパティパネルを開きます。パネルを開くには、カードをダブルクリックします。または、カードを選択し、詳細を選択します。

  2. リソースプロパティパネルのルートで、次の操作を行います。

    注記

    次の各ルートで、リソースプロパティリファレンステーブルで指定された HTTP メソッドとパス値を使用します。

    1. メソッド で、指定された HTTP メソッドを選択します。例えば、GET

    2. パス に、指定されたパスを入力します。例えば、/items と指定します。

    3. [Add Rule] (ルートの追加) を選択します。

    4. 指定した 5 つのルートをすべて追加するまで、前のステップを繰り返します。

  3. [Save] を選択します。

5 つのルートを持つ API Gateway リソースを持つ Infrastructure Composer ビジュアルキャンバス。Resource properties パネルには、メソッド、パス、ルートの追加の選択が表示されます。

ステップ 4: Lambda 関数を設定する

リソースプロパティリファレンステーブルで指定されているように、5 つの Lambda 関数にそれぞれ名前を付けます。

Lambda 関数に名前を付けるには
  1. Lambda 関数カードのリソースプロパティパネルを開きます。パネルを開くには、カードをダブルクリックします。または、カードを選択し、詳細を選択します。

  2. リソースプロパティパネルの論理 ID に、指定された関数名を入力します。例えば、getItems と指定します。

  3. [Save] を選択します。

  4. 5 つの関数すべてに名前を付けるまで、前のステップを繰り返します。

5 つの名前付き Lambda Function リソースカードを持つ Infrastructure Composer ビジュアルキャンバス。

ステップ 5: カードを接続する

リソースプロパティリファレンステーブルで指定されているように、API Gateway カードの各ルートを関連する Lambda 関数カードに接続します。

カードを接続するには
  1. API Gateway カードの右のポートをクリックし、指定した Lambda 関数カードの左のポートにドラッグします。たとえば、GET /items ポートをクリックし、getItems の左ポートにドラッグします。

  2. API Gateway カード上の 5 つのルートすべてを対応する Lambda 関数カードに接続するまで、前のステップを繰り返します。

REST API が 5 つの Lambda 関数に接続された Infrastructure Composer ビジュアルキャンバス。

ステップ 6: キャンバスを整理する

Lambda 関数をグループ化し、すべてのカードを配置して、ビジュアルキャンバスを整理します。

関数をグループ化するには
  1. Shift を押したまま、キャンバス上の各 Lambda 関数カードを選択します。

  2. [グループ] を選択します。

グループに名前を付けるには
  1. グループ名 (グループ) の近くにあるグループの上部をダブルクリックします。

    グループプロパティパネルが開きます。

  2. グループプロパティパネルのグループ名に と入力しますAPI

  3. [Save] を選択します。

カードを配置するには

キャンバスのメインビューエリアの上にある「配置」を選択します。

Infrastructure Composer は、次に示すように、新しいグループ (API) を含むすべてのカードをビジュアルキャンバスに配置および配置します。

Infrastructure Composer ビジュアルキャンバスは、すべての Lambda 関数がグループ化されて配置されています。

ステップ 7: DynamoDB テーブルを追加して接続する

次に、DynamoDB テーブルをアプリケーションアーキテクチャに追加し、Lambda 関数に接続します。

DynamoDB テーブルを追加して接続するには
  1. リソースパレット (リソース) から、拡張コンポーネントセクションで、DynamoDB テーブルカードをキャンバスにドラッグします。

  2. Lambda 関数カードの右のポートをクリックし、DynamoDB テーブルカードの左のポートにドラッグします。

  3. 5 つの Lambda 関数カードすべてを DynamoDB テーブルカードに接続するまで、前のステップを繰り返します。

  4. (オプション) キャンバス上のカードを再編成して再配置するには、配置を選択します。

グループ API に接続された DynamoDB テーブルを持つ Infrastructure Composer ビジュアルキャンバス。

ステップ 8: テンプレートを確認する AWS CloudFormation

お疲れ様でした。デプロイの準備ができたサーバーレスアプリケーションを正常に設計しました。最後に、テンプレートを選択して、Infrastructure Composer が自動的に生成した AWS CloudFormation テンプレートを確認します。

テンプレートでは、Infrastructure Composer は以下を定義しています。

  • Transform 宣言。テンプレートを (AWS SAM) テンプレートとして AWS Serverless Application Model 指定します。詳細については、「 AWS Serverless Application Model デベロッパーガイド」のAWS SAM 「 テンプレートの構造」を参照してください。

  • AWS::Serverless::Api リソース。5 つのルートで API Gateway REST API を指定します。

  • 環境変数やアクセス許可ポリシーなど、Lambda 関数の設定を指定する 5 つのAWS::Serverless::Functionリソース。

  • DynamoDB テーブルとそのプロパティを指定する AWS::DynamoDB::Tableリソース。

  • Metadata セクションには、リソースグループ (API) に関する情報が含まれています。このセクションの詳細については、「 AWS CloudFormation ユーザーガイド」の「メタデータ」を参照してください。

アプリケーションのテンプレートコードを示す Infrastructure Composer テンプレートビュー。

ステップ 9: を開発ワークフローに統合する

Infrastructure Composer が作成したテンプレートファイルとプロジェクトディレクトリを使用して、さらなるテストとデプロイを行います。

次のステップ

これで、Infrastructure Composer を使用して独自のアプリケーションを構築する準備ができました。Infrastructure Composer の使用の詳細については、「」を参照してくださいで を構成する方法 AWS Infrastructure Composer。アプリケーションをデプロイする準備ができたら、「」を参照してくださいInfrastructure Composer サーバーレスアプリケーションを AWS クラウドにデプロイする