View a markdown version of this page

CloudFormation テンプレートからのスタック | 更新 - AMS Advanced Change Type リファレンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

CloudFormation テンプレートからのスタック | 更新

CFN スタックのテンプレートやパラメータを更新します。既存のスタックのパラメータのみを更新するには、変更した CFN テンプレートは必要ありません。代わりに変更したパラメータを指定できます。既存のパラメータの値は上書きされ、新しいパラメータの値が追加されます。リソースを追加、削除、変更したり、パラメータで参照されていない属性を変更したりするには、変更された CFN テンプレートを使用します。更新によってスタック内のリソースが置き換えまたは削除される場合、RFC は失敗し、ChangeSet の承認と CloudFormation スタックの更新」 CT (ct-1404e21baa2ox) による承認が必要です。

完全分類: 管理 | カスタムスタック | CloudFormation テンプレートからのスタック | 更新

変更タイプの詳細

変更タイプ ID

ct-361tlo1k7339x

現在のバージョン

2.0

予想される実行期間

360 分

AWS の承認

必須

お客様の承認

不要

実行モード

自動

追加情報

CloudFormation 取り込みスタックを更新する

コンソールを使用して CloudFormation 取り込みスタックを更新するには

  1. RFC の作成ページに移動します。AMS コンソールの左側のナビゲーションペインでRFCs をクリックして RFCsリストページを開き、RFC の作成をクリックします。

  2. デフォルトの変更タイプ参照ビューで一般的な変更タイプ (CT) を選択するか、カテゴリ別選択ビューで CT を選択します。

    • 変更タイプ別に参照: クイック作成エリアで一般的な CT をクリックすると、すぐに RFC の実行ページを開くことができます。クイック作成で古い CT バージョンを選択することはできません。

      CTs をソートするには、カードビューまたはテーブルビューですべての変更タイプエリアを使用します。どちらのビューでも、CT を選択し、RFC の作成をクリックして RFC の実行ページを開きます。必要に応じて、RFC の作成ボタンの横に古いバージョンで作成オプションが表示されます。

    • カテゴリ別に選択: カテゴリ、サブカテゴリ、項目、オペレーションを選択すると、CT 詳細ボックスが開き、必要に応じて古いバージョンで作成するオプションが表示されます。RFC の作成をクリックして、RFC の実行ページを開きます。

  3. RFC の実行ページで、CT 名エリアを開き、CT の詳細ボックスを表示します。件名は必須です (変更タイプの参照ビューで CT を選択した場合は入力されます)。追加設定領域を開き、RFC に関する情報を追加します。

    実行設定領域で、使用可能なドロップダウンリストを使用するか、必要なパラメータの値を入力します。オプションの実行パラメータを設定するには、追加設定エリアを開きます。

  4. 完了したら、実行 をクリックします。エラーがない場合、RFC が正常に作成されたページに、送信された RFC の詳細と最初の実行出力が表示されます。

  5. Run parameters 領域を開き、送信した設定を確認します。ページを更新して RFC 実行ステータスを更新します。必要に応じて、RFC をキャンセルするか、ページ上部のオプションを使用してコピーを作成します。

CLI を使用して CloudFormation 取り込みスタックを更新するには

  1. インライン作成 (すべての RFC と実行パラメータを含むcreate-rfcコマンドを発行) またはテンプレート作成 (2 つの JSON ファイルを作成します。1 つは RFC パラメータ用、もう 1 つは実行パラメータ用) のいずれかを使用し、2 つのファイルを入力としてcreate-rfcコマンドを発行します。どちらの方法もここで説明します。

  2. 返された RFC ID を使用して RFC: aws amscm submit-rfc --rfc-id ID コマンドを送信します。

    RFC: aws amscm get-rfc --rfc-id ID コマンドをモニタリングします。

変更タイプのバージョンを確認するには、次のコマンドを使用します。

aws amscm list-change-type-version-summaries --filter Attribute=ChangeTypeId,Value=CT_ID
注記

変更タイプのスキーマの一部であるかどうかにかかわらず、任意の RFC で任意のCreateRfcパラメータを使用できます。たとえば、RFC ステータスが変更されたときに通知を受け取るには、リクエストの RFC パラメータ部分 (実行パラメータではなく) --notification "{\"Email\": {\"EmailRecipients\" : [\"email@example.com\"]}}"にこの行を追加します。すべての CreateRfc パラメータのリストについては、AMS 変更管理 API リファレンスを参照してください。

  1. スタックの更新に使用する CloudFormation テンプレートを準備し、S3 バケットにアップロードします。重要な詳細については、AWS CloudFormation 取り込みガイドライン」、「ベストプラクティス」、および「制限」を参照してください。

  2. RFC を作成して AMS に送信します。

    1. 実行パラメータ JSON ファイルを作成して保存し、必要な CloudFormation テンプレートパラメータを含めます。この例では、UpdateCfnParams.json.

      インラインパラメータ更新を含む UpdateCfnParams.json ファイルの例:

      { "StackId": "stack-yjjoo9aicjyqw4ro2", "VpcId": "VPC_ID", "CloudFormationTemplate": "{\"AWSTemplateFormatVersion\":\"2010-09-09\",\"Description\":\"Create a SNS topic\",\"Parameters\":{\"TopicName\":{\"Type\":\"String\"},\"DisplayName\":{\"Type\":\"String\"}},\"Resources\":{\"SnsTopic\":{\"Type\":\"AWS::SNS::Topic\",\"Properties\":{\"TopicName\":{\"Ref\":\"TopicName\"},\"DisplayName\":{\"Ref\":\"DisplayName\"}}}}}", "TemplateParameters": [ { "Key": "TopicName", "Value": "TopicNameCLI" }, { "Key": "DisplayName", "Value": "DisplayNameCLI" } ], "TimeoutInMinutes": 1440 }

      更新された CloudFormation テンプレートを含む S3 バケットエンドポイントを含む UpdateCfnParams.json ファイルの例:

      { "StackId": "stack-yjjoo9aicjyqw4ro2", "VpcId": "VPC_ID", "CloudFormationTemplateS3Endpoint": "s3_url", "TemplateParameters": [ { "Key": "TopicName", "Value": "TopicNameCLI" }, { "Key": "DisplayName", "Value": "DisplayNameCLI" } ], "TimeoutInMinutes": 1080 }
  3. 次の内容の RFC パラメータ JSON ファイルを作成して保存します。この例では、UpdateCfnRfc.json ファイルという名前を付けます。

    { "ChangeTypeId": "ct-361tlo1k7339x", "ChangeTypeVersion": "1.0", "Title": "cfn-ingest-template-update" }
  4. RFC を作成し、UpdateCfnRfc ファイルと UpdateCfnParams ファイルを指定します。

    aws amscm create-rfc --cli-input-json file://UpdateCfnRfc.json --execution-parameters file://UpdateCfnParams.json

    レスポンスで新しい RFC の ID を受け取り、それを使用して RFC を送信およびモニタリングできます。送信するまで、RFC は編集状態のままであり、開始されません。

  • この変更タイプはバージョン 2.0 になりました。変更には、この CT のバージョン 1.0 で使用された AutoApproveUpdateForResources パラメータの削除と、AutoApproveRiskyUpdatesBypassDriftCheck の 2 つの新しいパラメータの追加が含まれます。

  • S3 バケットが AMS アカウントに存在する場合は、このコマンドに AMS 認証情報を使用する必要があります。例えば、AMS AWS Security Token Service (AWS STS) 認証情報を取得--profile samlした後に を追加する必要がある場合があります。

  • CloudFormation テンプレートのリソースのすべてのParameter値には、デフォルトまたは CT のパラメータセクションのカスタム値のいずれかの値が必要です。パラメータ値を上書きするには、CloudFormation テンプレートリソースを構造化して Parameters キーを参照します。方法を示す例については、CloudFormation 取り込みスタック: CFN 検証の例」を参照してください。

    重要: フォームに明示的に指定されていないパラメータがありません。デフォルトでは、既存のスタックまたはテンプレートに現在設定されている値になります。

  • Ingest CloudFormation を使用して追加できるセルフプロビジョニングサービスのリストについては、CloudFormation Ingest Stack: Supported Resources」を参照してください。

    詳細については CloudFormation、「AWS Cloud Formation」を参照してください。

テンプレートは、AMS アカウントで作成できることを確認するために検証されます。検証に合格すると、AMS に準拠するために必要なリソースまたは設定が含まれるように更新されます。これには、AMS オペレーションがスタックをモニタリングできるようにするための Amazon CloudWatch アラームなどのリソースの追加が含まれます。

次のいずれかに該当する場合、RFC は拒否されます。

  • RFC JSON 構文が正しくないか、指定された形式に従っていません。

  • 指定された S3 バケットの署名付き URL が無効です。

  • テンプレートは有効な CloudFormation 構文ではありません。

  • テンプレートには、すべてのパラメータ値にデフォルトが設定されているわけではありません。

  • テンプレートは AMS 検証に失敗します。AMS 検証の手順については、このトピックで後述する情報を参照してください。

リソース作成の問題により CloudFormation スタックの作成に失敗すると、RFC は失敗します。

CFN 検証と検証の詳細については、「テンプレート検証CloudFormation 取り込みスタック: CFN 検証の例」を参照してください。

実行入力パラメータ

実行入力パラメータの詳細については、「」を参照してください変更タイプ ct-361tlo1k7339x のスキーマ

例: 必須パラメータ

{ "StackId": "stack-kiwonebfnadq08sol", "VpcId": "vpc-01234567890abcdef", "TimeoutInMinutes": 360 }

例: すべてのパラメータ

Example not available.