

# CloudFormation StackSets にスタックを追加する
<a name="stackinstances-create"></a>

StackSet の作成時に、StackSet のスタックを作成できます。CloudFormation では、StackSet の作成後はいつでも、追加のアカウントやリージョン用に、さらにスタックを追加することもできます。CloudFormation コンソールまたは AWS CLI を使用してスタックを追加できます。

**Topics**
+ [StackSet にスタックを追加する (コンソール)](#stackinstances-create-console)
+ [スタックを StackSet に追加する (AWS CLI)](#stackinstances-create-cli)

## StackSet にスタックを追加する (コンソール)
<a name="stackinstances-create-console"></a>

**スタックを StackSet に追加するには**

1. AWS マネジメントコンソール にサインインし、CloudFormation コンソール ([https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/)) を開きます。

1. 画面の上部のナビゲーションバーで、StackSet を作成した AWS リージョン を選択します。

1. ナビゲーションペインから [**StackSets**] を選択します。[StackSets] ページで、作成した StackSet を選択します。

1. StackSet を選択した状態で、**[アクション]** メニューから **[StackSet にスタックを追加]** を選択します。

1. [**デプロイオプションの設定**] ページで、以下を実行します。

   1. **[StackSet にスタックを追加]** で、**[新しいスタックのデプロイ]** を選択します。

   1. 次に、StackSet のアクセス許可設定に応じて、以下を実行します。
      + [セルフマネージド型のアクセス許可] [**アカウント**] の[**Deployment locations (デプロイ先)**] で [**Deploy stacks in accounts (スタックをアカウントにデプロイ)**] を選択します。ターゲットアカウント番号をテキストボックスに貼り付け、複数の数字をカンマで区切ります。
      + [サービスマネージド型のアクセス許可] [**デプロイターゲット**] で次のいずれかを実行します。
        + 組織内のすべてのアカウントにデプロイするには、[**Deploy to organization (組織にデプロイ)**] を選択します。
        + 特定の OU のすべてのアカウントにデプロイするには、[**Deploy to organizational units (OUs) (組織単位 (OU) にデプロイ)**] を選択します。[**Add another OU (別の OU の追加)**] を選択し、テキストボックスにターゲット OU ID を貼り付けます。新しいターゲット OU ごとに繰り返します。CloudFormation は選択したターゲットの子 OU もターゲットにします。
**注記**  
StackSet が既にターゲットにしている OU を追加すると、CloudFormation は、StackSet でスタックを持たない OU 内のアカウント (例えば、StackSet が作成され、自動デプロイが無効になった後に OU に追加されたアカウントなど) に新しいスタックを作成します。

   1. [**リージョンを指定**] では、前のステップで指定したターゲットアカウントにデプロイする AWS リージョン を指定します。デフォルトでは、CloudFormation は、リージョンのデプロイ失敗が指定された耐障害性を超えない限り、最初のリージョン内の指定されたアカウントにスタックをデプロイし、次のリージョンに移行し、それが繰り返されます。

   1. **[デプロイオプション]** で、次の操作を行います。
      + **[同時アカウントの最大数]** で、同時に処理されるアカウントの数を指定します。
      + **[耐障害性]** には、リージョンごとに許可されるアカウント障害の最大数を指定します。この制限に達すると、オペレーションは停止し、他のリージョンには進みません。
      + **[リージョンの同時実行]** で、リージョンの処理方法を選択します。**[順次]** (一度に 1 つのリージョン) または **[並列]** (複数のリージョンを同時に) を選択できます。
      + **[同時実行モード]** で、オペレーションの実行中に同時実行がどのように動作するかを選択します。
        + **[厳格な耐障害性]** – 障害発生時の同時実行レベルを下げ、**[耐障害性]** の値を \$11 の範囲内にとどめます。
        + **[ソフトな障害耐性]** – 障害に関係なく、指定された同時実行レベル (**[同時アカウントの最大数]** の値) を維持します。

   1. [**次へ**] を選択します。

1. [**Set Overrides (上書きを設定)**] ページでは、プロパティ値は指定されたとおりにしておきます。作成しているスタックではプロパティ値を上書きすることはありません。[**次へ**] を選択します。

1. **[確認]** ページで選択内容を確認します。変更するには、関連セクションで [**編集**] をクリックします。

1. 続行する準備ができたら、[**送信**] を選択します。

   CloudFormation でスタックの作成が開始されます。StackSet 内のスタック作成の進捗と状況は、**[送信]** を選択した際に開く StackSet 詳細ページで確認できます。完了すると、新しいスタックが **[スタックインスタンス]** タブに一覧表示されます。

## スタックを StackSet に追加する (AWS CLI)
<a name="stackinstances-create-cli"></a>

**注記**  
委任管理者として操作する場合は、コマンドに `--call-as DELEGATED_ADMIN` を含める必要があります。

**セルフマネージド型のアクセス許可を持つ StackSet にスタックを追加するには**  
**create-stack-instances** CLI コマンドを使用します。`--accounts` オプションでは、スタックを作成するアカウント ID を指定します。

```
aws cloudformation create-stack-instances --stack-set-name my-stackset \
  --accounts account_id --regions eu-west-1 us-west-2
```

**サービスマネージド型のアクセス許可を持つ StackSet にスタックを追加するには**  
**create-stack-instances** CLI コマンドを使用します。`--deployment-targets` オプションでは、スタックを作成する組織 (ルート) ID または OU ID を指定します。特定のアカウントをターゲットとするコマンドの例については、「[サービスマネージド型のアクセス許可を持つ StackSet 作成 (AWS CLI)](stacksets-orgs-associate-stackset-with-org.md#stacksets-orgs-associate-stackset-with-org-cli)」を参照してください。

```
aws cloudformation create-stack-instances --stack-set-name my-stackset \
  --deployment-targets OrganizationalUnitIds=ou-rcuk-r1qi0wl7 --regions eu-west-1 us-west-2
```

**注記**  
StackSet が既にターゲットにしている OU を追加すると、CloudFormation は、StackSet でスタックを持たない OU 内のアカウント (例えば、StackSet が作成され、自動デプロイが無効になった後に OU に追加されたアカウントなど) に新しいスタックを作成します。