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

AWS Lambda エイリアスの紹介

Lambda 関数のエイリアスを作成できます。AWS Lambda エイリアスは Lambda 関数の特定のバージョンに対するポインタのようなものです。バージョニングの詳細については、「AWS Lambda バージョニングの紹介」を参照してください。エイリアスを使用することで、呼び出し元はエイリアスが指す特定のバージョンがどれかを知らなくても、それが指す Lambda 関数にアクセス (たとえば、関数の呼び出し) できます。

AWS Lambda エイリアスによって、以下のユースケースが可能となります。

  • 必要に応じた Lambda 関数の新しいバージョンへの移行またはロールバックが容易 - Lambda 関数を最初に作成した後 ($LATEST バージョン)、最初にそのバージョン 1 を発行できます。バージョン 1 を指す PROD という名前のエイリアスを作成することで、PROD エイリアスを使用して Lambda 関数のバージョン 1 を呼び出すことができます。

    次に、コード ($LATEST バージョン) を改良して更新し、別の安定した改良バージョン (バージョン 2) を発行します。PROD エイリアスをバージョン 2 を指すように再マッピングすることで、バージョン 2 を本稼働環境に移行できます。何か問題が出た場合は、PROD エイリアスがバージョン 1 を指すように再マッピングすることで、簡単に本稼働バージョンをロールバックできます。

    注記

    この文脈では、移行およびロールバックという用語は、エイリアスを関数の異なるバージョンに再マッピングすることです。

  • イベントソースマッピングの管理が簡単 - イベントソースマッピングで Lambda 関数 ARN を使用する代わりにエイリアス ARN を使用することで、新しいバージョンへの移行時または以前のバージョンへのロールバック時にイベントソースマッピングを更新する必要がなくなります。

AWS Lambda エイリアスは Lambda 関数に似たリソースです。ただし、エイリアスだけを作成することはできません。既存の Lambda 関数に対してエイリアスを作成します。Lambda 関数がリソースの場合、AWS Lambda エイリアスは Lambda 関数に関連付けられるサブリソースと考えることができます。

Lambda 関数およびエイリアスは AWS Lambda リソースであり、他のすべての AWS リソースのように、どちらにも一意の Amazon リソースネーム (ARN) があります。次の例は、1 つの発行済みバージョンを持つ Lambda 関数 ($LATEST バージョン) を示しています。各バージョンには、それを指すエイリアスがあります。

関数 ARN またはエイリアス ARN のいずれかを使用して関数にアクセスできます。

  • 関数のバージョンは $LATEST であるため、修飾関数 ARN または非修飾関数 ARN を使用してアクセスできます。

    • 修飾関数 ARN ($LATEST バージョンサフィックス付き) :

      Copy
      arn:aws:lambda:aws-region:acct-id:function:helloworld:$LATEST
  • エイリアス ARN を使用する場合は、修飾 ARN を使用することになります。各エイリアス ARN にはエイリアス名のサフィックスがあります。

    Copy
    arn:aws:lambda:aws-region:acct-id:function:helloworld:PROD arn:aws:lambda:aws-region:acct-id:function:helloworld:BETA arn:aws:lambda:aws-region:acct-id:function:helloworld:DEV

エイリアスを作成および管理するために、AWS Lambda は以下の API を提供します。

例: エイリアスを使用した Lambda 関数バージョンの管理

以下のサンプルシナリオは、バージョニングおよびエイリアスを使用して Lambda 関数の新しいバージョンを本稼働に移行します。

まず、Lambda 関数を作成します。

これは $LATEST バージョンです。また、新しく作成された関数を指すエイリアス (DEV、開発用) を作成します。開発者はこのエイリアスを使用して、開発環境でイベントソースを使用して関数をテストできます。

新しいバージョンを開発しながら安定した方法で、ベータ環境でイベントソースを使用して関数バージョンをテストします。

$LATEST からバージョンを発行し、それを指す別のエイリアス (BETA) を持たせます。こうすることで、ベータイベントソースをこの特定のエイリアスに関連付けることができます。イベントソースマッピングでは、BETA エイリアスを使用して Lambda 関数をイベントソースと関連付けます。

Lambda 関数バージョンを本稼働に移行して本稼働環境のイベントソースを使用するようにします。

BETA バージョンをテストした後、バージョン 1 にマッピングされるエイリアスを作成して本稼働バージョンを定義できます。つまり、本稼働イベントソースがこの特定のバージョンを指すようにします。これを実行するには、PROD エイリアスを作成し、PROD エイリアス ARN をすべての本稼働イベントソースマッピングで使用します。

開発を続け、より多くのバージョンを発行し、テストします。

コードの開発に合わせて、更新されたコードをアップロードして $LATEST バージョンを更新し、BETA エイリアスがそれを指すようにすることでベータテストに発行できます。このベータエイリアスの簡単な再マッピングで、Lambda 関数のバージョン 2 をイベントソースを変更することなくベータに置くことができます。このように、エイリアスを使用して、開発環境で特定のイベントソースとともに使用する関数のバージョンを制御できます。

AWS CLI を使用してこのセットアップを作成する場合は、「チュートリアル: AWS Lambda エイリアスの使用」を参照してください。

AWS Lambda バージョニングの紹介

チュートリアル: AWS Lambda エイリアスの使用

AWS マネジメントコンソール、AWS CLI、または Lambda API を使用したバージョニングの管理