AWS Lambda へのデプロイ

フローのデプロイ先はそのままデプロイボタンを押すと、enebular が利用しているサーバーにデプロイされますが、一時的にしか動作しません。

このページでは、長時間稼働させるために AWS Lambda にフローをデプロイする手順を説明します。

新規フローの作成

作成したフローを AWS Lambda にデプロイするまでの方法です。まず Lambda へデプロイするフローを作成しましょう(プロジェクトは作成済みとします)。

フローを作成し [Edit Flow] を押すと、Node-RED の編集画面が立ち上がります。

この編集画面でデータフローを編集してフローを作成します。

データフローの編集

データフローを作成します。動作確認のため、Lambda Request をそのまま Lambda Response に返すだけのフローを作成しましょう。

image

左のパレットでは Lambda Request は input グループに、Lambda Response は output グループにあるので、そちらを探して配置します。

右上の [Deploy] を押して保存します。

AWS Lambda へデプロイ

保存が完了したらフローのメニューから [Deploy] ページに移動します。

[Deploy] を押すとデプロイができる画面に移動します。

Lambda を選択します。

[New] を押すとモーダルが開きます。enebular での作業はここで一旦止めて、AWS コンソールへ移動します。

enebular から AWS Lambda を利用するための IAM ユーザーを作成

enebular から AWS Lambda にアクセスするための Access Key ID、Secret Access Key を作成します。

AWS の IAM へアクセスします。メニューからユーザーに移動します。

[ユーザーを追加] からユーザー追加画面へ移動します。適当な名前をつけて、[アクセスの種類] の [プログラムによるアクセス] にチェックを入れます。

アクセス権限画面では、[既存のポリシーを直接アタッチ] を選択して、[AWSLambdaFullAccess] というポリシーを選択して次に進みます。

確認画面で間違いがないか確認します。間違いがなければ [ユーザーの作成] を押します。

完了したら、アクセスキー ID とシークレットアクセスキーが記載された CSV ファイルをダウンロードします(このタイミングでしかダウンロードできないので注意して下さい)。

AWS Lambda が利用する ARN ロールを作成

Lambda にデプロイされたフローが利用する ARN ロールを作成します。

AWS の IAM へアクセスします。メニューからロールへ移動します。

[ロールの作成] からロール作成画面へ移動します。AWS サービスの Lambda を選択して次に進みます。

アクセス権限では [AWSLambdaFullAccess] を選択して、次へ進みます。

最後に適当な名前をつけて、[ロールの作成]で作成します。

ここまでできたら enebular に必要情報を入力します。

  • Connection Name
    • 分かりやすい名前を任意で
  • AWS Access Key ID
    • ダウンロードした CSV ファイルからコピー
  • AWS Secret Access Key
    • ダウンロードした CSV ファイルからコピー
  • Region
    • こだわりがなければ ap-northeast-1
  • IAM Role ARN
    • 作成したロールの ARN を確認

保存をすると、以下のように Lambda 関数の情報を入力するフォームが現れます。

  • Function Name
    • 分かりやすい名前を任意で(ハイフンは使えません)
  • Timeout
    • 60
  • Memory Size
    • 128

上記の値を入力して、[Deploy] でデプロイします。

ここでしばらく待ちます(1分30秒くらいはかかりますので、気長にお待ちください)。

デプロイが完了したら、Deployment History でデプロイされたものが確認できます。

AWS Lambda コンソールにて確認

ちゃんとデプロイされているか AWS の Lambda ページにて確認してみましょう。Lambda ページに先ほどデプロイの際に入力した Function Name があるかと思いますのでクリックします。遷移したページの左上の [テスト] でテストできます。

Event の設定画面が出てきますが、そのまま右下の [作成] をクリックします。

以下のような画面が出てくるので右上の [テスト] でテストをします。

以下のような画面ができれば成功です。

results matching ""

    No results matching ""