AWS CouldFormationとは?
AWS CloudFormation
CloudFormationとは?
CloudFormationの仕組みは?
- 下記文章をわかりやすく説明して。スタック?プロビジョニング?ってそもそも何かわからない。 - スタックを作成するたびに、AWS CloudFormation はテンプレートに記述されているリソースをプロビジョニングします。
- CloudFormationのサンプルを書いてみて。
AWS公式ドキュメント
用語
用語 | 説明 |
---|---|
テンプレート | AWSリソースの種類、各リソースのプロパティ、リソース間の関係が記載されているファイル |
リソース | EC2, Lambda, APIGateway, Codecommit等AWSサービスのユーザが作成・操作可能なもの。エンティティ。 OOPでいうオブジェクトかな) |
スタック | リソースの集合(ClouldFormationで扱うリソース群) |
プロビジョニング | テンプレートに従い、各種リソースを作成し、実行可能な環境を構築すること。 |
Note:公式ドキュメントの用語集
1. Cloudformationとは何か?
AWS公式ドキュメントによると、
AWSリソースのモデル化およびセットアップに役立つサービス
テンプレートによるリソースの定義と管理を行う
どのリソースを使用するか (EC2, Lambda, APIGateway,Codecommit,etc..)
リソースのプロパティ定義
各リソース間の関係
Cloudformationのメリット
テンプレートで管理することにより、
- 手作業起因のヒューマンエラーが防げる
- 変更履歴が追える
- 一瞬で環境設定ができる
- 複製も簡単
2. Cloudformationの仕組みは?
AWS公式ドキュメントから抜粋した超一言は↓↓
AWS CloudFormation はテンプレートに記述されている AWS サービスを呼び出して、リソースをプロビジョニングし設定します。
[テンプレート]
- 記載フォーマット : JSON or YAMLフォーマットで記載
- 保存先 : S3 bucket or ローカルに保存しておく
- プロビジョニング方法 : AWS CloudFormationのコンソール or AWS CLI or APIを使用する。
3. 実際にサンプルを動かしてみる
サンプルとして、Codecommitを監視して、APIGatewayとLambda funcにデプロイするCodecommitのCloudFormationのスタックを作成中。。。