メニュー
AWS Lambda
開発者ガイド

AWS Lambda 関数のバージョニングとエイリアス

バージョニングを使用すると、本稼働環境の Lambda 関数コードの管理が容易になり、Lambda 関数の複数のバージョンを発行できるようになります。その結果、開発、ベータ、本稼働といった開発ワークフローにおいて異なるバリエーションの Lambda 関数で作業できます。各 Lambda 関数のバージョンには、一意の Amazon リソースネーム (ARN) があります。バージョンの発行後、変更は不可です。

AWS Lambda は各 Lambda 関数バージョンごとのエイリアスの作成をサポートしています。概念的には、AWS Lambda エイリアスは特定の Lambda 関数バージョンに対するポインタですが、Lambda 関数に似たリソースでもあり、各エイリアスには一意の ARN があります。各エイリアスは、それぞれが指す関数バージョンの ARN を保持します (エイリアスが指すことができるのは、別のエイリアスではなく、関数バージョンのみです)。変更不可であるバージョンとは異なり、エイリアスは変更可能であり、異なるバージョンを指すように更新できます。

以下の例は、helloworld Lambda 関数の 2 つのバージョン (バージョン $LATEST とバージョン 1) です。これらの関数の各バージョンに、それを指すエイリアス (DEV および PROD) があります。

エイリアスを使用して、Lambda 関数バージョンのマッピングおよびそのイベントソースから、Lambda 関数の新しいバージョンを本稼働環境に移行するプロセスを抽出できます。詳細については、「仕組み」を参照してください。

たとえば、Amazon S3 が新しいオブジェクトがバケットに作成された場合に Lambda 関数を呼び出すイベントソースだとします。Amazon S3 がイベントソースである場合、イベントソースのマッピング情報はバケットの通知設定に保存されます。構成で Amazon S3 が呼び出すことができる Lambda 関数の ARN を特定することはできますが、この場合、Lambda 関数の新しいバージョンが発行されるたびに、Amazon S3 が正しいバージョンを呼び出すことができるように通知設定を更新する必要があります。通知設定で関数 ARN を指定する代わりに、エイリアス ARN (PROD エイリアス ARN など) を指定できます。Lambda 関数の新しいバージョンを本稼働環境に移行する際には、PROD エイリアスが最新の安定バージョンを指すように更新するだけで、Amazon S3 の通知設定を更新する必要はありません。

Lambda 関数を以前のバージョンにロールバックする必要がある場合も同様です。このシナリオでは、PROD エイリアスを別の関数バージョンを指すように更新するだけで、イベントソースマッピングを更新する必要はありません。

複数の依存関係や開発者が関わるアプリケーションを構築する際は、バージョニングおよびエイリアスを使用して Lambda 関数をデプロイすることをお勧めします。

詳細については、次のトピックを参照してください。