そこでAWSが導入したのが、 「AWSクラウドフォーメーション」 これにより、ユーザーはアプリケーションの展開と変更が容易になります。 AWS CloudFormation を使用すると、ユーザーはテンプレートとコードでリソースを指定することにより、アプリケーションを作成およびデプロイできます。タスクの完了後にこれらのリソースをクリーンアップするには、数回クリックするだけです。 AWS CloudFormation は、AWS リソースを手動で管理およびメンテナンスするための、コスト効率の高い迅速なソリューションです。
概要
この記事では、CloudFormation の次の側面について説明します。
- CloudFormationとは何ですか?
- CloudFormation を使用する必要がある理由
- AWS CloudFormation はどのように機能しますか?
- AWS CloudFormation の主要な概念は何ですか?
- AWS CloudFormation の使用を開始するにはどうすればよいですか?
- ボーナスヒント: CloudFormation でスタックを削除するにはどうすればよいですか?
- AWS CloudFormation の利点は何ですか?
- AWS CloudFormation の料金はいくらですか?
- 結論
クラウドフォーメーションとは何ですか?
AWS CloudFormation とも呼ばれます 「コードとしてのインフラストラクチャ」 は、さまざまなテキスト ファイルを通じてリソースのセットアップと管理を支援するサービスです。これらのテキスト ファイルは次のように呼ばれます。 「テンプレート」 。 CloudFormation で作成および使用されるテンプレートには、すべてのものが含まれています。 必要な情報 のリソース、そのプロビジョニング、構成について YAML と JSON フォーマット。
リソースを手動で設定する代わりに、AWS CloudFormation はリソース間の依存関係を作成、管理、決定します。リソースの複製と追跡のためのコスト最適なソリューションをユーザーに提供します。
CloudFormation を使用する必要がある理由
AWS CloudFormation は、アプリケーションに必要な AWS リソースのプロビジョニングと構成を処理します。これにより、ユーザーはリソースを管理する代わりに、デプロイされたアプリケーションの複雑なコーディングに集中して時間を有効活用できるようになります。
AWS CloudFormation を使用すると、ユーザーは サーバーのクローン いつでも設定を行えます。さらに、ユーザーは簡単に管理できます。 アドホックな変更 アプリケーションの既存の環境で。 AWS CloudFormation がテンプレート上で動作することに貢献し、 内の構成 これら テンプレート いつでも変更できます。これらの変更を事前にテストして、アプリケーションへの影響を判断することもできます。
AWS CloudFormation はどのように機能しますか?
AWS CloudFormation の動作メカニズムは、スタックのテンプレートを作成して提供することから始まります。ユーザーは、AWS が提供するテンプレートまたはカスタム管理のテンプレートを使用できます。これらのテンプレートは、 「YAML」または「JSON」 フォーマット。テンプレートでは、ユーザーはさまざまな構成を指定します。データベースエンジン、サーバー構成など。
このテンプレートは、コードの一部として S3 バケットにアップロードされます。 CloudFormation は、 フェッチ からのコード S3バケット そしてテンプレートを検証します。テンプレートで指定されたリソースは、CloudFormation によって順序どおりに作成されます。
AWS CloudFormation の主要な概念は何ですか?
AWS CloudFormation には、テンプレートとスタックという 2 つの主要なコンポーネントが含まれています。
テンプレート
テンプレートは、アプリケーションのインフラストラクチャを定義する、フォーマットされた JSON または YAML ファイルです。ユーザーは、豊富なグラフィックスが組み込まれた CloudFormation デザイナーでテンプレートを作成、更新、または表示できます。テンプレートは次のオブジェクトで構成されます。
- バージョン: これにより、テンプレートのバージョンに応じてテンプレートの機能が指定および決定されます。
- 説明: テンプレートを作成した目的や理由など、テンプレートに関するコメントが含まれます。
- Metadata: メタデータには、テンプレートの詳細な構成が含まれます。
- パラメーター: 「パラメータ」は、スタックが作成または更新されるたびに使用されるオプションのセクションです。パラメーター セクションは、カスタム入力値を使用してテンプレートをカスタマイズするために使用されます。
- マッピング: これは、キーと値のペアを照合するために使用されます。キーは、提供された対応する値と照合されます。
- 条件: このセクションは、スタックの作成時に実行されるステートメントを指定するために使用されます。
- リソース: これは、スタックの AWS リソースを宣言するために使用される必須のセクションです。
- 出力: このセクションでは、CloudFormation コンソールに表示される出力について説明します。
スタック
スタックは、CloudFormation のテンプレートで宣言されたリソースのコレクションとして参照されます。スタックには、アプリケーションのデプロイメントに必要なすべてのリソースが含まれています。テンプレートでこれらのスタックを使用すると、リソースを予測可能かつ秩序立った方法で作成および操作できます。異なる目的を果たす 3 種類のスタックが提供されています。
- ネストされたスタック : これらは、あるスタックを別のスタック内に定義することにより、スタックの階層を形成するために使用されます。
- Windows スタック: このようなスタックは、Windows インスタンスのスタックを更新および構成するために使用されます。ユーザーは、EC2 Microsoft AMI 用の Windows スタックを作成できます。
- スタックセット: スタックセットを使用すると、ユーザーは単一のテンプレートから複数のスタックを作成できます。これらのスタック セットはグローバルにアクセスできます。
注: セットを変更する
前述したように、テンプレートは変更できます。実行状態にあるインスタンスを変更するには、ユーザーは変更セットを生成できます。この変更セットは、提案された変更の概要です。変更セットを使用すると、ユーザーは変更を実際に実装する前に、実行中のアプリケーションに対する変更の影響を判断できます。この方法は、特に重要なリソースに対して安全であると考えられています。
AWS CloudFormation の使用を開始するにはどうすればよいですか?
AWS CloudFormation の使用を開始するには、以下の手順に注意深く従ってください。
ステップ 1: AWS マネジメントコンソール
を検索してください 「クラウドフォーメーション」 アカウントにログインした後、AWS マネジメントコンソールの検索バーからサービスを選択します。表示された結果からサービス名をクリックします。
ステップ 2: スタックを作成する
をタップします。 「スタックの作成」 AWS CloudFormation のコンソールからボタンをクリックします。
ステップ 3: テンプレートを準備する
次のインターフェイスでは、次の 3 つのオプションが表示されます。 「テンプレートを用意してください」 セクション:
- テンプレートの準備ができました: ユーザーは、カスタム テンプレートがアップロードされる S3 バケット URL を選択できます。
- サンプル テンプレートを使用します。 これらのテンプレートは AWS によって提供されます。
- デザイナーでテンプレートを作成する : ユーザーは、CloudFormation Designer ツールを使用してテンプレートを作成することもできます。
このデモでは、 「サンプルテンプレートを使用する」 オプション:
ステップ 4: テンプレートを選択する
の中に 「サンプルテンプレートを選択してください」 セクションで、次の項目を選択します 'ランプ' (Linux、Apache、MySQL、PHP) のカテゴリに該当するテンプレート '単純' ドロップダウン リストからテンプレートを選択します。
CloudFormation デザイナーでテンプレートを表示するには、 「デザイナーで表示」 ボタン:
これにより、デザイナーのビューでテンプレートが開きます。ユーザーは、テンプレート言語の選択、テンプレートの拡大または縮小、リソース タイプの選択などを行うことができます。
ステップ5:「次へ」ボタンをタップします
CloudFormation の最初のコンソールに戻ります。クリック '次' インターフェイスの下部にあるボタン:
ステップ 6: 構成の詳細
スタックの名前を指定します。 「スタック名」 テキストフィールド:
次に来るのは、 'パラメーター' セクション。の 「DB名」 として提供されます デフォルト AWSによる。ただし、ユーザーはデータベースのカスタム名を指定することもできます。にパスワードを入力します。 「DBパスワード」 そして 「DBRootパスワード」 テキストフィールド。同様に、ユーザー名を 「DBUユーザー」 テキストフィールド:
[インスタンス タイプ] テキスト フィールドのドロップダウン リストからインスタンスのタイプを選択します。でキーペア名を指定します。 「キー名」 。ユーザーは任意のものを選択することもできます 既存のキー EC2 インスタンスの場合。この設定が完了したら、 '次' さらに進むボタン:
ステップ 7: スタック オプションの構成
表示されたインターフェイスから、ユーザーは カスタム IAM ロール CloudFormation セットアップ用。これはオプションのフィールドであり、デフォルトとしても機能します。ユーザーは、失敗イベント用にスタックを構成することもできます。
このデモの設定をデフォルトのままにして、 '次' インターフェイスの下部にあるボタン:
ステップ 8: 情報を確認する
次のインターフェイスでは、 スタックの構成 確認のためにユーザーに表示されます。
スタック情報を注意深く確認した後、インターフェイスの一番下までスクロールして、 '提出する' スタックを作成するためのボタン:
ステップ 9: 進捗状況
次のインターフェイスでは、 進捗 スタックの 表示される 。スタックの構成と作成には時間がかかります。
をタップします。 'イベント' タブが表示され、スタックに関する情報が表示されます。ここで、CloudFormation は現在、EC2 インスタンス用にさまざまな Web サーバー インスタンスとセキュリティ グループを作成しています。スタックの作成中に発生したあらゆる種類のエラーもここに表示されます。
スタックは正常に作成されました。
をタップします。 'リソース' タブをクリックして、CloudFormation によって作成されたリソースを表示します。ここでは、[リソース] タブに、Web サーバー インスタンスと EC2 インスタンスのセキュリティ グループに関する情報が表示されます。
CloudFormation の出力を表示するには、 URL に基づいて提供される '価値' をクリックした後のセクション '出力' タブ:
以下は、LAMP テンプレートを使用して作成したスタックの出力です。
ユーザーは、このスタック用に構成された EC2 インスタンスが作成されたかどうかを確認することもできます。 「EC2」 コンソール。 EC2 ダッシュボードから、テンプレートで指定されたとおりに EC2 インスタンスが作成されています。
このセクションからは以上です。
ボーナスヒント: CloudFormation でスタックを削除するにはどうすればよいですか?
すべてのリソースを手動で削除する代わりに、ユーザーはスタックを削除するだけで、最終的にすべてのリソースがクリーンアップされます。この目的のために、CloudFormation ダッシュボードに移動し、 '消去' ボタン:
表示されたダイアログボックスで、 '消去' ボタン:
スタックのステータスが「」に変更されました。 DELETE_IN_PROGRESS”:
ここでは、スタックが正常に削除されました。
EC2インスタンスは 削除されました も成功しました:
このガイドの説明は以上です。
AWS CloudFormation を使用する利点は何ですか?
AWS CloudFormation を使用する利点は次のとおりです。
- 構成変更にも対応可能。
- コスト最適化
- リソースの手動管理を排除します。
- すべてのリソースを一度に削除します。
- クロスアカウントおよびクロスリージョンのアクセスを提供します。
AWS CloudFormation の料金はいくらですか
AWS CloudFormation では、このサービスの利用に料金はかかりません。ただし、ユーザーはスタックのテンプレートで指定されたリソースに対してのみ料金を請求されます。ユーザーは、利用されたリソースに対してのみ料金を支払います。指定されたリソースにロード バランサーが含まれている場合、請求ダッシュボードにはロード バランサーに対して請求される月額料金が含まれます。 AWS CloudFormation の料金について詳しくは、 AWS のドキュメント。
結論
AWS CloudFormation の使用を開始するには、AWS コンソールからサービスにアクセスし、テンプレートを指定して詳細を指定し、 '提出する' ボタン。 [送信] ボタンをクリックすると、CloudFormation はスタックと指定されたリソースの作成を開始します。出力を表示するには、[出力] タブで CloudFormation によって提供される URL をクリックします。この記事では、CloudFormation に関する情報とその実践的なデモを紹介します。