メニュー
AWS CloudFormation
ユーザーガイド (API Version 2010-05-15)

AWS CloudFormation とは

AWS CloudFormation は Amazon Web Services リソースのモデル化およびセットアップに役立つサービスです。リソース管理に割く時間を減らし、AWS で実行するアプリケーションにより注力できるようになります。使用するすべての AWS リソース (Amazon EC2 インスタンスや Amazon RDS DB インスタンスなど) を記述するテンプレートを作成すれば、AWS CloudFormation がお客さまに代わってこれらのリソースのプロビジョニングや設定を受け持ちます。AWS リソースを個別に作成、設計して、それぞれの依存関係を考える必要はありません。AWS CloudFormation がすべてを処理します。次のシナリオは AWS CloudFormation がどのように役立つかを示します。

インフラストラクチャ管理を簡略化

バックエンドデータベースを含むスケーラブルなウェブアプリケーションで、Auto Scaling グループ、Elastic Load Balancing ロードバランサー、Amazon Relational Database Service データベースインスタンスを使用している場合があります。通常、それぞれ個別のサービスを使用して、これらのリソースをプロビジョニングしているかもしれません。また、リソースを作成した後、一緒に動作するように設定する必要があるでしょう。このような作業は、まだアプリケーションを運用していないうちから、複雑な手間と時間がかかります。

代わりに、AWS CloudFormation の既存のテンプレートを作成または変更できます。テンプレートはすべてのリソースおよびプロパティについて記述します。テンプレートを使用して AWS CloudFormation スタックを作成すると、AWS CloudFormation が Auto Scaling グループ、ロードバランサー、およびデータベースをプロビジョニングします。スタックが正常に作成されると、AWS リソースの利用を開始できます。スタックの削除も同様に簡単です。スタックのすべてのリソースを削除できます。AWS CloudFormation を使用すると、リソースのコレクションを単一のユニットとして簡単に管理できます。

インフラストラクチャをすばやく複製

アプリケーションに追加の可用性が必要な場合は、複数のリージョンに複製して、1 つのリージョンが使用できなくなった場合でも他のリージョンでアプリケーションを使用できるようにします。アプリケーションの複製における課題は、リソースも複製する必要があることです。アプリケーションに必要なすべてのリソースを記録する必要があるだけでなく、それぞれのリージョンでそれらのリソースをプロビジョニングし、設定する必要があります。

AWS CloudFormation を使用すると、テンプレートを再利用してリソースをいつでも繰り返しセットアップできます。一度だけリソースを記述すれば、複数のリージョンで同じリソースを何度でもプロビジョニングできます。

インフラストラクチャの制御や変更の追跡も簡単です

場合によっては、基盤となるリソースを段階的にアップグレードすることがあります。たとえば、Auto Scaling グループのインスタンスの最大数を減らすために、Auto Scaling 起動インスタンスをより効率のいいインスタンスタイプに変更する場合です。更新が完了した後で問題が発生した場合、インフラストラクチャを最初の設定にロールバックする必要がある場合があります。これを手動で行うには、変更したリソースを覚えておく必要があるだけではなく、最初の設定を知っておく必要があります。

AWS CloudFormation でインフラストラクチャをプロビジョニングすると、AWS CloudFormation テンプレートにプロビジョニングされたリソースやその設定が正確に記述されます。これらのテンプレートはテキストファイルであるため、テンプレート間の違いを追跡するだけでインフラストラクチャに対する変更を追跡できます。これは開発者がソースコードの変更を管理する方法に似ています。たとえば、バージョン管理システムをテンプレートに使用して、変更内容、変更者、変更日時を正確に把握できます。インフラストラクチャの変更を元に戻す必要がある場合はいつでも、テンプレートの以前のバージョンを使用できます。

関連情報