AWS Step Functions の開始方法 - AWS Step Functions

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

AWS Step Functions の開始方法

このチュートリアルでは、Step Functions の操作の基本について学習します。Step Functions コンソールにサインインし、2 つの Pass 状態を使用するステートマシンを作成します。次に、新しい実行をスタートし、実行の詳細を確認します。次に、Pass 状態の結果の 1 つを変更し、変更を表示します。最後に、クリーンアップステップを実行し、ステートマシンを削除します。このチュートリアルを最後までやると、ステートマシンの作成、テスト、デバッグ、削除の方法がわかるようになるでしょう。

このチュートリアルの前提条件を必ず完了してください。

ステップ 1: ステートマシンを作成する

ステートマシンは、ワークフローを定義する個々のステップを調べるために使用できるワークフローのグラフィカル表現です。

ステートマシンの構造と一般的な状態の詳細については、以下を参照してください。

ステートマシンを作成するには

  1. Step Functions コンソールにサインインします。

  2. [Create state machine] (ステートマシンの作成) をクリックします。

  3. ‬[Choose authoring method]‭ (オーサリング方法を選択) ページで ‬[Design your workflow visually]‭‬ (ワークフローを視覚的に設計) を選択します。

  4. [Type] (タイプ) で、[Standard] (標準) を選択します。

    Step Functions にはスタンダードExpress という 2 つのワークフロータイプがあります。これらのワークフローは、Step Functions によるタスク実行方法、AWS のサービスと統合方法、コストの管理管理方法を定めます。ステートマシンを作成した後で、そのワークフロータイプを変更することはできません。

    両方のワークフローを対照比較する場合は、[Type] (タイプ)の [Help me decide] (決定するのを手伝ってください) を選択します。

  5. [Next] (次へ) を選択します。これにより、Workflow Studio が開きます。

    
            Workflow Studio
    Workflow Studio
  6. [Flow] (フロー) パネルを選択した後、Pass 状態を [Drag first state here] (最初の状態をここにドラッグ) とラベル付けされた空の状態までドラッグします。

  7. [Definition] (定義) と視覚的なワークフローを確認します。

  8. このワークフローのコードでは、2 つの Pass 状態が定義されています。ある Pass 状態の名前は Hello で、もう一つの Pass 状態の名前は World です。

    { "Comment": "A Hello World example of the Amazon States Language using Pass states", "StartAt": "Hello", "States": { "Hello": { "Type": "Pass", "Next": "World" }, "World": { "Type": "Pass", "Result": "World", "End": true } } }
  9. [Next] を選択します。Amazon ステートメント言語 ワークフロー定義を確認できます。

  10. [Next] を選択します。ワークフローに HelloWorld という名前をつけます。

  11. ‬[Permissions]‭ (許可) で、‬[Create a new IAM role]‭‬ (新しい IAM ロールを作成) を選択します。

    ステートマシンを作成するときは、実行中にステートマシンにアクセス許可を与えるリソースを定義する IAM ロールを選択します。次のオプションから選択します。

    • [Create a new IAM role] (新しい IAM ロールを作成する) — Step Functions でステートマシンの定義とその設定の詳細に基づいて、新しい IAM ロールを作成する場合は、このオプションを選択します。

    • [Choose an existing role] (既存のロールを選択する) — Step Functions の IAM ロールを以前に作成していて、ステートマシンに正しい許可がある場合は、このオプションを選択します。

    • [Enter a role ARN] (ロールの ARN を入力する) — Step Functions に使用したい IAM ロールの ARN の詳細がわかっている場合は、このオプションを選択します。

  12. Create State Machine(ステートマシンの作成)を選択します。

ステップ 2: 新しい実行をスタートする

ステートマシンの実行は、ワークフローを実行してタスクを実施するインスタンスです。

新しい実行をスタートするには

  1. [Helloworld] ページで、[Start execution] (実行をスタート) を選択します。

  2. オプション - [New execution] (新しい実行) ページの [Execution ID] (実行 ID) フィールドに、任意の名前を入力できます。

    実行名に ASCII 以外の文字が含まれないようにしてください。独自の実行 ID を指定しない場合、Step Functions が一意の実行 ID を生成します。

  3. [New execution] (新しい実行) ページで、[Start Execution] (実行のスタート) を選択します。

    [Start execution] (実行をスタート) を選択すると、Step Functions コンソールから実行 ID のタイトルがついたページが表示されます。このページでは、新しい実行結果を確認できます。[Execution details] (実行の詳細) をクリックすると、実行 ARN と実行が成功したかどうかを示すステータスが表示されます。また、実行がスタートおよび終了したときのタイムスタンプも確認できます。

  4. 実行結果を表示するには、[Output] (出力) タブを選択します。

    この出力は World です。

ステップ 3: ステートマシンの更新

Pass 状態 の結果を変更し、将来の例外に備えてステートマシンを更新します。次に、ビジュアルワークフローペインで変更内容を表示します。例外は、ワークフローのステップを中断するイベントです。

ステートマシンを更新すると、更新は結果に整合します。数秒後または数分後、新しくスタートしたすべての実行は、ステートマシンの更新された定義と roleARN を反映します。現在実行中のすべての実行は、前の定義に基づいて完了し、更新前に roleARN となるまで行われます。

Pass 状態の結果を変更する

  1. 実行 ID のタイトルのページで、[Edit state machine] (ステートマシンの編集) を選択します。

  2. リポジトリの [Edit Helloworld] (HelloWorld を編集) ページのコードペインで、2 番目の ResultWorld has been updated! に更新します

    { "Comment": "A Hello World example of the Amazon States Language using Pass states", "StartAt": "Hello", "States": { "Hello": { "Type": "Pass", "Result": "Hello", "Next": "World" }, "World": { "Type": "Pass", "Result": "World has been updated!", "End": true } } }
  3. [Save] (保存)、[Start execution] (実行のスタート) の順に選択します。

    [Save] (保存) を選択した後、次のメッセージが表示されます。

    「ステートマシンを変更すると、どのリソースにアクセスする必要があるかに影響がでる可能性があります。ステートマシンの許可を正しいものにするには、現在の IAM ロールを編集するか、新しいロールを作成するか、別のロールを選択する必要があります。」

    このメッセージはスタンダードです。[Save anyway] (とにかく保存する) を選択します。

  4. [New execution] (新しい実行) ページで、[Start Execution ] (実行のスタート) をもう一度選択します。

  5. 次のページのビジュアルワークフローペインで、ワークフローを定義する個々のステップを検査します。

  6. オプション - ワークフローのグラフを SVG または PNG ファイルにエクスポートするには、[Export] (エクスポート) を選択します。

  7. 実行結果を表示するには、ビジュアルワークフローペインで、[World] (ワールド) を選択します。[Output] (ステップ詳細) で、[Output] (出力) を選択します。

    この出力は World has been updated! です

ステップ 4: クリーンアップする

場合によっては、ステートマシンと実行ロールを削除する必要が生じることがあります。

このチュートリアルを終了すると、ステートマシンと Step Functions で自分用に作成した実行ロールを削除します。

ステートマシンを削除するには

  1. ナビゲーションメニューから、[State machines] (ステートマシン) を選択します。

  2. ステートマシンページでは、[State machines] (ステートマシン) で [HelloWorld] を選択してから、[Delete] (削除) を選択します。

    [Delete] (削除) を選択すると、次のメッセージが表示されます。

    「ステートマシンを削除しようとしています。続行しますか?」

    このメッセージはスタンダードです。[Delete state machine] (ステートマシンの削除) を選択します。

    緑色のステータスバーが画面の上部に表示されます。緑色のステータスバーには、ステートマシンが削除対象としてマークされていると書かれています。すべての実行が停止すると、ステートマシンは削除されます。

実行ロールを削除するには

  1. IAM 用 [Roles] (ロール) ページを開きます。

  2. Step Functions がユーザー用に作成した IAM ロール StepFunctions-Helloworld-role-EXAMPLE を選択します。

  3. [Delete role] (ロールの削除) を選択します。

  4. [Yes, delete] (はい、削除します) を選択します。

    このチュートリアルを終えて、ステートマシンの作成、テスト、デバッグ、および削除の方法をご理解いただけたでしょうか。

次のステップ

Step Functions の操作に関するその他のチュートリアルについては、以下をお試しください。