ヤマムギ

growing hard days.

*

CloudFormation Lambda-backedカスタムリソースチュートリアルをやりました

      2021/08/09


チュートリアル: Amazon マシンイメージ ID を参照するの手順に従ってやってみました。

サンプルのシナリオでは、カスタムリソースによってAMI IDを取得して、EC2インスタンスを起動します。

サンプルパッケージをS3にアップロード

チュートリアルのLinuxAMI向けサンプルパッケージをダウンロードしました。
https://s3.amazonaws.com/cloudformation-examples/lambda/amilookup.zip

手順では、このままS3バケットを作ってアップロードですが、コードを見てみました。
Node.jsのjsファイルが1つ格納されたzipでした。

ec2.describeImagesで、AMI ID一覧を取得しています。

CloudFormationテンプレートURLを指定して実行

カスタムリソースはここで、ServiceTokenでLambdaのARNを指定していました。

EC2インスタンスのImageIdでカスタムリソースのIdを指定していました。

実行してみてLambdaのログ確認。

eventに含まれるResponseURLに、以下のようなresponseを生成して、POSTしていました。
StackId、RequestId、LogicalResourceIdもeventに含まれていました。

DataのIdを{ “Fn::GetAtt”: [ “AMIInfo”, “Id” ] }で取得して使用しているのですね。

終わったあとはスタックを削除しました。


最後までお読みいただきましてありがとうございました!

【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。

【PR】 「AWSではじめるLinux入門ガイド」という本を書きました。

【PR】 「ポケットスタディ AWS認定 デベロッパーアソシエイト」という本を書きました。

 - AWS ,

ad

ad

  関連記事

AWS Organizationsで組織全体のAWS CloudTrailを有効にしました

Organizationsのサービスメニューから、CloudTrailを選択して …

Route 53 の加重ラウンドロビンルーティングでロードバランサー

Route 53の加重ラウンドロビンで両方1に設定してみました。 上図はイメージ …

webフォームからの問い合わせをRedmineに自動登録して対応状況を管理する(API Gateway + Lambda)

先日、検証目的で作成したRedmineの冗長化の一機能として、webフォームから …

AWS DeepLens開封の儀

去年(2019年)7月にamazon.co.jpでDeepLens買えますやんっ …

ALBにWAFを関連付けて特定のヘッダー以外はブロックする

おかげさまで、ブログのアクセスも増えてきて、t3.nano EC2インスタンス単 …

Amazon API GatewayのIAM認証の動作を確認しました

API GatewayのIAM認証は、IAMユーザーが実行できるように認証する、 …

EC2 Global Viewで不要なインスタンスを見つけて4つほど終了しました

EC2 Global Viewという機能がリリースされました。 EC2コンソール …

Amazon Rekognitionでイベント参加者の顔写真を解析して似ている人ランキングをその場で作る

2017/9/21に開催されたAWS Cloud Roadshow 2017 大 …

AWS東京リージョンのAZ(apne1-az1)障害時の当ブログで発生していたことの記録

日本時間2/19 23:01頃より、東京リージョン、特定AZの1つでEC2インス …

VPC新コンソールの日本語UIでルートテーブル編集時のエラー(2021/6/10)が発生したのでフィードバックを送った

VPCの新コンソールがリリースされていたので使って作業してましたところ、こんなエ …