Lambda コンソールで Lambda@Edge 関数を作成する
CloudFront イベントに基づく Lambda 関数を実行するように AWS Lambda をセットアップするには、以下の手順に従います。
ターゲットの Lambda@Edge 関数を作成するには
AWS Management Console にサインインして AWS Lambda コンソール (https://console.aws.amazon.com/lambda/
) を開きます。 -
1 つ以上の Lambda 関数が既にある場合は、[Create function] を選択します。
関数がない場合は、[Get Started Now] を選択します。
-
ページの上部にあるリージョンのリストで、[米国東部 (バージニア北部)] を選択します。
-
独自のコードを使用して関数を作成するか、CloudFront の設計図で始まる関数を作成します。
-
独自のコードを使用して関数を作成するには、[Author from scratch] を選択します。
-
CloudFront の設計図のリストを表示するには、フィルタフィールドに [cloudfront] と入力し、Enter キーを押します。
使用したい設計図を見つけたら、設計図の名前を選択します。
-
-
[Basic information] セクションで、以下の値を指定します。
- 名前
-
関数の名前を入力します。
- ロール
-
[Create new role from template(s)] を選択します。
注記 この値を選択すると、すぐに開始されます。または、[Choose an existing role] か [Create a custom role] を選択できます。これらのいずれかを選択する場合は、プロンプトに従ってこのセクションの情報を入力します。
- ロール名
-
ロールの名前を入力します。
- ポリシーテンプレート
-
[Basic Edge Lambda permissions] を選択します。
-
ステップ 4 で [Author from scratch] を選択した場合は、ステップ 7 に進んでください。
ステップ 4 で設計図を選択した場合は、[cloudfront] セクションで、この関数を CloudFront ディストリビューションおよび CloudFront イベントのキャッシュに関連付ける 1 つのトリガーを作成できます。この時点で [Remove] を選択することをお勧めします。そのため、関数の作成時にトリガーはありません。後でトリガーを追加できます。
重要 後でトリガーを追加するのはなぜでしょうか。通常、トリガーを追加する前に、関数をテストおよびデバッグすることが最適です。代わりにトリガーを追加するように選択する場合、関数を作成するとすぐに関数が実行され、世界各地の AWS ロケーションへのレプリケーションが完了し、対応するディストリビューションがデプロイされます。
-
[Create function] (関数の作成) を選択します。
Lambda は関数 $LATEST とバージョン 1 の 2 つのバージョンを作成します。$LATEST バージョンのみを編集できますが、コンソールに最初はバージョン 1 が表示されます。
-
関数を編集するには、関数の ARN の下にあるページの上部にある [Version 1] を選択します。次に [Versions] タブで [$LATEST] を選択します。(その関数をそのままにしてから戻った場合、ボタンラベルは [Qualifiers] となります)。
-
[Configuration] タブで、該当する [Code entry type] を選択します。次に、プロンプトに従ってコードを編集またはアップロードします。
-
[ランタイム] で、関数のコードに基づいて値を選択します。
-
[Tags] セクションで、該当するタグを追加します。
-
[Actions] を選択し、[Publish new version] を選択します。
-
新しいバージョンの関数の説明を入力します。
-
[Publish] を選択します。
-
関数をテストおよびデバッグします。Lambda コンソールのテストの詳細については、AWS Lambda デベロッパーガイドの「コンソールを使用して Lambda 関数を作成する」で Lambda 関数を手動で呼び出して、結果、ログ、メトリクスを確認するセクションを参照してください。
-
CloudFront イベントに対して関数を実行する準備ができたら、別のバージョンを公開し、トリガーを追加する関数を編集します。詳細については、「Lambda@Edge 関数のトリガーの追加」を参照してください。