AWS Infrastructure Composer での の使用 AWS Step Functions - AWS Infrastructure Composer

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

AWS Infrastructure Composer での の使用 AWS Step Functions

AWS Infrastructure Composer には、 との統合がありますAWS Step Functions Workflow Studio。Infrastructure Composer を使用して以下を実行します。

  • Infrastructure Composer 内で Step Functions Workflow Studioを直接起動します。

  • 新しいワークフローを作成および管理するか、既存のワークフローを Infrastructure Composer にインポートします。

  • Infrastructure Composer キャンバスを使用して、ワークフローを他の AWS リソースと統合します。

次の画像は Step Functions ステートマシンカードのものです。

Step Functions ステートマシンカード。

Infrastructure Composer Workflow Studioの Step Functions を使用すると、2 人の強力なビジュアルデザイナーの利点を 1 か所で利用できます。ワークフローとアプリケーションを設計すると、Infrastructure Composer はInfrastructure as Code (IaC) を作成し、デプロイに向けてガイドします。

IAM ポリシー

ワークフローから リソースにタスクを接続すると、Infrastructure Composer はリソース間のインタラクションを承認するために必要な AWS Identity and Access Management (IAM) ポリシーを自動的に作成します。以下に例を示します。

Transform: AWS::Serverless-2016-10-31 Resources: StockTradingStateMachine: Type: AWS::Serverless::StateMachine Properties: ... Policies: - LambdaInvokePolicy: FunctionName: !Ref CheckStockValue ... CheckStockValue: Type: AWS::Serverless::Function ...

必要に応じて、テンプレートに IAM ポリシーを追加できます。

Infrastructure Composer Workflow Studioでの Step Functions の開始方法

開始するには、新しいワークフローを作成するか、既存のワークフローをインポートします。

新しいワークフローを作成するには

  1. リソースパレットから、Step Functions ステートマシン拡張コンポーネントカードをキャンバスにドラッグします。

    Step Functions ステートマシンカード。

    Step Functions ステートマシンカードをキャンバスにドラッグすると、Infrastructure Composer は以下を作成します。

    • ステートマシンを定義する AWS::Serverless::StateMachine リソース。デフォルトでは、Infrastructure Composer は標準ワークフローを作成します。Express ワークフローを作成するには、テンプレートのType値を から STANDARD に変更しますEXPRESS

    • ステートマシンの Amazon CloudWatch ロググループを定義するAWS::Logs::LogGroupリソース。

  2. カードのリソースプロパティパネルを開き、Workflow Studio で編集を選択して Infrastructure Composer Workflow Studio内で開きます。

    Step Functions が設計モードでWorkflow Studio開きます。詳細については、「 AWS Step Functions デベロッパーガイド」の「設計モード」を参照してください。

    注記

    Infrastructure Composer を変更して、ステートマシンの定義を外部ファイルに保存できます。詳細については外部ファイルの使用を参照してください。

  3. ワークフローを作成し、保存を選択します。を終了するにはWorkflow Studio、「インフラストラクチャコンポーザーに戻る」を選択します。

    Infrastructure Composer は、 AWS::Serverless::StateMachineリソースの Defintionプロパティを使用してワークフローを定義します。

  4. ワークフローを変更するには、次のいずれかを実行します。

    • Workflow Studio を再度開き、ワークフローを変更します。

    • コンソールから Infrastructure Composer の場合は、アプリケーションのテンプレートビューを開き、テンプレートを変更できます。ローカル同期を使用する場合は、ローカル IDE でワークフローを変更できます。Infrastructure Composer は変更を検出し、Infrastructure Composer でワークフローを更新します。

    • Toolkit for VS Code の Infrastructure Composer では、テンプレートを直接変更できます。Infrastructure Composer は変更を検出し、Infrastructure Composer でワークフローを更新します。

既存のワークフローをインポートするには

AWS Serverless Application Model (AWS SAM) テンプレートを使用して定義されたアプリケーションからワークフローをインポートできます。AWS::Serverless::StateMachine リソースタイプで定義されたステートマシンを使用すると、 の起動に使用できる Step Functions ステートマシン拡張コンポーネントカードとして視覚化されますWorkflow Studio。

AWS::Serverless::StateMachine リソースは、次のいずれかのプロパティを使用してワークフローを定義できます。

  • Definition – ワークフローは AWS SAM 、テンプレート内でオブジェクトとして定義されます。

  • DefinitionUri – ワークフローは、Amazon States Language を使用して外部ファイルで定義されます。次に、ファイルのローカルパスがこのプロパティで指定されます。

定義プロパティ

コンソールからの Infrastructure Composer

Definition プロパティを使用して定義されたワークフローでは、単一のテンプレートまたはプロジェクト全体をインポートできます。

Toolkit for VS Code のインフラストラクチャコンポーザー

Definition プロパティを使用して定義されたワークフローの場合、テンプレートから Infrastructure Composer を開くことができます。手順については、「から Infrastructure Composer にアクセスする AWS Toolkit for Visual Studio Code」を参照してください。

DefinitionUri プロパティ

コンソールからの Infrastructure Composer

DefinitionUri プロパティを使用して定義されたワークフローの場合、プロジェクトをインポートし、ローカル同期を有効にする必要があります。プロジェクトをインポートする手順については、「」を参照してくださいInfrastructure Composer コンソールで既存のプロジェクトフォルダをインポートする

Toolkit for VS Code のインフラストラクチャコンポーザー

DefinitionUri プロパティを使用して定義されたワークフローの場合、テンプレートから Infrastructure Composer を開くことができます。手順については、「から Infrastructure Composer にアクセスする AWS Toolkit for Visual Studio Code」を参照してください。

Infrastructure Composer Workflow Studioでの Step Functions の使用

ワークフローの構築

Infrastructure Composer は定義置換を使用して、ワークフロータスクをアプリケーションのリソースにマッピングします。定義の置換の詳細については、「 AWS Serverless Application Model デベロッパーガイド DefinitionSubstitutions」の「」を参照してください。

でタスクを作成するときはWorkflow Studio、各タスクの定義置換を指定します。その後、Infrastructure Composer キャンバスのリソースにタスクを接続できます。

で定義の置換を指定するには Workflow Studio
  1. タスクの設定タブを開き、API パラメータフィールドを見つけます。

    のタスクの設定タブWorkflow Studio。
  2. API パラメータフィールドにドロップダウンオプションがある場合は、 CloudFormation 置換を入力を選択します。次に、一意の名前を指定します。

    同じリソースに接続するタスクの場合、タスクごとに同じ定義置換を指定します。既存の定義置換を使用するには、 CloudFormation 置換の選択を選択し、使用する置換を選択します。

  3. API Parameters フィールドに JSON オブジェクトが含まれている場合は、定義の置換を使用するようにリソース名を指定するエントリを変更します。次の例では、 "MyDynamoDBTable"を に変更します"${RecordTransaction}"

    のタスクの設定タブWorkflow Studio。
  4. 保存して Infrastructure Composer に戻るを選択します。

ワークフローのタスクは、Step Functions ステートマシンカードで視覚化されます。

タスクが視覚化された Step Functions ステートマシンカード。

リソースをワークフロータスクに接続する

Infrastructure Composer では、サポートされているワークフロータスクとサポートされている Infrastructure Composer カード間の接続を作成できます。

接続を作成するときは、タスクとカードの AWS のサービス が一致している必要があります。たとえば、Lambda 関数を呼び出すワークフロータスクを Lambda 関数拡張コンポーネントカードに接続できます。

接続を作成するには、タスクのポートをクリックして、拡張コンポーネントカードの左ポートにドラッグします。

Lambda 関数リソースカードに接続されたタスクを持つ Step Functions ステートマシンカード。

Infrastructure Composer はDefinitionSubstitution、値を自動的に更新して接続を定義します。以下に例を示します。

Transform: AWS::Serverless-2016-10-31 Resources: StateMachine: Type: AWS::Serverless::StateMachine Properties: Definition: StartAt: Check Stock Value States: Check Stock Value: Type: Task Resource: arn:aws:states:::lambda:invoke Parameters: Payload.$: $ FunctionName: ${CheckStockValue} Next: Choice ... DefinitionSubstitutions: CheckStockValue: !GetAtt CheckStockValue.Arn ... CheckStockValue: Type: AWS::Serverless::Function Properties: ...

外部ファイルの使用

Step Functions ステートマシンカードからワークフローを作成すると、Infrastructure Composer は Definitionプロパティを使用してステートマシン定義をテンプレート内に保存します。ステートマシン定義を外部ファイルに保存するように Infrastructure Composer を設定できます。

注記

から Infrastructure Composer でこの機能を使用するには AWS マネジメントコンソール、ローカル同期を有効にする必要があります。詳細については、「Infrastructure Composer コンソールでプロジェクトをローカルに同期して保存する」を参照してください。

ステートマシン定義を外部ファイルに保存するには
  1. Step Functions ステートマシンカードのリソースプロパティパネルを開きます。

  2. ステートマシン定義に外部ファイルを使用するオプションを選択します。

  3. ステートマシン定義ファイルの相対パスと名前を指定します。

  4. [保存] を選択します。

Infrastructure Composer は以下を実行します。

  1. ステートマシン定義を Definitionフィールドから外部ファイルに移動します。

  2. Amazon States Language を使用して、ステートマシン定義を外部ファイルに保存します。

  3. DefinitionUri フィールドを使用して外部ファイルを参照するようにテンプレートを変更します。

詳細情報

Infrastructure Composer の Step Functions の詳細については、以下を参照してください。