LoginSignup
2

More than 5 years have passed since last update.

AWS Lambda のバージョン毎に別の Kinesis をセットする方法

Last updated at Posted at 2016-06-19

さいしょに

AWS Lambda のバージョンごとに紐付ける Kinesis Stream を切り替える方法について。

やりたいこと

Kinesis Stream から取得したデータを Lambda で処理するようなシステムを想定。
以下の要件が、本投稿の内容で対応可能。

  • Lambda にバージョンを作成したい
    • Version $LATEST を開発環境として使用
    • Version 1, 2 などのバージョンを本番環境として使用
  • Lambda の開発環境と本番環境で接続する Kinesis を別にしたい

どうやるのか

まずは Lambda のバージョンをつくる

Actions > Publish new version を選択して、バージョン詳細を入力して Publish。

Lambda_Management_Console 2.png

下記のように Version 1 が作成される。同様の手順で Version 2 以降を作成することができる。

Lambda_Management_Console 3.png

あとは適宜 alias など設定しておくといいだろう。

各バージョン毎に Event source を設定する

Version $LATESTEvent source > Add event source から接続したい Kinesis を選択する。

Lambda_Management_Console 4.png

続けて、 Version 1Event source > Add event source から接続したい Kinesis を選択する。

Lambda_Management_Console 5.png

これで Lambda の各バージョン毎に違う Kinesis を接続することができた。

さいごに

全体設定に注意

Create a Lambda function > Select blueprintから Kinesis の blueprint から作成した場合など、対象 function 全体の Event source に Kinesis が紐付く場合がある。

この状態で各バージョンの Event source を設定しても、全体設定が優先されてしまうので注意。全体の方を削除すれば各バージョンの Event source が動作するようになる。

Lambda_Management_Console.png

alias 毎に Event source を設定する

同様に alias 毎に Kinesis を設定できる。(記事の主役にはしていないが)
バージョンごとだと Publish の度に付け替えが面倒なので、 alias 毎に設定をした方がいいだろう。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2