サービスマネージド型のアクセス許可を持つスタックセットの自動デプロイの管理 - AWS CloudFormation

サービスマネージド型のアクセス許可を持つスタックセットの自動デプロイの管理

自動デプロイを有効にすると、今後ターゲットの組織または組織単位 (OU) に追加されるアカウントに StackSets が自動デプロイを行います。スタックの保持を有効にすると、ターゲット OU からアカウントが削除された場合でも、アカウントのスタックリソースは保持されます。スタックセットを作成したときに指定した自動デプロイ設定は、いつでも調整できます。

AWS CloudFormation コンソールを使用して自動デプロイを管理する

  1. https://console.aws.amazon.com/cloudformation. で AWS CloudFormation コンソールを開きます。

  2. ナビゲーションペインから [StackSets] を選択します。

  3. [StackSets] ページで、「サービスマネージド型のアクセス許可を持つスタックセットの作成」で作成したスタックセットを選択します。

  4. スタックセットを選択した状態で、[アクション] メニューから [Edit automatic deployment (自動デプロイの編集)] を選択します。自動デプロイはスタックセットレベルで設定されます。OU、アカウント、リージョンを選択して自動デプロイを調整することはできません。

    
                                スタックセットを選択し、[アクション] メニューから [自動デプロイの編集] を選択します。
  5. モーダルダイアログの [Edit automatic deployment (自動デプロイの編集)] で、[Automatic deployment (自動デプロイ)] と [Account removal behavior (アカウントの削除の動作)] の設定を行います。

    
                                [Edit automatic deployment (自動デプロイの編集)] モーダル。
    注記

    [Retain stacks (スタックの保持)] を選択すると、スタックインスタンスはスタックセットから削除されますが、スタックとそれに関連付けられたリソースは保持されます。リソースは現在の状態のままですが、スタックセットには含まれなくなります。スタックを既存または新規のスタックセットに再度関連付けることはできません。

  6. [保存] を選択します。

AWS CLI を使用して自動デプロイを管理する

  1. AWS CLI を開きます。

  2. サービスマネージド型のアクセス許可を持つスタックセットの作成」で作成したスタックセットを指定する update-stack-set コマンドを実行します。自動デプロイはスタックセットレベルで設定されます。スタックセットの更新で —auto-deployment を指定した場合、—deployment-targets または —regions を指定することはできません。

    aws cloudformation update-stack-set --stack-set-name StackSet_myApp --auto-deployment Enabled=false
  3. ステップ 2 で update-stack-set 出力の一部として返された operation-id を使用して、describe-stack-set-operation を実行し、スタックセットが正常に更新されたことを確認します。

    aws cloudformation describe-stack-set-operation --operation-id operation_ID

自動デプロイの例

自動デプロイを有効にすると、アカウントがターゲットの組織または OU に追加されたとき、ターゲットの組織または OU から削除されたとき、ターゲット OU 間で移動したときにトリガーされます。

たとえば、スタックセットの StackSet1us-east-1 リージョンの OU OU1 をターゲットにします。スタックセットの StackSet2us-east-1 リージョンの OU OU2 をターゲットにします。OU1 にはアカウント AccountA が含まれます。

自動デプロイを有効にして AccountAOU1 から OU2 に移動すると、StackSets は自動的に削除オペレーションを実行して StackSet1 インスタンスを AccountA から削除し、StackSet2 インスタンスを AccountA に追加する作成オペレーションをキューに入れます。StackSet1 インスタンスが削除されたあと、StackSet2 インスタンスが作成されます。