ヤマムギ

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” ] }で取得して使用しているのですね。

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


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

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

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

 - AWS ,

  関連記事

AWS CodeCommit 認証情報ヘルパーをmacOSに設定しました

AWS CLI 認証情報ヘルパーを使用して Linux, macOS, or U …

AWS VPC ネットワークACLでHTTP(80)のみ許可する

ユーザーガイドのカスタムネットワーク ACLのうち、HTTP(80)を許可する設 …

EC2ユーザーデータからメタデータを取得してRocket.Chatで80ポートを使用する

Rocket.Chatのデフォルトポート番号は3000です。 80を使うようにす …

AWSのAmazon LinuxにGitマスターサーバをインストールしてRedmineリポジトリブラウザで見る

Amazon LinuxにGitをインストールする Gitをインストールして自動 …

AWSアカウントでルートユーザーが使用されたときにTeamsへ投稿する

Organizations組織内のアカウントのいずれかでルートユーザーが使用され …

RDSインスタンス作成時にEC2に接続設定するオプション

EC2 インスタンスと RDS データベース を自動的に接続するの動作を確認した …

slackのbotにWikipediaを調べてもらう(Python on AWS Lambda + API Gateway)

slackのbotに少しでも役に立ってもらおうと、Wikipediaを調べてもら …

Amazon Glacierのプロビジョニングされた迅速取り出し容量をなぜか購入しました

過去1年ぐらいのAWSコストをCost Explorerで見てまして、10/10 …

AWS Organizations SCPがリソースベースのポリシーには影響しないことを確認

AWS Organizations SCPで許可ポリシーの設定をし継承の関係を確 …

Well-Architected Tool レンズヴァージョンアップ

当ブログのWell-Architectedレビューを久しぶりにやろうと思い、We …