やーまんぶろぐ

気が向いた時にだけ書くブログ

AWS CloudFormation参加ログ

[Black Belt Online Seminar] AWS CloudFormation 参加ログです。

[Black Belt Online Seminar] AWS CloudFormation

基本的なことは割愛して、新しく知ったあたりをメモ。

Serverless

  • SAM(Serverless Application Model)
  • Transform: AWS::Serverless-2016-10-31を追加して拡張して使用する
  • Lambda(AWS::Serverless::Function), api gateway(AWS::Serverless::Api), dynamoDB(AWS::Serverless::SimpleTable)を使用

YAMLサポート

  • CloudFormation Designerを除く全ての機能と関数をサポート
    • 図示できないのは残念。JSONに変換する手間があると。
  • 読みやすい書きやすい
  • コメントの追加が可能
  • UserDataプロパティを書く際に簡単になった。Sub関数を使用してワンライナーで書ける。
  • JSON -> YAMLサードパーティ製の何かを使いましょう。

CloudFormer

  • 構築済の環境からテンプレートを作成するツール
  • 生成されたテンプレートを手修正し、最終的なテンプレートを作成することを推奨
  • CloudFormationでsample templateからインスタンスを作成します。作成されたWebアプリケーションからテンプレートを作成することができます。
    • インスタンスを作成するのか。チラ見して探せなかったから無視していた
  • CloudFormerで作成したテンプレートを CloudFormation Designerで図にできる
    • これは試してみたい

どのように作成する? (クロススタック 含む)

  • 1テンプレート、1スタック
    • 増えると大変
  • 個別テンプレート、1スタック
    • レイヤーで分ける。例では3層を分けている。ノードとネットワークを分けたりもする
    • ネストのこと。今はこれで作成している。
  • 個別テンプレート、個別スタック
    • クロススタック参照。スタックから別のスタックへリソースをエキスポート
    • ネットワークのIDなどを他のスタックとやりとりしなければならない
    • OutputsにExportした値をImportValueで参照してひっぱって来ることができる
    • これは試したい

チェンジセット

  • アップデートするときに影響するリソースが確認できるようになった

Stackの更新スタイル

  • in-place
    • 単純にアップデート
  • blue-green
    • もう一つ作ってからDNS切り替える