Infrastructure Composer のビジュアルキャンバスでカードを接続する - AWS Infrastructure Composer

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

Infrastructure Composer のビジュアルキャンバスでカードを接続する

このトピックを使用して、Infrastructure Composer でカードを接続する方法を理解します。このセクションでは、拡張コンポーネントカードと標準コンポーネントカードの接続について詳しく説明します。また、カードを接続するさまざまな方法を示すいくつかの例も示します。

拡張コンポーネントカードの接続

拡張コンポーネントカードでは、ポートは接続できる場所を視覚的に識別します。

  • カードの右側にあるポートは、カードが別のカードを呼び出す機会を示します。

  • カードの左側にあるポートは、別のカードによってカードが呼び出される機会を示します。

1 つのカードの右のポートをクリックし、別のカードの左のポートにドラッグして、カードを接続します。

Lambda 関数に接続されている API Gateway カード。

接続を作成すると、接続が正常に行われたかどうかを知らせるメッセージが表示されます。メッセージを選択すると、Infrastructure Composer が接続をプロビジョニングするために変更した内容が表示されます。接続が失敗した場合は、テンプレートビューを選択してインフラストラクチャコードを手動で更新し、接続をプロビジョニングできます。

  • 成功したら、メッセージをクリックして変更インスペクターを表示します。ここでは、接続をプロビジョニングするために Infrastructure Composer が変更した内容を確認できます。

  • 失敗すると、メッセージが表示されます。テンプレートビューを選択し、インフラストラクチャコードを手動で更新して接続をプロビジョニングできます。

画面の下部から Change Inspector を起動します。

拡張コンポーネントカードを接続すると、Infrastructure Composer はテンプレートにインフラストラクチャコードを自動的に作成して、リソース間のイベント駆動型の関係をプロビジョニングします。

標準コンポーネントカード (標準 IaC リソースカード) の接続

標準 IaC リソースカードには、他のリソースとの接続を作成するためのポートは含まれていません。カード設定中に、アプリケーションのテンプレートでイベント駆動型の関係を指定すると、Infrastructure Composer はこれらの接続を自動的に検出し、カード間の点線で視覚化します。以下は、標準コンポーネントカードと拡張コンポーネントカード間の接続の例です。

拡張コンポーネントカードに接続された標準コンポーネントカード。

次の例は、Lambda 関数を Amazon API Gateway の rest API に接続する方法を示しています。

AWSTemplateFormatVersion: '2010-09-09' Resources: MyApi: Type: 'AWS::ApiGateway::RestApi' Properties: Name: MyApi ApiGatewayMethod: Type: 'AWS::ApiGateway::Method' Properties: HttpMethod: POST # Specify the HTTP method you want to use (e.g., GET, POST, PUT, DELETE) ResourceId: !GetAtt MyApi.RootResourceId RestApiId: !Ref MyApi AuthorizationType: NONE Integration: Type: AWS_PROXY IntegrationHttpMethod: POST Uri: !Sub - arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-31/functions/${LambdaFunctionArn}/invocations - { LambdaFunctionArn: !GetAtt MyLambdaFunction.Arn } MethodResponses: - StatusCode: 200 MyLambdaFunction: Type: 'AWS::Lambda::Function' Properties: Handler: index.handler Role: !GetAtt LambdaExecutionRole.Arn Runtime: nodejs14.x Code: S3Bucket: your-bucket-name S3Key: your-lambda-zip-file.zip LambdaExecutionRole: Type: 'AWS::IAM::Role' Properties: AssumeRolePolicyDocument: Version: '2012-10-17' Statement: - Effect: Allow Principal: Service: lambda.amazonaws.com Action: 'sts:AssumeRole' Policies: - PolicyName: LambdaExecutionPolicy PolicyDocument: Version: '2012-10-17' Statement: - Effect: Allow Action: - 'logs:CreateLogGroup' - 'logs:CreateLogStream' - 'logs:PutLogEvents' Resource: 'arn:aws:logs:*:*:*' - Effect: Allow Action: - 'lambda:InvokeFunction' Resource: !GetAtt MyLambdaFunction.Arn

上記の例では、 のApiGatewayMethod:下の にリストされているコードのスニペットは、2 つのカードを接続するイベント駆動型の関係Integration:を指定します。