【AWS】 Step Functionsの作成方法

スポンサーリンク
【AWS】 Step Functionsの作成方法AWS
この記事を読んで分かること
  •  Step Functionsの作成方法

 

今回は、Step Functionsを使ってLambdaの呼び出し方のアルゴリズムを作成していきます。

事前準備

まず、Step Functionsを使うための環境設定をしておきましょう。

Step Functionsを使う事前準備
  • IAMロールの作成

 

IAMロールの作成

Step Functionsが他のリソース(Lambdaなど)を操作するためには、IAMロールをアタッチして権限を付与する必要があります。

そのため、事前にアタッチするIAMロールを準備しておきましょう。

今回はStep FunctionsがLambdaを呼び出せるように、Lambdaのアクセス許可をするIAMロールを作成していきます。

 

まず、AWSサービスの一覧を表示します。

AWS_サービスの選択

 

AWSサービス一覧のから「IAM」を選択します。

AWS_Iamサービスの選択

 

ロールを選択します。

ロールの選択

 

ロールを作成」を選択します。

ロールの新規作成

 

アクセス権を設定するエンティティを選択します。

ここでは「Step Function」を選んでください。

次のステップ」を選択して、次へ進みます。

AWS_IAM_stepfunction

 

アタッチするポリシーを選択します。

Lambdaを呼び出すための「AWSLambdaRole」を設定しています。

次のステップ」を選択します。

IAM_stepfunction_ポリシーのアタッチ

 

任意の名称をロールにつけます。

今回は「 StepFunction-lambdaaccess」としました。

最後に「ロールの作成」を選択すると、新しいロールを作成することができます。

IAM_stepfunction_ロールの命名

 

これでStep FunctionsがLambdaの呼び出しを許可するIAMロールを作成することができました。

 

Step Functionsの作成

実際に動作させるStep Functionsを作っていきます。

まず、AWSサービスの一覧を表示します。

AWS_サービスの選択

 

AWSサービス一覧から「Step Functions」を選択します。

aws_stepfunctionの選択

 

 

Step Functionsを新規作成していきます。

新規作成は、「ステートマシンの作成」を選択します。

aws_stepfunction_ステートマシンの作成

 

デフォルトのままで「次へ」を選択します。

aws_stepfunction_ステートマシンの作成方法を選択

 

ワークフローを作成してアルゴリズムを定義していきます。

Lambdaを呼び出してインターバルをはさむという処理を繰り返すワークフローを定義しました。

引数として「names」変数としてデータを受け取る設定もしています。

また、Lambdaは並列処理しないように最大同時実行数を1にしています。

aws_stepfunction_mapの選択

 

 

Lambda Invoke」で呼び出すlambdaを設定します。

aws_stepfunction_lambdainvokeの選択

 

Wait」で待機時間を5秒に設定しています。

aws_stepfunction_waitの選択

 

次へ」を選択してワークフローを確定します。

aws_stepfunction_ワークフローの作成

 

ワークフローの設定を確認し、「次へ」を選択します。

aws_stepfunction_ワークフローのコード確認

 

ステートマシンの命名とアクセス許可を指定します。

アクセス権は先程作った「StepFunction-lambdaaccess」を設定しました。

aws_stepfunction_ロールのアタッチ

 

詳細設定が終わったら「ステートマシンの作成」を選択します。

aws_stepfunction_ステートマシンの確定

 

これでStep Functionの準備は完了です。

 

まとめ

サーバレスのアルゴリズムを設定するStep Functionの作成手順を解説しました。

マネジメントコンソール上でGUIを用いた設定が可能で分かりやすくなっています。

処理を並列にしたい場合など柔軟にLambdaを動作させることができます。

コメント

タイトルとURLをコピーしました