Upgrade to Pro — share decks privately, control downloads, hide ads and more …

CloudFormationで管理されたシステムの変更でエラー連発した話

emi
July 23, 2021

 CloudFormationで管理されたシステムの変更でエラー連発した話

20210722(木)「JAWS-UG CLI専門支部 #188R CloudFormation入門」でのLTで発表したものです。(私がCFn好きな人に見えるとご指摘いただきましたので微修正しております。私はCFn苦手です)

波多野さんのスライドダイジェスト版ではメリットデメリットあわせてもっと深く言及されています↓
CloudFormationの理想と現実 〜 冷静にCloudFormationを考える/20210722-jawsug-cli-cloudformation
https://speakerdeck.com/opelab/20210722-jawsug-cli-cloudformation

emi

July 23, 2021
Tweet

More Decks by emi

Other Decks in Technology

Transcript

  1. ここまで試行錯誤して • エラーを起こさないようにCFnテンプレートの 変更と環境変更を実施するには 1. 変更すべきパラメータを探し出す 2. 変更すべきパラメータに紐づいた部分を コメントアウトしスタック変更 3.

    パラメータを変更してスタック変更 4. コメントアウトした部分を戻してスタック変更 ↑これを初手でやるのはきつい ベストプラクティスではなさそう…
  2. 「ドリフト検出」 • 実環境とCFnテンプレートでリソースの差分を検出す る機能 • 手動で修正した箇所に差異がないかチェックするの に便利なツールではある • 差分を自動で修正してくれる機能はないので結局自 分で修正する必要がある

    • ドリフト検出サポートしていないサービスもあるら しい 使える機能 (公式ドキュメント) インポートおよびドリフト検出オペ レーションをサポートするリソース https://docs.aws.amazon.com/ja_jp/AW SCloudFormation/latest/UserGuide/reso urce-import-supported-resources.html
  3. CloudFormationのユースケース ★CFnが適しているケース • 必ず実施すべきセキュリティ設定をテンプレートにしておく  「CloudTrail証跡有効化する」  「ルートアカウントのMFAを有効化しアクセスキーを削除する」 等 •

    ハンズオン • 本番環境の変更作業の前に検証環境を一発展開して検証  実際は本番と全く同じ環境を検証のためにデプロイできることは 少ない  検証用のSWのライセンスがない、大量インスタンスを展開すると 課金 ★CFnだとつらいケース • すべてをCFnだけで管理しようとする • いろんなパラメータがスタック間で紐づいている • 巨大なシステム