

# Amazon EC2 インスタンスのプレイスメントグループ
<a name="placement-groups"></a>

ワークロードのニーズを対応するために、相互に依存する EC2 インスタンスのグループをプレイスメントグループ内に作成して、そのプレイスメントに影響を与えることができます。

ワークロードのタイプに応じて、以下のいずれかのプレイスメント戦略によりプレイスメントグループを作成できます。
+ **[クラスター]** – アベイラビリティーゾーン内でインスタンスをまとめます。この戦略により、ワークロードは、ハイパフォーマンスコンピューティング (HPC) アプリケーションで典型的な緊密に組み合わされたノード間通信に必要な低レイテンシーネットワークパフォーマンスを実現できます。
+ **パーティション** – インスタンスを複数の論理パーティションに分散させ、1 つのパーティション内のインスタンスのグループが基盤となるハードウェアを別のパーティション内のインスタンスのグループと共有しないようにします。この戦略は、Hadoop、Cassandra、Kafka などの大規模な分散および複製ワークロードで一般的に使用されます。
+ **スプレッド** 相関性のエラーを減らすために、少数のインスタンスを基盤となるハードウェア全体に厳密に配置します。

プレイスメントグループは任意で選択します。インスタンスをリプレイスメントグループに作成しない場合、EC2 は、関連する障害を最小限に抑えるために、すべてのインスタンスが基盤となるハードウェア全体に分散されるような方法でインスタンスを配置しようとします。

**料金**  
プレイスメントグループを作成するための料金は発生しません。

**ルールと制限**

プレイスメントグループを使用する前に、次のルールに注意してください｡
+ インスタンスは一度に 1 つのプレイスメントグループに配置することができます。1 つのインスタンスを複数のプレイスメントグループに配置することはできません。
+ プレイスメントグループをマージすることはできません。
+ [オンデマンドキャパシティ予約](ec2-capacity-reservations.md#capacity-reservations-limits)および[ゾーンリザーブドインスタンス](reserved-instances-scope.md)を使用すると、アベイラビリティーゾーンの EC2 インスタンスに対してキャパシティを予約できます。インスタンスを起動するときに、インスタンス属性がオンデマンドキャパシティ予約またはゾーンリザーブドインスタンスで指定された属性と一致する場合、リザーブドキャパシティはインスタンスによって自動的に使用されます。これは、プレイスメントグループにインスタンスを起動する場合にも当てはまります。
+ Dedicated Hosts をプレイスメントグループで起動することはできません。
+ プレイスメントグループの中断時に停止または休止するように設定されたスポットインスタンスは起動できません。

**Topics**
+ [プレイスメント戦略](placement-strategies.md)
+ [プレイスメントグループの作成](create-placement-group.md)
+ [インスタンスの配置を変更する](change-instance-placement-group.md)
+ [プレイスメントグループの削除](delete-placement-group.md)
+ [共有プレイスメントグループ](share-placement-group.md)
+ [AWS Outposts のプレイスメントグループ](placement-groups-outpost.md)

# プレイスメントグループのプレイスメント戦略
<a name="placement-strategies"></a>

EC2 インスタンスのプレイスメントグループは、次のいずれかのプレイスメント戦略を使用して作成できます。

**Topics**
+ [クラスタープレイスメントグループ](#placement-groups-cluster)
+ [パーティションプレイスメントグループ](#placement-groups-partition)
+ [スプレッドプレイスメントグループ](#placement-groups-spread)

## クラスタープレイスメントグループ
<a name="placement-groups-cluster"></a>

クラスタープレイスメントグループは、単一のアベイラビリティーゾーン内のインスタンスを論理的にグループ化したものです。インスタンスは単一ラックに分離されるものではありません。クラスタープレイスメントグループは、同じリージョン内の複数のピア接続 VPC にまたがることができます。同じクラスタープレイスメントグループ内のインスタンスは、TCP/IP トラフィックのフローあたりのスループット上限が高くなり、ネットワークの二分帯域幅の広い同じセグメントに配置されます。

次の図は、クラスタープレイスメントグループに配置されたインスタンスを示しています。

![\[クラスタープレイスメントグループ。\]](http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/images/placement-group-cluster.png)


低いネットワークレイテンシー、高いネットワークスループット、またはその両方からメリットを受けるアプリケーションの場合は、クラスタープレイスメントグループの使用をお勧めします。また、ネットワークトラフィックの大部分がグループ内のインスタンス間で発生している場合にもお勧めします。プレイスメントグループで、最も低いレイテンシーと最も高いネットワークパフォーマンス (1 秒あたりパケット数) を実現するためには、拡張ネットワーキングをサポートするインスタンスタイプを選択します。詳細については、[拡張ネットワーキング](enhanced-networking.md)を参照してください。

インスタンスは、次の方法で起動することをお勧めします。
+ プレイスメントグループ内で必要な数のインスタンスを起動するには、1 つの起動リクエストを使用します。
+ プレイスメントグループ内のすべてのインスタンスに同じインスタンスタイプを使用します。

後でプレイスメントグループにさらにインスタンスを追加しようとした場合、またはプレイスメントグループ内で複数のインスタンスタイプを起動しようとした場合、容量不足エラーが発生する可能性が高くなります。

プレイスメントグループ内のインスタンスを停止して再起動しても、そのインスタンスは同じプレイスメントグループ内で実行されます。ただし、インスタンスに対して十分な容量がない場合、起動は失敗します。

既にインスタンスを実行中のプレイスメントグループ内のインスタンスを起動するときに容量エラーを受け取った場合は、プレイスメントグループ内のすべてのインスタンスを停止して開始し、もう一度起動を試みてください。インスタンスを起動すると、すべてのリクエストしたインスタンスに応じた容量があるハードウェアにインスタンスが移行される場合があります。

**ルールと制限**

クラスタープレイスメントグループには、以下のルールが適用されます。
+ 以下のインスタンスタイプがサポートされています。
  + 現行世代のインスタンス。[バーストパフォーマンス](burstable-performance-instances.md)インスタンス (T2 など)、[Mac1 インスタンス](ec2-mac-instances.md)、M7i-flex インスタンスを除く。
  + 以下は旧世代のインスタンスです: A1、C3、C4、I2、M4、R3、R4。
+ クラスタープレイスメントグループを、複数のアベイラビリティーゾーンで設定することはできません。
+ クラスタープレイスメントグループの 2 つのインスタンス間のトラフィックの最大ネットワークスループット速度は、2 つのインスタンスのうち遅い方に制限されます。高スループットの要件があるアプリケーションの場合、要件に適合するネットワーク接続を備えたインスタンスタイプを選択します。
+ 拡張ネットワーキングに対して有効になっているインスタンスには、以下のルールが適用されます。
  + クラスタープレイスメントグループ内のインスタンス間では、シングルフロートラフィックに最大 10 Gbps を使用できます。クラスタープレイスメントグループ内にないインスタンスは、シングルフロートラフィックに最大 5 Gbps を使用できます。
  + 同じリージョン内でのインスタンスと Amazon S3 バケットとの間では、パブリック IP アドレス空間または VPC エンドポイントを介したトラフィックに、使用可能なすべてのインスタンスの集計帯域幅を使用できます。
+ 複数のインスタンスタイプをクラスタープレイスメントグループに起動できます。ただし、これにより起動に成功するために必要な容量が使用可能になる可能性が低くなります。クラスタープレイスメントグループ内ですべてのインスタンスで同じインスタンスタイプを使用することをお勧めします。
+ [クラスタープレイスメントグループ内にオンデマンドキャパシティ予約](cr-cpg.md)を作成することで、クラスタープレイスメントグループでキャパシティを明示的に予約することをお勧めします。ゾーンリザーブドインスタンスを使用してキャパシティを予約することはできないので注意してください。これは、ゾーンリザーブドインスタンスでは、プレイスメントグループでキャパシティを明示的に予約できないためです。
+ インターネットへのネットワークトラフィックとオンプレミスリソースへの Direct Connect 接続は、クラスタープレイスメントグループに対して 5 Gbps に制限されます。

## パーティションプレイスメントグループ
<a name="placement-groups-partition"></a>

パーティションプレイスメントグループは、アプリケーションに関連するハードウェア障害の頻度を軽減するために役立ちます。パーティションプレイスメントグループを使用する場合、Amazon EC2 は各グループをパーティションと呼ばれる論理的なセグメントに分割します。Amazon EC2 では、プレイスメントグループ内の各パーティションにそれぞれ一連のラックがあります。各ラックには独自のネットワークおよび電源があります。プレイスメントグループ内のパーティションどうしが同じラックを共有することはありません。これにより、アプリケーション内でのハードウェア障害による影響を隔離できます。

次のイメージは、単一のアベイラビリティーゾーン内のパーティションプレイスメントグループのシンプルな描写を示しています。ここでは、3 つのパーティション (**パーティション 1**、**パーティション 2**、**パーティション 3**) があるパーティションプレイスメントグループに配置されたインスタンスを示しています。各パーティションは複数のインスタンスで構成されています。各パーティション内のインスタンスは、他のパーティション内のラックを共有しないため、単一のハードウェア障害の影響は関連付けられたパーティションのみに留まります。

![\[3 つのパーティションがあるパーティションプレイスメントグループ。\]](http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/images/placement-group-partition.png)


パーティションプレイスメントグループは、HDFS、HBase、Cassandra などの大規模な分散および複製ワークロードを異なるラック間でデプロイするために使用できます。インスタンスをパーティションプレイスメントグループに起動すると、Amazon EC2 は、指定したパーティション数全体にインスタンスを均等に分散しようとします。インスタンスを特定のパーティションに起動して、インスタンスの配置場所をより細かく制御することもできます。

パーティションプレイスメントグループは、同じリージョン内の複数のアベイラビリティーゾーンにパーティションを持つことができます。パーティションプレイスメントグループは、アベイラビリティーゾーンごとに最大 7 つのパーティションを持つことができます。パーティションプレイスメントグループで起動できるインスタンス数の制限は、アカウントの制限のみです。

また、パーティションプレイスメントグループでは各パーティションが可視化されるため、どのインスタンスがどのパーティションにあるかを確認できます。この情報は、HDFS、HBase、Cassandra などトポロジー対応アプリケーションと共有できます。これらのアプリケーションはこの情報を利用してインテリジェントなデータレプリケーションの決定を行い、データの可用性と耐久性を向上します。

パーティションプレイスメントグループでインスタンスを開始または起動し、リクエストを実行するための固有のハードウェアが不足している場合、そのリクエストは失敗します。Amazon EC2 では、時間の経過とともに、より明確なハードウェアを利用できるようになるため、後でリクエストを再試行できます。

**ルールと制限**

パーティションプレイスメントグループには、以下のルールが適用されます。
+ パーティションプレイスメントグループは、アベイラビリティーゾーンごとに最大 7 つのパーティションをサポートします。パーティションプレイスメントグループで起動できるインスタンス数の制限は、アカウントの制限のみです。
+ インスタンスをパーティションプレイスメントグループに起動すると、Amazon EC2 は、すべてのパーティションにインスタンスを均等に分散しようとします。Amazon EC2 では、すべてのパーティションにインスタンスが均等に分散されるとは限りません。
+ ハードウェア専有インスタンス を持つパーティションプレイスメントグループは、最大 2 つのパーティションを持つことができます。
+ [Capacity Reservations] (キャパシティー予約) を使用して、パーティションプレイスメントグループでキャパシティを予約することはできません。

## スプレッドプレイスメントグループ
<a name="placement-groups-spread"></a>

スプレッドプレイスメントグループは、それぞれ異なるハードウェアに配置されるインスタンスのグループです。

スプレッドプレイスメントグループは、少数の重要なインスタンスが互いに分離して保持される必要があるアプリケーションに推奨されます。スプレッドレベルのプレイスメントグループでインスタンスを起動すると、インスタンスが同じ機器を共有するときに発生し得る同時障害のリスクが軽減されます。スプレッドレベルのプレイスメントグループは、異なるハードウェアへのアクセスを提供するため、長時間のインスタンスタイプの混合やインスタンスの起動に適しています。

スプレッドプレイスメントグループでインスタンスを開始または起動し、リクエストを実行するための固有のハードウェアが不足している場合、そのリクエストは失敗します。Amazon EC2 では、時間の経過とともに、より明確なハードウェアを利用できるようになるため、後でリクエストを再試行できます。プレイスメントグループは、ラックまたはホスト全体でインスタンスを分散できます。ラックレベルのスプレッドプレイスメントグループは、AWS リージョンおよび AWS Outposts で使用できます。ホストレベルのスプレッドプレイスメントグループは、AWS Outposts を使用する場合にのみ使用できます。

**ラックレベルのスプレッドプレイスメントグループ**  
次の図は、1 つのアベイラビリティーゾーン内の、スプレッドプレイスメントグループに配置された 7 つのインスタンスを示しています。7 つのインスタンスは、7 つの異なるラックに配置され、各ラックは独自のネットワークおよび電源を備えています。

![\[スプレッドプレイスメントグループ。\]](http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/images/placement-group-spread.png)


ラックレベルのスプレッドプレイスメントグループは、同じリージョン内の複数のアベイラビリティーゾーンに分散できます。リージョンでは、ラックレベルのスプレッドプレイスメントグループについては、グループごとのアベイラビリティーゾーンごとに、最大 7 つの実行中のインスタンスを持つことができます。Outposts では、ラックレベルのスプレッドプレイスメントグループは、Outpost デプロイメント内のラックと同じ数のインスタンスを保持できます。

**ホストレベルのスプレッドプレイスメントグループ**  
ホストレベルのスプレッドプレイスメントグループは、AWS Outposts を使用する場合にのみ使用できます。ホストスプレッドレベル配置グループは、Outpost デプロイメント内のホストと同じ数のインスタンスを保持できます。詳細については、「[AWS Outposts のプレイスメントグループ](placement-groups-outpost.md)」を参照してください。

**ルールと制限**

スプレッドプレイスメントグループには、以下のルールが適用されます。
+ ラックスプレッドプレイスメントグループは、アベイラビリティーゾーンごとに最大 7 つの実行インスタンスをサポートします。例えば、3 つのアベイラビリティーゾーンがあるリージョンでは、グループ内で合計 21 個のインスタンスを実行でき、各アベイラビリティーゾーンに 7 個のインスタンスがあります。同じアベイラビリティーゾーンと同じスプレッドプレイスメントグループで 8 番目のインスタンスを開始しようとすると、インスタンスは起動しません。アベイラビリティーゾーンに 7 個を超えるインスタンスが必要な場合は、複数のスプレッドプレイスメントグループを使用することをお勧めします。複数のプレイスメントグループに分散しても、グループ間でインスタンスが分散されるとは限りませんが、グループごとの分散が確実になされるようにできるため、特定の障害クラスからの影響は制限されます。
+ ハードウェア専有インスタンス では、スプレッドプレイスメントグループはサポートされていません。
+ ホストレベルのスプレッドプレイスメントグループは、AWS Outposts のプレイスメントグループでのみサポートされます。ホストレベルのスプレッドプレイスメントグループは、Outpost デプロイメント内のホストと同じ数のインスタンスを保持できます。
+ リージョンでは、ラックレベルのスプレッドプレイスメントグループについては、グループごとのアベイラビリティーゾーンごとに、最大 7 つの実行中のインスタンスを持つことができます。AWS Outposts では、ラックレベルのスプレッドプレイスメントグループは、Outpost デプロイメント内のラックと同じ数のインスタンスを保持できます。
+ [Capacity Reservations] (キャパシティー予約) を使用して、スプレッドプレイスメントグループでキャパシティを予約することはできません。

# EC2 インスタンスのプレイスメントグループを作成する
<a name="create-placement-group"></a>

プレイスメントグループを使用して、インスタンス同士の相対的な配置を制御できます。プレイスメントグループを作成したら、そのプレイスメントグループ内でインスタンスを起動できます。

**制限**  
リージョンあたり最大 500 個のプレイスメントグループを作成できます。

------
#### [ Console ]

**プレイスメントグループを作成するには**

1. Amazon EC2 コンソールの [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) を開いてください。

1. ナビゲーションペインで、[**Placement Groups**] を選択します。

1. **[プレイスメントグループを作成]** を選択します。

1. グループの名前を指定します。

1. グループのプレイスメント戦略を、**[クラスター]**、**[スプレッド]**、**[パーティション]** から選択します。

   **[スプレッド]** を選択した場合は、スプレッドレベルとして **[ラック]** または **[ホスト]** を選択する必要があります。

   **[パーティション]** を選択した場合は、グループのパーティション数を入力する必要があります。

1. (オプション) タグを追加するには、**[新しいタグを追加]** を選択し、キーと値を入力します。

1. **[グループの作成]** を選択してください。

------
#### [ AWS CLI ]

[create-placement-group](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-placement-group.html) コマンドを使用します。

**クラスタープレイスメントグループを作成するには**  
次の例では、`cluster` プレイスメント戦略を使用するプレイスメントグループを作成し、キー `purpose` と値 `production` を持つタグを適用します。

```
aws ec2 create-placement-group \
    --group-name my-cluster \
    --strategy cluster \
    --tag-specifications 'ResourceType=placement-group,Tags={Key=purpose,Value=production}'
```

**パーティションプレイスメントグループを作成するには**  
次の例では、`partition` プレイスメント戦略を使用するプレイスメントグループを作成し、`--partition-count` パラメータを使用して 5 つのパーティションを指定します。

```
aws ec2 create-placement-group \
    --group-name HDFS-Group-A \
    --strategy partition \
    --partition-count 5
```

------
#### [ PowerShell ]

[New-EC2PlacementGroup](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2PlacementGroup.html) コマンドレットを使用します。

**クラスタープレイスメントグループを作成するには**  
以下の例では、クラスタープレイスメントグループを作成しています。

```
New-EC2PlacementGroup `
    -GroupName my-placement-group `
    -Strategy cluster
```

**パーティションプレイスメントグループを作成するには**  
以下の例では、パーティションプレイスメントグループを作成しています。

```
New-EC2PlacementGroup `
    -GroupName my-placement-group `
    -Strategy partition `
    -PartitionCount 5
```

------

# EC2 インスタンスの配置を変更する
<a name="change-instance-placement-group"></a>

インスタンスのプレイスメントグループは、次の方法で変更できます。
+ プレイスメントグループにインスタンスを追加する
+ プレイスメントグループ間でインスタンスを移動する
+ プレイスメントグループからインスタンスを削除する

**要件**  
インスタンスのプレイスメントグループを変更する前に、インスタンスを `stopped` 状態にする必要があります。

------
#### [ Console ]

**インスタンスの配置を変更するには**

1. Amazon EC2 コンソールの [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) を開いてください。

1. ナビゲーションペインで、[**インスタンス**] を選択してください。

1. インスタンスを選択します。

1. [**Actions (アクション)**]、[**Instance settings (インスタンスの設定)**]、[**Modify instance placement (インスタンスの配置の変更)**] の順に選択します。

1. **[プレイスメントグループ]** で、次のいずれかを実行します。
   + プレイスメントグループにインスタンスを追加するには、プレイスメントグループを選択します。
   + プレイスメントグループ間でインスタンスを移動するには、プレイスメントグループを選択します。
   + プレイスメントグループからインスタンスを削除するには、**[なし]** を選択します。

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

------
#### [ AWS CLI ]

**プレイスメントグループにインスタンスを移動するには**  
以下の [modify-instance-placement](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-instance-placement.html) コマンドを使用します。

```
aws ec2 modify-instance-placement \
    --instance-id i-0123a456700123456 \
    --group-name MySpreadGroup
```

**プレイスメントグループからインスタンスを削除するには**  
以下の [modify-instance-placement](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-instance-placement.html) コマンドを使用します。プレイスメントグループ名に空の文字列を指定すると、現在のプレイスメントグループからインスタンスが削除されます。

```
aws ec2 modify-instance-placement \
    --instance-id i-0123a456700123456 \
    --group-name ""
```

------
#### [ PowerShell ]

**プレイスメントグループにインスタンスを移動するには**  
[Edit-EC2InstancePlacement](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2InstancePlacement.html) cmdlet を使用し、プレイスメントグループの名前を指定します。

```
Edit-EC2InstancePlacement `
    -InstanceId i-0123a456700123456 `
    -GroupName MySpreadGroup
```

**プレイスメントグループからインスタンスを削除するには**  
[Edit-EC2InstancePlacement](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2InstancePlacement.html) cmdlet を使用し、プレイスメントグループの名前に空の文字列を指定します。

```
Edit-EC2InstancePlacement `
    -InstanceId i-0123a456700123456 `
    -GroupName ""
```

------

# プレイスメントグループの削除
<a name="delete-placement-group"></a>

プレイスメントグループを交換する必要がある場合、または不要になった場合は､そのプレイスメントグループを削除できます。削除するプレイスメントグループにはインスタンスが含まれていないことが必要です。インスタンスを終了し、そのインスタンスを別のプレイスメントグループに移動するか、プレイスメントグループから削除することができます。

------
#### [ Console ]

**プレイスメントグループを削除するには**

1. Amazon EC2 コンソールの [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) を開いてください。

1. ナビゲーションペインで、[**Placement Groups**] を選択します。

1. プレイスメントグループを選択し、[**Actions (アクション)**]、[**Delete (削除)**] の順に選択します。

1. 確認を求められたら、**Delete**と入力し、[**削除**] を選択します。

------
#### [ AWS CLI ]

**プレイスメントグループを削除するには**  
[delete-placement-group](https://docs.aws.amazon.com/cli/latest/reference/ec2/delete-placement-group.html) コマンドを使用します。

```
aws ec2 delete-placement-group --group-name my-cluster
```

------
#### [ PowerShell ]

**プレイスメントグループを削除するには**  
[Remove-EC2PlacementGroup](https://docs.aws.amazon.com/powershell/latest/reference/items/Remove-EC2PlacementGroup.html) コマンドレットを使用します。

```
Remove-EC2PlacementGroup -GroupName my-cluster
```

------

# 共有プレイスメントグループ
<a name="share-placement-group"></a>

プレイスメントグループを共有すると、別々の AWS アカウントが所有し、相互に依存しているインスタンスの配置に影響を与えることができます。所有者は、プレイスメントグループを複数の AWS アカウント 間で共有したり、自分の組織内で共有したりできます。参加者は、自分のアカウントと共有されているプレイスメントグループでインスタンスを起動できます。

プレイスメントグループの所有者は、プレイスメントグループを次の人と共有できます。
+ 組織内または組織外の特定の AWS アカウント
+  組織内の組織単位
+  組織全体

VPC ピアリングを使用して別の AWS アカウントが所有するインスタンスを接続することで、共有クラスタープレイスメントグループが提供するレイテンシーの利点を最大限に活用できます。

**Topics**
+ [ルールと制限](#share-placement-group-limitations)
+ [必要なアクセス許可](#share-placement-group-permissions)
+ [アベイラビリティーゾーン間での共有](#share-placement-group-sharing-azs)
+ [プレイスメントグループの共有](#share-placement-group-share)
+ [プレイスメントグループの共有解除](#share-placement-group-unshare)

## ルールと制限
<a name="share-placement-group-limitations"></a>

プレイスメントグループを共有する場合、またはプレイスメントグループが自分と共有される場合は、次のルールと制限が適用されます。
+ プレイメントグループを共有するには、AWS アカウント内で所有している必要があります。自分に共有されているプレイスメントグループは共有できません。
+ パーティションまたはスプレッドプレイスメントグループを共有しても、プレイスメントグループの制限は変わりません。共有パーティションプレイスメントグループは、アベイラビリティーゾーンごとに最大 7 つのパーティションをサポートし、共有スプレッドプレイスメントグループは、アベイラビリティーゾーンごとに最大 7 つの実行インスタンスをサポートします。
+ ユーザーの組織や組織内の組織単位とプレイスメントグループを共有するには、AWS Organizations との共有を有効にする必要があります。詳細については、「[AWS リソースの共有](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html)」を参照してください。
+ AWS マネジメントコンソールを使用してインスタンスを起動する場合は、自分と共有されていたプレイスメントグループを選択できます。AWS CLI を使用してインスタンスを起動する場合は、名前ではなく ID で共有プレイスメントグループを指定する必要があります。プレイスメントグループの名前は、ユーザーが、共有プレイスメントグループの所有者である場合にのみ使用できます。
+ 共有プレイスメントグループで所有するインスタンスを管理する責任はお客様にあります。
+ 共有プレイスメントグループに関連付けられているが、自分が所有していないインスタンスやキャパシティ予約を表示または変更することはできません。
+ プレイスメントグループの Amazon リソースネーム (ARN) には、プレイスメントグループを所有しているアカウントの ID が含まれています。プレイスメントグループ ARN のアカウント ID 部分を使用することで、自分に共有されているプレイスメントグループの所有者を特定することができます。

## 必要なアクセス許可
<a name="share-placement-group-permissions"></a>

プレイスメントグループを共有するには、ユーザーに次のアクションのアクセス許可が必要です。
+ `ec2:PutResourcePolicy`
+ `ec2:DeleteResourcePolicy`

## アベイラビリティーゾーン間での共有
<a name="share-placement-group-sharing-azs"></a>

リソースがリージョンの複数のアベイラビリティーゾーンに分散されるようにするために、アベイラビリティーゾーンは各 アカウントの名前に個別にマッピングされます。このため、アカウントが異なると、アベイラビリティーゾーンの命名方法が異なる場合があります。例えば、`us-east-1a` アカウントのアベイラビリティーゾーン AWS の場所は、別の `us-east-1a` アカウントのアベイラビリティーゾーン AWS の場所と異なる可能性があります。

自己のアカウントを基準にして専有ホストの場所を指定するには、アベイラビリティーゾーン ID (AZ ID) を使用する必要があります。AZ ID は、すべての AWS アカウントで同じアベイラビリティーゾーンを一貫して示すための一意の識別子です。例えば、`use1-az1` は `us-east-1` リージョンのアベイラビリティーゾーン ID であり、すべての AWS アカウントで同じ場所を示します。詳細については、「[AZ ID](https://docs.aws.amazon.com/global-infrastructure/latest/regions/az-ids.html)」を参照してください。

## プレイスメントグループの共有
<a name="share-placement-group-share"></a>

プレイスメントグループを共有するには、リソース共有に追加する必要があります。リソース共有とは、AWS RAM アカウント間で自身のリソースを共有するための AWS リソースです。リソース共有では、共有対象のリソースと、共有先のコンシューマーを指定します。

AWS Organizations の組織に属しており、組織内での共有が有効化されている場合、組織内のコンシューマーに対し、共有プレイスメントグループへのアクセス権が付与されます。

プレイスメントグループが、組織外の AWS アカウントと共有されている場合、AWS アカウント所有者はリソース共有に参加するための招待状を受け取ります。招待を承諾すると、共有プレイスメントグループにアクセスできます。

プレイスメントグループは、AWS Resource Access Manager を使用して、AWS アカウント間で共有できます。詳細については、「AWS RAM ユーザーガイド」の「[Creating a resource share](https://docs.aws.amazon.com/ram/latest/userguide/working-with-sharing-create.html)」を参照してください。

## プレイスメントグループの共有解除
<a name="share-placement-group-unshare"></a>

プレイスメントグループの所有者は、共有プレイスメントグループをいつでも共有解除することができます。共有プレイスメントグループの共有を解除すると、次の変更が発生します。
+ プレイスメントグループを共有していた AWS アカウントでは、インスタンスを起動したり、容量を予約したりできなくなります。
+ 共有プレイスメントグループで実行されているインスタンスはすべて、プレイスメントグループとの関連付けが解除されますが、AWS アカウントでは引き続き実行されます。
+ 共有プレイスメントグループのキャパシティ予約はプレイスメントグループとの関連付けが解除されますが、AWS アカウントで引き続き使用できます。

詳細については、「AWS RAM ユーザーガイド」の「[Deleting a resource share](https://docs.aws.amazon.com/ram/latest/userguide/working-with-sharing-delete.html)」を参照してください。

# AWS Outposts のプレイスメントグループ
<a name="placement-groups-outpost"></a>

AWS Outposts は、AWS のインフラストラクチャ、サービス、API、ツールをお客様のオンプレミスまで拡張するフル管理されたサービスです。AWS は、AWS Outposts 管理されたインフラストラクチャへのローカルアクセスを提供することで、AWS リージョンと同じプログラミングインターフェイスを使用してオンプレミスでアプリケーションを構築して実行できるようにします。同時に、コンピューティングとストレージのローカルリソースを使用して、レイテンシーを短縮し、ローカルのデータ処理ニーズに対応します。

Outpost とはお客様のサイトにデプロイされる AWS のコンピューティングおよびストレージキャパシティーのプールです。AWS はAWS リージョンの一部としてこのキャパシティーを運営、監視、管理します。

ユーザーは、自分のアカウントで作成した Outposts にプレイスメントグループを作成できます。これにより、自分のサイトにある Outpost において、基盤となるハードウェア全体でインスタンスを分散できるようになります。通常のアベイラビリティーゾーンでプレイスメントグループを作成して使用するのと同じ方法で、Outposts でプレイスメントグループを作成して使用します。Outpost で分散戦略を使用してプレイスメントグループを作成する場合、プレイスメントグループがホストまたはラック全体でインスタンスを分散するように選択できます。ホスト全体でインスタンスを分散すると、単一ラックの Outpost で分散戦略を使用できます。

**考慮事項**
+ ラックレベルのスプレッドプレイスメントグループは、Outpost デプロイメント内のラックと同じ数のインスタンスを保持できます。
+ ホストレベルのスプレッドプレイスメントグループは、Outpost デプロイメント内のホストと同じ数のインスタンスを保持できます。

**前提条件**  
Outpost は、自分のサイトにインストールする必要があります。詳細については、*AWS Outposts ユーザーガイド*の[Outpost を作成し、Outpost 容量を注文する](https://docs.aws.amazon.com/outposts/latest/userguide/order-outpost-capacity.html)を参照してください。

**Outpost でプレイスメントグループを使用するには**

1. Outpost にサブネットを作成します。詳細については、*AWS Outposts ユーザーガイド*の[サブネットの作成](https://docs.aws.amazon.com/outposts/latest/userguide/launch-instance.html#create-subnet)を参照してください。

1. Outpost の関連付けられたリージョンでプレイスメントグループを作成します。スプレッド戦略を使用してプレイスメントグループを作成する場合は、ホストまたはラックレベルのスプレッドを選択して、Outpost の基盤となるハードウェア全体にグループがインスタンスを分散する方法を決定できます。詳細については、「[EC2 インスタンスのプレイスメントグループを作成する](create-placement-group.md)」を参照してください。

1. プレイスメントグループにインスタンスを起動します。**[Subnet]** (サブネット) には、ステップ 1 で作成したサブネットを選択し、**[Placement group name]** (プレイスメントグループ名) には、ステップ 2 で作成したプレイスメントグループを選択します。詳細については、*AWS Outposts ユーザーガイド*の、[Outposts でインスタンスを起動する](https://docs.aws.amazon.com/outposts/latest/userguide/launch-instance.html#launch-instances)を参照してください。