

# 機械学習用のキャパシティブロック
<a name="ec2-capacity-blocks"></a>

ML 用のキャパシティブロックを使用すると、短期間の機械学習ワークロードをサポートするため、GPU ベースの高速コンピューティングインスタンスを将来の日付で予約できます。キャパシティブロック内で実行されるインスタンスは、[Amazon EC2 UltraClusters](https://aws.amazon.com/ec2/ultraclusters/) 内に自動的に互いに近く配置され、低レイテンシーでペタビットスケールのノンブロッキングネットワーキングを実現します。

キャパシティブロックを使用して、Amazon EC2 UltraServers のキャパシティを予約することもできます。UltraServers は、低レイテンシー、高帯域幅のアクセラレーター相互接続内で複数の Amazon EC2 インスタンスを接続します。UltraServers を使用することにより、トレーニング、ファインチューニング、推論において、コンピューティングとメモリを大量に消費する AI/ML ワークロードを処理できます。詳細については、「[Amazon EC2 UltraServers](https://aws.amazon.com/ec2/ultraservers/)」を参照してください。

キャパシティブロックを使用すると、GPU インスタンスのキャパシティを今後いつ使用できるかを確認でき、都合のよい時間にキャパシティブロックを開始するようにスケジュールできます。キャパシティブロックを予約すると、GPU インスタンスのキャパシティを予測して確保することができます。料金は必要な時間分しか発生しません。ML ワークロードを一度に数日間または数週間サポートするために GPU が必要であり、GPU インスタンスを使用していない間は予約の料金を支払いたくないという場合は、キャパシティブロックをお勧めします。

キャパシティブロックの一般的なユースケースは以下のとおりです。
+ **機械学習モデルトレーニングとファインチューニング** — 機械学習モデルトレーニングとファインチューニングを完了するために予約した GPU インスタンスに、中断なしにアクセスできます。
+ **ML 実験とプロトタイプ** — GPU インスタンスを必要とする実験の実行およびプロトタイプの構築を短期間で行えます。

キャパシティブロックは、一部の AWS リージョンで特定のインスタンスタイプで使用できます。詳細については、「[サポートされているインスタンスタイプとリージョン](#capacity-blocks-prerequisites)」を参照してください。

キャパシティブロックは、最大 8 週間先を開始時刻に設定して予約することができます。各キャパシティブロックには最大 64 件、キャパシティブロック全体では最大 256 件のインスタンスを含めることが可能です。

**Topics**
+ [サポートされているインスタンスタイプとリージョン](#capacity-blocks-prerequisites)
+ [サポートされているプラットフォーム](#capacity-blocks-platforms)
+ [考慮事項](#capacity-blocks-considerations)
+ [関連リソース](#capacity-blocks-related-resources)
+ [Amazon EC2 キャパシティブロックの仕組み](capacity-blocks-how.md)
+ [キャパシティブロックの料金と請求](capacity-blocks-pricing-billing.md)
+ [キャパシティブロックを見つけて購入する](capacity-blocks-purchase.md)
+ [キャパシティブロックを使用してインスタンスを起動する](capacity-blocks-launch.md)
+ [キャパシティブロックを表示する](capacity-blocks-view.md)
+ [キャパシティブロックを拡張](capacity-blocks-extend.md)
+ [キャパシティブロックを共有する](capacity-blocks-share.md)
+ [UltraServer キャパシティブロックのリソースグループを作成する](cb-group.md)
+ [EventBridge を使用してキャパシティブロックをモニタリングする](capacity-blocks-monitor.md)
+ [AWS CloudTrail を使用したキャパシティブロック API コールのロギング](capacity-blocks-logging-using-cloudtrail.md)

## サポートされているインスタンスタイプとリージョン
<a name="capacity-blocks-prerequisites"></a>

インスタンスおよび UltraServer キャパシティブロックは、次のインスタンスタイプと AWS リージョンで使用できます。

**注記**  
64 インスタンスのキャパシティブロックサイズは、すべての AWS リージョン のすべてのインスタンスタイプでサポートされているわけではありません。

### インスタンスキャパシティブロック
<a name="capacity-blocks-instance-prerequisites"></a>
+ **`p6-b300.48xlarge`**
  + 米国西部 (オレゴン) - `us-west-2`
+ **`p6-b200.48xlarge`**
  + 米国東部 (バージニア北部) - `us-east-1`
  + 米国東部 (オハイオ) — `us-east-2`
  + 米国西部 (オレゴン) - `us-west-2`
+ **`p5.4xlarge`**
  + 米国東部 (バージニア北部) - `us-east-1`
  + 米国東部 (オハイオ) — `us-east-2`
  + 米国西部 (オレゴン) - `us-west-2`
  + 欧州 (ロンドン) — `eu-west-2`
  + アジアパシフィック (ムンバイ) – `ap-south-1`
  + アジアパシフィック (東京) — `ap-northeast-1`
  + アジアパシフィック (シドニー) — `ap-southeast-2`
  + 南米 (サンパウロ) – `sa-east-1`
+ **`p5.48xlarge`**
  + 米国東部 (バージニア北部) - `us-east-1`
  + 米国東部 (オハイオ) — `us-east-2`
  + 米国西部 (北カリフォルニア) — `us-west-1`
  + 米国西部 (オレゴン) - `us-west-2`
  + 欧州 (ストックホルム) — `eu-north-1`
  + 欧州 (ロンドン) — `eu-west-2`
  + 南米 (サンパウロ) – `sa-east-1`
  + アジアパシフィック (東京) — `ap-northeast-1`
  + アジアパシフィック (ムンバイ) – `ap-south-1`
  + アジアパシフィック (シドニー) — `ap-southeast-2`
  + アジアパシフィック (ジャカルタ) — `ap-southeast-3`
  + 米国東部 (アトランタ) ローカルゾーン — `us-east-1-atl-2a`
+ **`p5e.48xlarge`**
  + 米国東部 (バージニア北部) - `us-east-1`
  + 米国東部 (オハイオ) — `us-east-2`
  + 米国西部 (北カリフォルニア) — `us-west-1`
  + 米国西部 (オレゴン) - `us-west-2`
  + 欧州 (ストックホルム) — `eu-north-1`
  + 欧州 (ロンドン) — `eu-west-2`
  + 欧州 (スペイン) — `eu-south-2`
  + 南米 (サンパウロ) – `sa-east-1`
  + アジアパシフィック (東京) — `ap-northeast-1`
  + アジアパシフィック (ソウル) – `ap-northeast-2`
  + アジアパシフィック (ムンバイ) – `ap-south-1`
  + アジアパシフィック (ジャカルタ) — `ap-southeast-3`
  + 米国西部 (フェニックス) ローカルゾーン — `us-west-2-phx-2a`
+ **`p4d.24xlarge`**
  + 米国東部 (バージニア北部) - `us-east-1`
  + 米国東部 (オハイオ) — `us-east-2`
  + 米国西部 (オレゴン) - `us-west-2`
+ **`p4de.24xlarge`**
  + 米国東部 (バージニア北部) - `us-east-1`
  + 米国西部 (オレゴン) - `us-west-2`
+ **`trn1.32xlarge`**
  + 米国東部 (バージニア北部) - `us-east-1`
  + 米国東部 (オハイオ) — `us-east-2`
  + 米国西部 (北カリフォルニア) — `us-west-1`
  + 米国西部 (オレゴン) - `us-west-2`
  + 欧州 (ストックホルム) — `eu-north-1`
  + アジアパシフィック (ムンバイ) – `ap-south-1`
  + アジアパシフィック (シドニー) — `ap-southeast-2`
  + アジアパシフィック (メルボルン) — `ap-southeast-4`
+ **`trn2.3xlarge `**
  + アジアパシフィック (メルボルン) — `ap-southeast-4`
  + 南米 (サンパウロ) – `sa-east-1`
+ **`trn2.48xlarge`**
  + 米国東部 (オハイオ) — `us-east-2`

### UltraServer キャパシティブロック
<a name="capacity-blocks-ultraserver-prerequisites"></a>
+ **`Trn2`**
  + 米国東部 (オハイオ) — `us-east-2`
+ **`P6e-GB200`**
  + 米国東部 (ダラス) ローカルゾーン — `us-east-1-dfw-2a`

## サポートされているプラットフォーム
<a name="capacity-blocks-platforms"></a>

ML 用のキャパシティブロックは、現在、デフォルトテナンシーのインスタンスおよび UltraServer のみをサポートしています。AWS マネジメントコンソール を使用してキャパシティブロックを購入する場合、デフォルトのプラットフォームは Linux/UNIX です。AWS Command Line Interface AWS CLIまたは AWS SDK を使用してキャパシティブロックを購入する場合、以下のプラットフォームオプションを使用できます。
+ Linux/UNIX
+ Red Hat Enterprise Linux
+ RHEL with HA
+ SUSE Linux
+ Ubuntu Pro

## 考慮事項
<a name="capacity-blocks-considerations"></a>

キャパシティブロックを使用するときは、事前に以下の詳細と制限を念頭におきます。
+ UltraServer キャパシティブロックに影響を与える障害が検出された場合、ユーザーに通知されますが、通常はキャパシティブロックのインスタンスを終了するアクションが実行されません。ワークロードへの意図しない中断を最小限に抑えるためです。この通知を受け取った後に UltraServer キャパシティブロックを現状のままで引き続き使用するか、UltraServer キャパシティブロックのインスタンスをすべて終了し、AWS サポートケースを送信することで修復をリクエストできます。サポートケースを受け取ったら、修復が完了した際にユーザーが通知されます。インスタンスを UltraServer キャパシティブロックに再起動できます。
+ `P6e-GB200` UltraServer キャパシティブロックの場合、キャパシティブロックの終了時刻の 60 分以上前にインスタンスを終了する必要があります。
+  ローカルゾーン内のキャパシティブロックを購入して使用するには、ローカルゾーンにオプトインされている必要があります。
+ 各キャパシティブロックには最大 64 件、キャパシティブロック全体では最大 256 件のインスタンスを含めることが可能です。
+ 早くて 30 分で開始できるキャパシティブロックサービスを記述できます。
+ キャパシティブロックは、協定世界時 (UTC) の午前 11 時 30 分に終了します。
+ キャパシティブロック内で実行しているインスタンスの終了プロセスは、予約の最終日の協定世界時 (UTC) 午前 11 時に始まります。
+ キャパシティブロックの開始時刻は最大 8 週間先を予約できます。
+ キャパシティブロックはキャンセルはできません。
+ UltraServer キャパシティブロックは AWS アカウント間や AWS 組織内で共有することはできません。
+ キャパシティブロックを[移動](capacity-reservations-move.md)または[分割](capacity-reservations-split.md)することはできません。
+ リソースグループで使用できるのは UltraServer キャパシティブロックのみです。インスタンスキャパシティブロックはリソースグループでは使用できません。詳細については、「[UltraServer キャパシティブロックのリソースグループを作成する](cb-group.md)」を参照してください。
+ AWS 組織内の全アカウントでキャパシティブロックに予約できるインスタンスの合計数は、特定の日に 256 インスタンスを超えることはできません。
+ キャパシティブロックを使用するには、インスタンスが予約 ID を明確にターゲットにしている必要があります。
+ キャパシティブロック内のインスタンスは、オンデマンドインスタンスの制限にはカウントされません。
+ カスタム AMI を使用する P5 インスタンスの場合は、[EFA に必要なソフトウェアと設定があることを確認してください](gpu-instances-started.md)。
+ Amazon EKS 管理された型ノードグループについては、「[Create a managed node group with Amazon EC2 Capacity Blocks for ML](https://docs.aws.amazon.com/eks/latest/userguide/capacity-blocks-mng.html)」を参照してください。Amazon EKS セルフ管理された型ノードグループについては、「[セルフ管理された型ノードで機械学習用のキャパシティブロックを使用する](https://docs.aws.amazon.com/eks/latest/userguide/capacity-blocks.html)」を参照してください。

## 関連リソース
<a name="capacity-blocks-related-resources"></a>

キャパシティブロックを作成したら、キャパシティブロックを使用して次の操作を実行できます。
+ インスタンスをキャパシティブロックで起動します。詳細については、「[キャパシティブロックを使用してインスタンスを起動する](capacity-blocks-launch.md)」を参照してください。
+ Amazon EC2 Auto Scaling グループを作成します。詳細については、「[Amazon EC2 Auto Scaling ユーザーガイド](https://docs.aws.amazon.com/autoscaling/ec2/userguide/launch-template-capacity-blocks.html)」の「*Use Capacity Blocks for machine learning workloads*」を参照してください。
**注記**  
Amazon EC2 Auto Scaling または Amazon EKS を使用する場合は、キャパシティブロック予約の開始時にスケーリングを実行するようにスケジュールできます。スケジュールされたスケーリングでは、AWS が再試行を自動的に処理するため、一時的な障害を処理するための再試行ロジックの実装について心配する必要はありません。
+  AWS Parallel Computing Service を使用して機械学習ワークフローを強化します。詳細については、「[Capacity Blocks support for AWS Parallel Computing Service](https://aws.amazon.com/blogs/hpc/announcing-capacity-blocks-support-for-aws-parallel-computing-service/)」を参照してください。
+ AWS ParallelCluster で ML ワークフローを強化します。詳細については、「[Enhancing ML workflows with AWS ParallelCluster and Amazon EC2 Capacity Blocks for ML](https://aws.amazon.com/blogs/hpc/enhancing-ml-workflows-with-aws-parallelcluster-and-amazon-ec2-capacity-blocks-for-ml/)」を参照してください。

 AWS Parallel Computing Service の詳細については、「[AWS Parallel Computing Service とは](https://docs.aws.amazon.com/pcs/latest/userguide/what-is-service.html)」を参照してください。

 AWS ParallelClusterの詳細については、[とはAWS ParallelCluster](https://docs.aws.amazon.com/parallelcluster/latest/ug/what-is-aws-parallelcluster.html)を参照してください。

# Amazon EC2 キャパシティブロックの仕組み
<a name="capacity-blocks-how"></a>

キャパシティブロックは次の仕様で予約できます。
+ 最大 8 週間先の開始時刻を予約する
+ 予約期間を 1 ～ 14 日または最大 182 日の 7 の倍数の日数 (例: 21 日、28 日) に設定する
+ キャパシティブロックごとに最大 64 個のインスタンスを設定する
+ 複数のキャパシティブロック全体で最大 256 個のインスタンスを設定する

Amazon EC2 UltraServers では、各 UltraServer は 1 つのキャパシティブロックに対応します。1 つのリクエストで複数の UltraServer をリクエストできます。

 キャパシティブロックを使用して、`p6-b200`、`p5`、`p5e`、`p5en`、`p4d`、`p4de`、`trn1`、`trn2` の各インスタンスを予約することができます。キャパシティブロックを使用して、`P6e-GB200` および `Trn2` (プレビュー) の UltraServer タイプを購入できます。

キャパシティブロックを予約するには、インスタンスタイプまたは UltraServer タイプ、必要なインスタンスまたは UltraServer 数、日数、最も早い開始日、最も遅い終了日など、必要なキャパシティを最初に指定します。そうすると、その要件を満たす、利用可能なキャパシティブロックのサービスを確認できます。キャパシティブロックのサービスには、開始時刻、アベイラビリティーゾーン、予約料金などの詳細が記されています。キャパシティブロックサービスの料金は、サービスが提供される時点の需要と供給の状況によって異なります。キャパシティブロックの予約後に料金が変わることはありません。詳細については、「[キャパシティブロックの料金と請求](capacity-blocks-pricing-billing.md)」を参照してください。

キャパシティブロックのサービスを購入すると、選択した日付とインスタンス数で予約が作成されます。キャパシティブロックの予約が開始されたら、起動リクエストで予約 ID を指定すると、インスタンスの起動をターゲットに設定できます。

予約したすべてのインスタンスを使用できるのは、キャパシティブロックの終了時刻の 30 分前 (インスタンスタイプの場合) または 60 分前 (UltraServer タイプの場合) までです。キャパシティブロックの予約が残り 30 分 (インスタンスタイプの場合) または 60 分 (UltraServer タイプの場合) になると、キャパシティブロックで実行中のすべてのインスタンスの終了プロセスが開始されます。この時間を使ってインスタンスをクリーンアップしてから、キャパシティブロックを次の利用者に渡します。当社は、終了プロセスが始まる 10 分前に EventBridge を通じてイベントを送信します。詳細については、「[EventBridge を使用してキャパシティブロックをモニタリングする](capacity-blocks-monitor.md)」を参照してください。

# キャパシティブロックの料金と請求
<a name="capacity-blocks-pricing-billing"></a>

Amazon EC2 Capacity Blocks for ML では、料金は予約した分のみ発生します。キャパシティブロックの料金は、購入時のキャパシティブロックの需要と供給の状況に応じて異なります。キャパシティブロックサービスの料金は、予約前に確認できます。キャパシティブロックの料金は、予約時に前払いで請求されます。特定の日付範囲でキャパシティブロックを検索すると、利用可能なキャパシティブロックの中で最も安価なものが表示されます。キャパシティブロックの予約後に料金が変わることはありません。

キャパシティブロックを使用する場合、インスタンスの実行時に使用した、オペレーティングシステムの料金が請求されます。オペレーティングシステムの料金の詳細については、「[Amazon EC2 Capacity Blocks for ML Pricing](https://aws.amazon.com/ec2/capacityblocks/pricing/)」を参照してください。

## 請求
<a name="capacity-blocks-billing"></a>

キャパシティブロックサービスの料金は前払い制です。キャパシティブロックを購入した後、5 分から 12 時間以内にご利用の AWS アカウントに支払いが処理されます。支払いの処理中は、キャパシティブロックの予約リソースは `payment-pending` の状態となります。支払いがブロック開始時刻の少なくとも 5 分前、あるいは 12 時間以内 (いずれか早い方) に処理できない場合、キャパシティブロックは解放されて予約状態が `payment-failed` に変更されます。

料金の処理に成功すると、キャパシティブロックのリソース状態は `payment-pending` から `scheduled` に変わります。1 回限りの前払い料金が反映された請求書がお手元に届きます。請求書では、支払い金額をキャパシティブロックの予約 ID に関連付けることが可能です。

キャパシティブロックの予約が開始されると、その予約でインスタンスが実行されている間に使用した、オペレーティングシステムのみに基づいて料金が請求されます。ご自身の使用量および関連の料金は、AWS Cost and Usage Report で、使用した月の請求書で確認できます。

**注記**  
Savings Plans とリザーブドインスタンス割引はキャパシティブロックには適用されません。

**請求を表示する**  
請求書は AWS Billing and Cost Management コンソールで確認できます。キャパシティブロックの前払い料金は、予約の購入月に表示されます。

予約の開始後は、請求書にはブロック予約の使用時間と未使用の時間とが別々の行に表示されます。これらの行項目を使って、予約にどの程度の時間を使用したかを確認できます。プレミアムオペレーティングシステムを使用している場合は、使用時間の行には使用料金のみが表示されます。詳細については、「[キャパシティブロックの料金と請求](#capacity-blocks-pricing-billing)」を参照してください。未使用の時間には、追加料金は発生しません。

詳細については*AWS Billing and Cost Management ユーザーガイド*の[請求書の表示](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/getting-viewing-bill.html)を参照してください。

キャパシティブロックの開始日が予約の購入月とは異なる場合、前払い料金と予約の使用量は、異なる請求月で表示されます。ではAWS Cost and Usage Report、キャパシティブロックの予約 ID は前払い料金の **Reservation/ReservationARN** の行項目と、毎月の請求書の **LineItem/ResourceID** に記載されます。したがって、使用量を対応する前払い価格に関連付けることができます。

# キャパシティブロックを見つけて購入する
<a name="capacity-blocks-purchase"></a>

キャパシティブロックを予約するには、まず、自分のニーズを満たすキャパシティを、利用できる時間帯を見つける必要があります。予約できるキャパシティブロックを見つけるには、以下を指定します。
+ 必要なインスタンス数
+ インスタンスを必要とする期間
+ 予約が必要な日数の範囲

利用可能なキャパシティブロックサービスを見つけるには、予約期間とインスタンス数を指定します。予約期間は、**1 日単位で最大 14 日間まで、7 日単位で最大 182 日間まで**指定する必要があります。各キャパシティブロックには最大 64 件、キャパシティブロック全体では最大 256 件のインスタンスを含めることが可能です。

仕様に一致するキャパシティブロックをリクエストすると、最大 6 つの利用可能なブロックの詳細が提供されます。すべてのキャパシティブロックは UTC の午前 11 時 30 分に終了するため、同じ日に開始されるブロックには目的の期間に最も近い期間が含まれます。あるブロックには目的の期間より多少短い期間を含む一方、もう 1 つのブロックは目的の期間より多少長い期間を含みます。

サービスの詳細には、予約の開始時刻、予約のアベイラビリティーゾーン、予約の料金が記されています。詳細については、「[キャパシティブロックの料金と請求](capacity-blocks-pricing-billing.md)」を参照してください。

表示されているキャパシティブロックを購入することもできますし、検索条件を変えて利用可能な他のサービスを探すこともできます。サービスの有効期限は事前に設定されていませんが、サービスの利用は申し込み順となります。

キャパシティブロックのサービスを購入すると、キャパシティブロックが予約されたことを確認する返信がすぐに届きます。その後、アカウントに新しいキャパシティ予約が、予約タイプ `capacity-block` と `start-date` が、購入したサービスの開始時刻に設定されて、表示されます。キャパシティブロックに予約は、`payment-pending` の状態で作成されます。前払い料金の処理が完了すると、予約状態は `scheduled` に変更されます。詳細については、「[請求](capacity-blocks-pricing-billing.md#capacity-blocks-billing)」を参照してください。

**注記**  
 ローカルゾーン内のキャパシティブロックを購入して使用するには、ローカルゾーンにオプトインされている必要があります。

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

**キャパシティブロックを見つけ、購入するには**

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

1. 画面上部のナビゲーションバーで、AWS リージョンを選択してください。64 インスタンスのキャパシティブロックサイズは、すべてのリージョンのすべてのインスタンスタイプでサポートされているわけではないため、この選択は重要です。

1. ナビゲーションペインで **[キャパシティ予約]**、**[キャパシティブロックの作成]** を選択します。

1. **[キャパシティブロックタイプ]** で、**[インスタンス]** または **[UltraServers]** を選択します。

1. **[キャパシティの属性]** ではキャパシティブロックの検索パラメータを定義できます。デフォルトでは、プラットフォームは Linux です。別のオペレーティングシステムを選択する場合は、AWS CLI を使用します。詳細については、「[サポートされているプラットフォーム](ec2-capacity-blocks.md#capacity-blocks-platforms)」を参照してください。

1. **[合計キャパシティ]** (インスタンスの場合) または **[UltraServer 数]** (UltraServers の場合) で、予約するインスタンスまたは UltraServer の数を指定します。

1. **[期間]** に予約が必要な日数を入力してください。

1. **[キャパシティブロックを検索する日付範囲]** で、予約の開始を希望する最も早い日付を入力してください。

1. **[キャパシティブロックを検索]** を選択してください。

1. 要件を満たすキャパシティブロックがある場合、**[おすすめのキャパシティブロック]** にそのサービスが表示されます。要件を満たすキャパシティブロックが複数ある場合、最も早く利用できるサービスが表示されます。他のキャパシティブロックサービスを表示するときは、検索条件を変更し、再度 **[キャパシティブロックを検索]** を選択してください。

1. 購入したいキャパシティブロックサービスが見つかったら、**[次へ]** を選択してください。

1. (オプション) **[タグを追加]** ページで、**[新しいタグを追加]** を選択してください。

1. **[確認と購入]** ページに、開始日と終了日、期間、インスタンスの合計数、料金が表示されます。
**注記**  
予約後は、キャパシティブロックをキャンセルできません。

1. ポップアップウィンドウの **[キャパシティブロックを購入]** で [確認] を選択し、**[購入]** を選択してください。

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

**インスタンスキャパシティブロックを検索する方法**  
「[describe-capacity-block-extension-offerings](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-capacity-block-offerings.html)」コマンドを使用します。

次の例では、インスタンスキャパシティブロックを見つけます。

```
aws ec2 describe-capacity-block-offerings \
--instance-type p5.48xlarge \
--instance-count 16 \
--start-date-range 2023-08-14T00:00:00Z \
--end-date-range 2023-10-22-T00:00:00Z \
--capacity-duration-hours 48 \
--all-availability-zones
```

次の例では、UltraServer キャパシティブロックを見つけます。

```
aws ec2 describe-capacity-block-offerings \
--ultraserver-type u-p6e-gb200x72 \
--ultraserver-count 1 \
--start-date-range 2023-08-14T00:00:00Z \
--end-date-range 2023-10-22-T00:00:00Z \
--capacity-duration-hours 48
```

**キャパシティブロックを購入するには**  
「[purchase-capacity-block](https://docs.aws.amazon.com/cli/latest/reference/ec2/purchase-capacity-block.html)」コマンドを前の例の出力によるキャパシティブロックで提供される ID と一緒に使用します。

```
aws ec2 purchase-capacity-block \
--capacity-block-offering-id cb-0123456789abcdefg \
--instance-platform Linux/UNIX
```

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

**キャパシティブロックを見つける方法**  
[Get-EC2CapacityBlockOffering](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2CapacityBlockOffering.html) コマンドレットを使用します。

次の例では、インスタンスキャパシティブロックを見つけます。

```
Get-EC2CapacityBlockOffering `
-InstanceType p5.48xlarge `
-InstanceCount 16 `
-CapacityDurationHour 48 `
-StartDateRange 2023-08-14T00:00:00Z `
-EndDateRange 2023-10-22-T00:00:00Z `
-AllAvailabilityZones $true
```

次の例では、UltraServer キャパシティブロックを見つけます。

```
Get-EC2CapacityBlockOffering `
-UltraserverType u-p6e-gb200x72 `
-UltraserverCount  1 `
-CapacityDurationHour 48 `   
-StartDateRange 2023-08-14T00:00:00Z `
-EndDateRange 2023-10-22-T00:00:00Z
```

**キャパシティブロックを購入するには**  
[New-EC2EC2CapacityBlock](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2EC2CapacityBlock.html) コマンドレットを前の例の出力からのキャパシティブロックの提供 ID と共に使用します。

```
New-EC2EC2CapacityBlock `
-CapacityBlockOfferingId cb-0123456789abcdefg `
-InstancePlatform Linux/UNIX
```

------

# キャパシティブロックを使用してインスタンスを起動する
<a name="capacity-blocks-launch"></a>

キャパシティブロックを使用するには、インスタンスの起動時にキャパシティブロックの予約 ID を指定する必要があります。キャパシティブロックでインスタンスを起動すると、起動したインスタンスの数だけ、使用できるキャパシティの数が減ります。例えば、購入したインスタンスのキャパシティが 8 インスタンスで、4 つのインスタンスを起動した場合、使用できるキャパシティは 4 つ減ります。

予約が終了する前にキャパシティブロックで実行中のインスタンスを終了すると、新しいインスタンスを代わりに起動することができます。キャパシティブロック内のインスタンスを停止または終了すると、インスタンスのクリーンアップに数分かかります。置き換える別のインスタンスを起動できるのは、その後です。この間、インスタンスは停止または `shutting-down` 状態になります。このプロセスが完了すると、インスタンスの状態が `stopped` か `terminated` に変わります。その後、キャパシティブロックの利用可能な容量が更新され、使用できる別のインスタンスが表示されます。

**要件**
+ キャパシティブロックがあるアベイラビリティーゾーンとは異なるアベイラビリティーゾーンのサブネットでインスタンスを起動することはできません。
+ インスタンスは、キャパシティブロックのプラットフォームとは異なるプラットフォームの AMI を使用して起動することはできません。
+  ローカルゾーン内のキャパシティブロックを使用するには、ローカルゾーンにオプトインされている必要があります。

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

**キャパシティブロックでインスタンスを起動するには**

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

1. 画面上部のナビゲーションバーで、キャパシティブロックの予約の [リージョン] を選択してください。

1. Amazon EC2 コンソールダッシュボードで、[**インスタンスを起動**] を選択してください。

1. [インスタンスを起動する](ec2-launch-instance-wizard.md)ための手順に従います。

1. **[高度な詳細]** を展開し、**[購入オプション]** で **[キャパシティブロック]** を選択します。次に、以下のいずれかを行ってください。
   + 特定のキャパシティブロックでインスタンスを起動するには、[**キャパシティ予約**] で [**キャパシティ予約を指定**] を選択し、キャパシティブロックを選択します。
   + （*UltraServers のみ*) UltraServer キャパシティブロックリソースグループでインスタンスを起動するには、[**キャパシティ予約**] で [**キャパシティ予約リソースグループを指定**] を選択し、次にリソースグループを選択します。

1. **[インスタンスを起動]** を選択してください。

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

**キャパシティブロックを使用してインスタンスを起動するには**  
`instance-market-options MarketType` オプションで [run-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/run-instances.html) コマンドを使用します。

次の例では、インスタンスを特定のキャパシティブロックで起動します。

```
aws ec2 run-instances \
--image-id ami-0abcdef1234567890 \
--count 1 \
--instance-type p5.48xlarge \
--key-name my-key-pair \
--subnet-id subnet-0abcdef1234567890 \
--instance-market-options MarketType='capacity-block' \
--capacity-reservation-specification CapacityReservationTarget={CapacityReservationId=capacity_block_id}
```

次の例では、インスタンスを UltraServer のキャパシティブロックリソースグループに起動します。

```
aws ec2 run-instances \
--image-id ami-0abcdef1234567890 \
--count 1 \
--instance-type p6e-gb200.36xlarge \
--key-name my-key-pair \
--subnet-id subnet-0abcdef1234567890 \
--instance-market-options MarketType='capacity-block' \
--capacity-reservation-specification CapacityReservationTarget={CapacityReservationResourceGroupArn=resource_group_arn}
```

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

**キャパシティブロックでインスタンスを起動するには**  
次に定義されているように、`-InstanceMarketOption` オプションで [New-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2Instance.html) コマンドレットを使用します。

```
$marketoption = New-Object Amazon.EC2.Model.InstanceMarketOptionsRequest
$marketoption.MarketType = "capacity-block"
```

次の例では、インスタンスを特定のキャパシティ予約のみで起動します。

```
New-EC2Instance `
-ImageId ami-0abcdef1234567890 `
-InstanceType p5.48xlarge `
-KeyName "my-key-pair" `
-SubnetId subnet-0abcdef1234567890 `
-InstanceMarketOptions $marketoption `
-CapacityReservationTarget_CapacityReservationId capacity_block_id
```

次の例では、インスタンスを UltraServer のキャパシティブロックリソースグループで起動します。

```
New-EC2Instance `
-ImageId ami-0abcdef1234567890 `
-InstanceType p6e-gb200.36xlarge `
-KeyName "my-key-pair" `
-SubnetId subnet-0abcdef1234567890 `
-InstanceMarketOptions $marketoption `
-CapacityReservationTarget_CapacityReservationResourceGroupArn "resource_group_arn"
```

------

**関連リソース**
+ キャパシティブロックをターゲットとする起動テンプレートを作成するには、「[Amazon EC2 起動テンプレートにインスタンス起動パラメータを保存する](ec2-launch-templates.md)」を参照してください。
+ EC2 フリートを使用してキャパシティブロックでインスタンスを起動するには、「[チュートリアル: キャパシティブロックにインスタンスを起動するように EC2 フリートを設定する](ec2-fleet-launch-instances-capacity-blocks-walkthrough.md)」を参照してください。
+ キャパシティブロックを使用して EKS マネージド型ノードグループを設定するには、「**Amazon EKS ユーザーガイド**」の「[Capacity Blocks for ML を使用してマネージドノードグループを作成する](https://docs.aws.amazon.com/eks/latest/userguide/capacity-blocks-mng.html)」を参照してください。
+ キャパシティブロックを使用して AWS ParallelCluster を設定するには、「[ML on AWS ParallelCluster](https://catalog.workshops.aws/ml-on-aws-parallelcluster/en-US)」を参照してください。

# キャパシティブロックを表示する
<a name="capacity-blocks-view"></a>

キャパシティブロックを予約すると、AWS アカウントにキャパシティブロックの予約が表示されます。`start-date` と `end-date` を見ると、予約の開始日と終了日を確認できます。キャパシティブロック予約が始まるまで、利用可能なキャパシティは 0 と表示されます。キャパシティブロックで利用できるインスタンスの数は、タグキー `aws:ec2capacityreservation:incrementalRequestedQuantity` のタグ値を見ると確認できます。

キャパシティブロックの予約が始まると、予約状態は `scheduled` から `active` に変わります。Amazon EventBridge を通じて、キャパシティブロックが使用可能になったことを知らせるイベントが発行されます。詳細については、「[EventBridge を使用してキャパシティブロックをモニタリングする](capacity-blocks-monitor.md)」を参照してください。

キャパシティブロックには、以下のような状態があります。
+ `payment-pending` — 前払い料金の処理が完了していない。
+ `payment-failed` — 前払い料金の処理が 12 時間以内に完了しなかった。キャパシティブロックが解除された。
+ `scheduled` — 料金の処理は完了したが、キャパシティブロックの予約はまだ始まっていない。
+ `active` - リザーブドキャパシティを使用できる。
+ `expired` — キャパシティブロックの予約の有効期限が予約リクエストで指定された日時に自動的に切れた。リザーブドキャパシティーも使用できなくなります。

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

**キャパシティブロックを表示するには**

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

1. ナビゲーションペインで、[**キャパシティ予約**] を選択してください。

1. **[キャパシティ予約の概要]** ページに、すべてのキャパシティ予約リソースの詳細が記載されたリソーステーブルが表示されます。キャパシティブロック予約を検索するには、**[キャパシティ予約 ID]** の上にあるドロップダウンリストから**[キャパシティブロック]** を選択してください。表には、開始日、終了日、期間、状態など、キャパシティブロックに関する情報が表示されています。

1. キャパシティブロックの詳細は、表示するキャパシティブロックの予約 ID を選択すると、表示されます。**[キャパシティ予約の詳細]** ページには、予約のすべてのプロパティと、キャパシティブロックで使用中かつ使用可能なインスタンスの数が表示されています。
**注記**  
キャパシティブロック予約が始まるまで、利用可能なキャパシティは 0 と表示されます。キャパシティブロックが開始されたときに利用できるインスタンスの数は、タグキー `aws:ec2capacityreservation:incrementalRequestedQuantity` の以下のタグ値を使用して確認できます。

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

**キャパシティブロックを表示するには**  
デフォルトでは、[describe-capacity-reservations](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-capacity-reservations.html) コマンドを使用すると、オンデマンドキャパシティ予約とキャパシティブロック予約の両方が一覧表示されます。キャパシティブロック予約のみを表示するには、タイプ `capacity-block` の予約をフィルタリングします。

```
aws ec2 describe-capacity-reservations \
    --filters Name=reservation-type,Values=capacity-block
```

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

**キャパシティブロックを表示するには**  
[Get-EC2CapacityReservation](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2CapacityReservation.html) コマンドレットを使用します。デフォルトでは、オンデマンドキャパシティ予約とキャパシティブロック予約の両方が一覧表示されます。キャパシティブロック予約のみを表示するには、タイプ `capacity-block` の予約をフィルタリングします。

```
Get-EC2CapacityReservation `
    -Filter @{Name="reservation-type"; Values="capacity-block"}
```

------

# キャパシティブロックを拡張
<a name="capacity-blocks-extend"></a>

キャパシティブロックを使用するとワークロードのコンピューティングキャパシティを予約し、可用性と一貫性を確保できます。変化するニーズに対応するには、必要に応じて既存のキャパシティブロックの期間を延長できます。

キャパシティブロックを拡張するには、ステータスが `active` または `scheduled` であり、拡張機能が `payment-pending` でない必要があります。キャパシティブロックの期間は、期限が切れるまでの、1 時間以上 56 日以内で、延長するようにリクエストできます。キャパシティブロックは 1 日単位で合計最大 14 日間、7 日単位で合計最大 182 日間 (26 週間) まで延長できます。キャパシティブロックを拡張すると終了日が更新され、インスタンスが中断することなく継続的に実行できるようになります。
+ キャパシティブロックに適用できる拡張機能の数に制限はありません
+ キャパシティ予約 ID は、ブロックを拡張した後も変わりません。
+ キャパシティブロックは、サポートするために十分なキャパシティがある場合に限って拡張できます。ただし、キャパシティは保証されません。

## 請求
<a name="capacity-blocks-extend-billing"></a>

キャパシティブロックサービスの料金は前払い制です。請求書が支払われるまで、延長機能は `payment-pending` に残ります。支払いが 12 時間以内、あるいはキャパシティブロックの終了がスケジュールされる最大 35 分前 (いずれか早い方) に処理できない場合、拡張機能は正常に処理されず、ステータスは `payment-failed` に変更されます。キャパシティブロックの予約は `active` のままになり、元の終了日に終了します。

支払いが正常に処理されると、キャパシティブロックの拡張機能ステータスが `payment-succeeded` に変更され、キャパシティブロック予約の終了日が新しい終了日に更新されます。拡張機能の詳細はコンソールの **キャパシティブロック拡張機能の詳細** セクションで表示するか、[DescribeCapacityBlockExtensionHistory](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-capacity-block-extension-history.html) コマンドを使用して表示することもできます。

## キャパシティブロックを拡張
<a name="capacity-blocks-extend-procedure"></a>

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

**キャパシティブロックを延長するには**

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

1. ナビゲーションペインで、[**キャパシティ予約**] を選択してください。

1. **[キャパシティ予約の概要]** ページには、すべてのキャパシティ予約リソースの詳細が記載されたリソーステーブルが表示されます。拡張するキャパシティブロックの予約 ID を選択してください。

1. **[アクション]** ドロップダウンメニューで **[キャパシティブロックを拡張]** を選択してください。

1. **[期間]** で予約を延長する必要な日数を入力してください。

1. **[キャパシティブロックを検索]** を選択してください。

1. 要件を満たすキャパシティブロックがある場合、**[おすすめのキャパシティブロック]** にサービスが表示されます。他のキャパシティブロックサービスを表示するときは、検索条件を変更し、再度 **[キャパシティブロックを検索]** を選択してください。

1. 購入するキャパシティブロックのサービスが見つかったとき、**[延長]** を選択してください。

1. ポップアップウィンドウの **[キャパシティブロックの拡張]** に*確認*と入力したら、**[拡張]** を選択してください。

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

**キャパシティブロック延長を見つけるには**  
[describe-capacity-block-extension-offerings](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-capacity-block-extension-offerings.html) コマンドを使用します。次の例では、指定した予約の 48 時間のキャパシティブロック延長を検索します。

```
aws ec2 describe-capacity-block-extension-offerings \
    --capacity-reservation-id cr-1234567890abcdefg \
    --capacity-block-extension-duration-hours 48
```

**キャパシティブロックを延長するには**  
[purchase-capacity-block-extension](https://docs.aws.amazon.com/cli/latest/reference/ec2/purchase-capacity-block-extension.html) コマンドを使用します。前の例の出力からの延長提供 ID を指定します。

```
aws ec2 purchase-capacity-block-extension \
    --capacity-block-extension-offering-id cbe-0123456789abcdefg \
    --capacity-reservation-id cr-1234567890abcdefg
```

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

**キャパシティブロック延長を見つけるには**  
[Get-EC2CapacityBlockExtensionOffering](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2CapacityBlockExtensionOffering.html) コマンドレットを使用します。次の例では、指定した予約の 48 時間のキャパシティブロック延長を検索します。

```
Get-EC2CapacityBlockExtensionOffering `
    -CapacityReservationId cr-1234567890abcdefg `
    -CapacityBlockExtensionDurationHour 48
```

**キャパシティブロックを延長するには**  
[Invoke-EC2CapacityBlockExtension](https://docs.aws.amazon.com/powershell/latest/reference/items/Invoke-EC2CapacityBlockExtension.html) コマンドレットを使用します。前の例の出力からの延長提供 ID を指定します。

```
Invoke-EC2CapacityBlockExtension `
    -CapacityBlockExtensionOfferingId cbe-0123456789abcdefg `
    -CapacityReservationId cr-1234567890abcdefg
```

------

# キャパシティブロックを共有する
<a name="capacity-blocks-share"></a>

 キャパシティブロックを共有すると、キャパシティブロック所有者は Amazon EC2 キャパシティブロックを AWS Organization 内の他の AWS アカウントと共有できます。これにより、予約された GPU 容量をさまざまなチームやプロジェクトで最大限に活用して、キャパシティブロックを効率的に使用できます。

 キャパシティブロックを所有する AWS アカウント (所有者) はキャパシティブロックを他の AWS アカウント (コンシューマー) と共有できます。所有者は、キャパシティブロックを AWS Organization 内の複数の AWS アカウント、AWS Organization 内の 1 つの組織単位、または AWS Organization 全体と共有できます。コンシューマーは、自分が所有するキャパシティブロックにインスタンスを起動する場合と同じように、共有されているキャパシティブロックにインスタンスを起動できます。

## キャパシティブロック共有の前提条件
<a name="capacity-blocks-share-prereq"></a>

キャパシティブロックを共有するには、次の条件を満たす必要があります。
+ **キャパシティブロックを所有している必要があります** – 共有されているキャパシティブロックを共有することはできません。
+  **キャパシティブロックの状態はアクティブまたはスケジュール済みである必要があります** – 他の[状態](https://docs.aws.amazon.com/cli/latest/reference/ec2/purchase-capacity-block.html) (`expired` や `payment-pending` など) のキャパシティブロックは共有できません。
+ **AWS Organization 内での共有のみ** – 所有者はキャパシティブロックを AWS Organization 内の複数の AWS アカウント、AWS Organization 内の 1 つの組織単位、または AWS Organization 全体と共有できます。
+  **UltraServer キャパシティブロックはサポートされていません** – Amazon EC2 UltraServers のキャパシティブロックは共有できません。
+ **アカウントの適格性** - キャパシティブロック共有は、新規の AWS アカウント、および制限付き請求履歴のある AWS アカウントでは利用できません。

## 関連サービス
<a name="capacity-blocks-share-related"></a>

キャパシティブロック共有は AWS Resource Access Manager (AWS RAM) と統合します。AWS RAM は、AWS リソースを任意の AWS アカウントと共有したり、AWS Organizations 経由で共有したりするためのサービスです。AWS RAM を使用した リソース共有。これにより、自身が所有する*リソースを共有*できます。リソース共有では、共有対象のリソースと、共有先となるコンシューマーを指定します。コンシューマーには、個人の AWS アカウントや、AWS Organizations 内の組織単位または組織全体を指定できます。

AWS RAM の詳細については、*[AWS RAM ユーザーガイド](https://docs.aws.amazon.com/ram/latest/userguide/)*を参照してください。

## 共有キャパシティブロックのアクセス許可
<a name="capacity-blocks-share-permissions"></a>

### 所有者のアクセス許可
<a name="capacity-blocks-share-permissions-owner"></a>

 キャパシティブロックの所有者は、キャパシティブロックの管理 (拡張、共有など) とそのキャパシティブロックに起動するインスタンスに引き続き責任を負います。所有者は、共有されているキャパシティブロックにコンシューマーが起動したインスタンスを変更することはできません。

### コンシューマーのアクセス許可
<a name="capacity-blocks-share-permissions-consumer"></a>

 コンシューマーは共有キャパシティにインスタンスを起動できます。コンシューマーは、それらのインスタンスを管理する責任があります。コンシューマーは、他のコンシューマーやキャパシティブロック所有者が所有するインスタンスを表示することや変更することはできません。コンシューマーが表示できるのは、共有キャパシティブロックの合計キャパシティと使用可能なキャパシティのみです。

## キャパシティブロックを共有する
<a name="capacity-blocks-sharing"></a>

キャパシティブロックを共有するには、キャパシティブロックをリソース共有に追加する必要があります。リソース共有とは、AWS アカウント間で自身のリソースを共有するための AWS RAM リソースです。

AWS Organization 全体と共有されているリソース共有にキャパシティブロックを追加した場合、組織内のコンシューマーには共有キャパシティブロックへのアクセス許可が付与されます。

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

**所有しているキャパシティブロックを Amazon EC2 コンソール経由で共有する**

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

1. ナビゲーションペインで、[**キャパシティ予約**] を選択してください。

1. 共有するキャパシティブロックを選択し、**[アクション]、[予約を共有]** の順に選択します。

1. キャパシティブロックの追加先となるリソース共有を選択し、**[キャパシティ予約を共有]** を選択します。

   共有されたキャパシティブロックにコンシューマーがアクセスできるようになるまで数分かかる場合があります。

**新しいリソース共有にキャパシティブロックを追加する**  
まず、AWS RAM コンソールを使用してリソース共有を作成する必要があります。詳細については、「*AWS RAM ユーザーガイド*」の「[Creating a resource share](https://docs.aws.amazon.com/ram/latest/userguide/working-with-sharing.html#working-with-sharing-create)」を参照してください。

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

**自分が所有するキャパシティブロックを共有するには**  
 [create-resource-share](https://docs.aws.amazon.com/cli/latest/reference/ram/create-resource-share.html) および [associate-resource-share](https://docs.aws.amazon.com/cli/latest/reference/ram/associate-resource-share.html) コマンドを使用します。

```
aws ram create-resource-share \
    --name my-resource-share \
    --resource-arns arn:aws:ec2:us-east-2:123456789012:capacity-reservation/cr-1234abcd56EXAMPLE
```

```
aws ram associate-resource-share \
    --resource-share-arn arn:aws:ram:us-east-2:123456789012:resource-share/7ab63972-b505-7e2a-420d-6f5d3EXAMPLE \
    --resource-arns arn:aws:ec2:us-east-2:123456789012:capacity-reservation/cr-1234abcd56EXAMPLE
```

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

**自分が所有するキャパシティブロックを共有するには**  
 [New-RAMResourceShare](https://docs.aws.amazon.com/powershell/latest/reference/items/New-RAMResourceShare.html) コマンドレットと [Connect-RAMResourceShare](https://docs.aws.amazon.com/powershell/latest/reference/items/Connect-RAMResourceShare.html) コマンドレットを使用します。

```
New-RAMResourceShare `
    -Name my-resource-share `
    -ResourceArn "arn:aws:ec2:us-east-2:123456789012:capacity-reservation/cr-1234abcd56EXAMPLE"
```

```
Connect-RAMResourceShare `
    -ResourceShareArn "arn:aws:ram:us-east-2:123456789012:resource-share/7ab63972-b505-7e2a-420d-6f5d3EXAMPLE" `
    -ResourceArn "arn:aws:ec2:us-east-2:123456789012:capacity-reservation/cr-1234abcd56EXAMPLE"
```

------

 キャパシティブロックは、所有権のステータスに関係なく、すべてのアカウントで**先着順**で動作します。キャパシティブロックを共有する場合、所有者の前にコンシューマーがインスタンスを起動すると、それらのインスタンスは、コンシューマーがインスタンスを終了するかキャパシティブロックの有効期限が切れる 30 分前までキャパシティを占有します。

## キャパシティブロックの共有を停止する
<a name="capacity-blocks-unsharing"></a>

 キャパシティブロックの共有は、ブロックの有効期限の 30 分前までいつでも停止できます。

**共有を停止した場合の結果:**
+ コンシューマーは、共有が解除されたキャパシティブロックで新しいインスタンスを起動できなくなります。
+ 実行中のインスタンスは、コンシューマーによって終了されない限り、キャパシティブロックの有効期限の 30 分前まで実行され続けます。

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

**所有しているキャパシティ予約の共有を Amazon EC2 コンソール経由で停止する**

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

1. ナビゲーションペインで、[**キャパシティ予約**] を選択してください。

1. キャパシティブロックを選択して、**[共有]** タブを選択します。

1.  **[共有]** タブに、キャパシティブロックが追加されたリソース共有のリストが表示されます。キャパシティブロックを削除するリソース共有を選択します。

1. **[リソース共有から削除]** を選択します。

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

**自分が所有するキャパシティブロックの共有を停止するには**  
[disassociate-resource-share](https://docs.aws.amazon.com/cli/latest/reference/ram/disassociate-resource-share.html) コマンドを使用します。

```
aws ram disassociate-resource-share \
    --resource-share-arn arn:aws:ram:us-east-2:123456789012:resource-share/7ab63972-b505-7e2a-420d-6f5d3EXAMPLE \
    --resource-arns arn:aws:ec2:us-east-2:123456789012:capacity-reservation/cr-1234abcd56EXAMPLE
```

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

**自分が所有するキャパシティブロックの共有を停止するには**  
[Disconnect-RAMResourceShare](https://docs.aws.amazon.com/powershell/latest/reference/items/Disconnect-RAMResourceShare.html) コマンドレットを使用します。

```
Disconnect-RAMResourceShare `
    -ResourceShareArn "arn:aws:ram:us-east-2:123456789012:resource-share/7ab63972-b505-7e2a-420d-6f5d3EXAMPLE" `
    -ResourceArn "arn:aws:ec2:us-east-2:123456789012:capacity-reservation/cr-1234abcd56EXAMPLE"
```

------

## 共有キャパシティブロックの使用状況をモニタリングする
<a name="capacity-blocks-shared-monitor-usage"></a>

キャパシティブロックの所有者は、共有キャパシティブロックを使用しているアカウントをモニタリングし、アカウントごとにインスタンスの使用状況を追跡できます。

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

**キャパシティブロックの使用状況をモニタリングするには**  
[get-capacity-reservation-usage](https://docs.aws.amazon.com/cli/latest/reference/ec2/get-capacity-reservation-usage.html) コマンドを使用します。

```
aws ec2 get-capacity-reservation-usage \
    --capacity-reservation-id cr-1234abcd56EXAMPLE
```

**この API を使用すると、所有者は次のことを行うことができます。**
+ キャパシティブロックを現在使用しているアカウントを表示する。
+ 各アカウントが実行しているインスタンスの数を確認する。

------

## インスタンスの終了通知
<a name="capacity-blocks-shared-instance-termination-notices"></a>

 キャパシティブロックの予約が終了する 40 分前になると、インスタンスが実行しているキャパシティブロックの所有者アカウントとコンシューマーアカウントに EventBridge イベントが送信され、予約で実行しているインスタンスが 10 分後に終了するが示されます。詳細については、「[EventBridge を使用してキャパシティブロックをモニタリングする](capacity-blocks-monitor.md)」を参照してください。

## キャパシティブロックの拡張
<a name="capacity-blocks-shared-extend"></a>

共有中、キャパシティブロックを拡張することができます。共有キャパシティブロックを拡張できるのは、所有者アカウントのみです。

 キャパシティブロックが拡張されると、所有者またはコンシューマーによって起動された実行中のインスタンスは自動的に新しい有効期限を継承し、コンシューマーは新しい有効期限までインスタンスを中断することなく共有キャパシティを引き続き使用できます。

## 料金と請求
<a name="capacity-blocks-shared-pricing-billing"></a>

 共有キャパシティブロックの請求は所有者に対して行われ、所有者はキャパシティブロックの購入時に前払いします。所有者は、キャパシティブロックで実行するインスタンスのオペレーティングシステムの料金も支払います。

 コンシューマーに対しては、共有キャパシティブロックで実行するインスタンスのオペレーティングシステムの料金のみが課金されます。コンシューマーには、キャパシティブロックの予約そのものに対する課金は行われません。

# UltraServer キャパシティブロックのリソースグループを作成する
<a name="cb-group"></a>

AWS Resource Groups を使用して、UltraServer キャパシティブロックの論理コレクションを作成できます。リソースグループを作成したら、アカウントで所有している UltraServer キャパシティブロックを追加できます。UltraServer キャパシティブロックを追加すると、個々のキャパシティブロックではなくリソースグループに対してインスタンスの起動をターゲットにできます。リソースグループをターゲットとするインスタンスは、一致する属性と使用可能な容量を持つグループ内の任意の UltraServer キャパシティブロックと一致します。一致する属性と使用可能な容量を持つ UltraServer キャパシティーブロックがリソースグループにない場合、インスタンスの起動は失敗します。

UltraServer キャパシティブロックに実行中のインスタンスがあるときにリソースグループから削除された場合、それらのインスタンスはキャパシティブロックで引き続き実行されます。グループ内の UltraServer キャパシティブロックがインスタンスの実行中に終了すると、それらのインスタンスは終了します。

インスタンスキャパシティブロックをリソースグループに追加することはできません。

UltraServer キャパシティブロックのリソースグループを作成するには、次のいずれかの方法を使用します。

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

**UltraServer キャパシティブロックのリソースグループを作成するには**  
[create-group](https://docs.aws.amazon.com/cli/latest/reference/resource-groups/create-group.html)AWS CLI コマンドを使用し、`--configuration` に以下を指定します。

```
{
  "Configuration": [
    {
      "Type": "AWS::EC2::CapacityReservationPool",
      "Parameters": [
        {
          "Name": "instance-type",
          "Values": [
            "instance_type"
          ]
        },
        {
          "Name": "reservation-type",
          "Values": [
            "capacity-block"
          ]
        }
      ]
    },
    {
      "Type": "AWS::ResourceGroups::Generic",
      "Parameters": [
        {
          "Name": "allowed-resource-types",
          "Values": [
            "AWS::EC2::CapacityReservation"
          ]
        }
      ]
    }
  ]
}
```

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

**UltraServer キャパシティブロックのリソースグループを作成するには**  
[New-RGGroup](https://docs.aws.amazon.com/powershell/latest/reference/items/New-RGGroup.html) コマンドレットを使用します。[`-Configuration`] で、以下を指定します。

```
{
  "Configuration": [
    {
      "Type": "AWS::EC2::CapacityReservationPool",
      "Parameters": [
        {
          "Name": "instance-type",
          "Values": [
            "instance_type"
          ]
        },
        {
          "Name": "reservation-type",
          "Values": [
            "capacity-block"
          ]
        }
      ]
    },
    {
      "Type": "AWS::ResourceGroups::Generic",
      "Parameters": [
        {
          "Name": "allowed-resource-types",
          "Values": [
            "AWS::EC2::CapacityReservation"
          ]
        }
      ]
    }
  ]
}
```

------

UltraServer キャパシティブロックのリソースグループを作成したら、次のいずれかの方法を使用して既存の UltraServer キャパシティブロックを追加します。

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

**UltraServer キャパシティブロックをリソースグループに追加するには**  
[group-resources](https://docs.aws.amazon.com/cli/latest/reference/resource-groups/group-resources.html) コマンドを使用します。`--group` には、作成したリソースグループの名前を指定します。`--resource-arns` には、追加する UltraServer キャパシティブロックの ARN を指定します。

```
aws resource-groups group-resources \
--group MyCRGroup \
--resource-arns CapacityReservationArn
```

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

**UltraServer キャパシティブロックをリソースグループに追加するには**  
[Add-RGResource](https://docs.aws.amazon.com/powershell/latest/reference/items/Add-RGResource.html) コマンドレットを使用します。`-Group` には、作成したリソースグループの名前を指定します。`-ResourceArn ` には、追加する UltraServer キャパシティブロックの ARN を指定します。

次の例では、指定したグループに 2 つのキャパシティ予約を追加します。

```
Add-RGResource `
-Group MyCRGroup `
-ResourceArn CapacityReservationArn
```

------

# EventBridge を使用してキャパシティブロックをモニタリングする
<a name="capacity-blocks-monitor"></a>

キャパシティブロックの予約が始まると、Amazon EC2 は EventBridge を通じて、キャパシティが使用可能になったことを知らせるイベントを送信します。キャパシティブロック予約の終了 40 分前になると、予約で実行中のインスタンスが 10 分後に終了プロセスを開始することを知らせる、別のEventBridge イベントが手元に届きます。EventBridge イベントの詳細については、「[Amazon EventBridge イベント](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-events.html)」を参照してください。

キャパシティブロックに関して発生するイベントのイベント構造を以下に示します。

**キャパシティブロックの配信**  
以下に示す例は、キャパシティブロックの配信のイベントです。

```
{
  "customer_event_id": "[Capacity Reservation Id]-delivered",
  "detail_type": "Capacity Block Reservation Delivered",
  "source": "aws.ec2",
  "account": "[Customer Account ID]",
  "time": "[Current time]",
  "resources": [
    "[ODCR ARN]"
  ],
  "detail": {
    "capacity-reservation-id": "[ODCR ID]",
    "end-date": "[ODCR End Date]"
  }
}
```

**キャパシティブロックの有効期限切れの警告**  
以下に示す例は、キャパシティブロックの有効期限切れの警告のイベントです。

```
{
  "customer_event_id": "[Capacity Reservation Id]-approaching-expiry",
  "detail_type": "Capacity Block Reservation Expiration Warning",
  "source": "aws.ec2",
  "account": "[Customer Account ID]",
  "time": "[Current time]",
  "resources": [
    "[ODCR ARN]"
  ],
  "detail": {
    "capacity-reservation-id": "[ODCR ID]",
    "end-date": "[ODCR End Date]"
  }
}
```

**キャパシティ予約インスタンスの中断に関する警告**  
次の例は、EC2 キャパシティ予約インスタンスの中断警告のイベントを示しています。

```
{
    "version": "0",
    "id": "12345678-1234-1234-1234-123456789012",
    "detail_type": "EC2 Capacity Reservation Instance Interruption Warning",
    "source": "aws.ec2",
    "account": "[Customer Account ID]",
    "time": "[Current time]",
    "region": "[Region]",
    "resources": [
        "[Instance ARN]"
    ],
    "detail": {
        "instance-id": "[Instance ID]",
        "instance-action": "terminate",
        "instance-termination-time": "[Current time]",
        "availability-zone-id": "[Availability Zone ID]",
        "instance-lifecycle": "capacity-block"
    }
}
```

# AWS CloudTrail を使用したキャパシティブロック API コールのロギング
<a name="capacity-blocks-logging-using-cloudtrail"></a>

キャパシティブロックは、キャパシティブロックのユーザー、ロール、AWS サービスが実行したアクションを記録する AWS CloudTrail と連携しています。CloudTrail は、キャパシティブロックの API コールをイベントとしてキャプチャします。キャプチャされたコールには、キャパシティブロックコンソールからのコールと、キャパシティブロック API オペレーションへのコードコールが含まれています。証跡を作成する場合は、キャパシティブロックのイベントなど、Amazon S3 バケットへの CloudTrail イベントの継続的配信を有効にすることができます。証跡を設定しない場合でも、CloudTrail コンソールの **[イベント履歴]** で最新のイベントを表示できます。CloudTrail で収集された情報を使用して、キャパシティブロックに対するリクエスト、リクエスト元の IP アドレス、リクエスト者、リクエスト日時などの詳細を確認できます。

CloudTrail の詳細については、「[AWS CloudTrail ユーザーガイド](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html)」を参照してください。

## CloudTrail のキャパシティブロック情報
<a name="capacity-blocks-info-in-cloudtrail"></a>

CloudTrail は、AWS アカウント を作成すると、その中で有効になります。キャパシティブロックでアクティビティが発生すると、そのアクティビティは **[イベント履歴]** で AWS のその他のサービスのイベントとともに CloudTrail イベントにレコードされます。最近のイベントは、AWS アカウント で表示、検索、ダウンロードできます。詳細については、 [CloudTrail イベント履歴でのイベントの表示](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html)を参照してください。

イベント履歴のイベントなど、AWS アカウント のイベントの継続的な記録については、証跡を作成します。*証跡*により、CloudTrail はログファイルを Amazon S3 バケットに配信できます。デフォルトでは、コンソールで証跡を作成するときに、証跡がすべての AWS リージョン に適用されます。証跡は、AWS パーティションのすべてのリージョンからのイベントをログに記録し、指定した Amazon S3 バケットにログファイルを配信します。さらに、CloudTrail ログで収集したイベントデータをより詳細に分析し、それに基づいて対応するため、他の AWS サービスを構成できます。詳細については次を参照してください: 
+ [追跡を作成するための概要](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-and-update-a-trail.html)
+ [CloudTrail がサポートされているサービスと統合](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-aws-service-specific-topics.html)
+ 「[CloudTrail の Amazon SNS 通知の設定](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/configure-sns-notifications-for-cloudtrail.html)」
+ [複数のリージョンから CloudTrail ログファイルを受け取る](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/receive-cloudtrail-log-files-from-multiple-regions.html)および[複数のアカウントから CloudTrail ログファイルを受け取る](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-receive-logs-from-multiple-accounts.html)

すべてのキャパシティブロックアクションは CloudTrail によってログ記録され、Amazon EC2 API リファレンスに記録されます。例えば、`CapacityBlockScheduled` と `CapacityBlockActive` の各アクションを呼び出すと、CloudTrail ログファイルにエントリが生成されます。

各イベントまたはログエントリには、誰がリクエストを生成したかという情報が含まれます。アイデンティティ情報は、以下を判別するのに役立ちます: 
+ リクエストが、ルート認証情報と AWS Identity and Access Management (IAM) ユーザー認証情報のどちらを使用して送信されたか。
+ リクエストがロールまたはフェデレーションユーザーのテンポラリなセキュリティ認証情報を使用して行われたかどうか。
+ リクエストが別の AWS サービスによって行われたかどうか。

詳細については、「[CloudTrail userIdentity エレメント](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-user-identity.html)」を参照してください。

## キャパシティブロックのログファイルエントリについて
<a name="understanding-service-name-entries"></a>

「トレイル」は、指定した Amazon S3 バケットにイベントをログファイルとして配信するように設定できます。CloudTrail のログファイルは、単一か複数のログエントリを含みます。イベントは、任意の出典からの単一のリクエストを表し、リクエストされたアクション、アクションの日時、リクエストパラメータなどに関する情報が含まれます。CloudTrail ログファイルは、パブリック API 呼び出しの順序付けられたスタックトレースではないため、特定の順序では表示されません。

以下は、次の CloudTrail ログエントリの例です。
+ [TerminateCapacityBlocksInstances](#understanding-capacity-blocks-entries-terminatecapacityblockinstances)
+ [CapacityBlockPaymentFailed](#understanding-capacity-blocks-entries-capacityblockpaymentfailed)
+ [CapacityBlockScheduled](#understanding-capacity-blocks-entries-capacityblockscheduled)
+ [CapacityBlockActive](#understanding-capacity-blocks-entries-capacityblockactive)
+ [CapacityBlockFailed](#understanding-capacity-blocks-entries-capacityblockfailed)
+ [CapacityBlockExpired](#understanding-capacity-blocks-entries-capacityblockexpired)

**注記**  
こちらの例では、データのプライバシーを保護するため一部のフィールドが削除されています。

### TerminateCapacityBlocksInstances
<a name="understanding-capacity-blocks-entries-terminatecapacityblockinstances"></a>

```
{
  "eventVersion": "1.05",
  "userIdentity": {
    "accountId": "123456789012",
    "invokedBy": "AWS Internal;"
  },
  "eventTime": "2023-10-02T00:06:08Z",
  "eventSource": "ec2.amazonaws.com",
  "eventName": "TerminateCapacityBlockInstances",
  "awsRegion": "us-east-1",
  "sourceIPAddress": "203.0.113.25",
  "userAgent": "aws-cli/1.15.61 Python/2.7.10 Darwin/16.7.0 botocore/1.10.60",
  "requestParameters": null,
  "responseElements": null,
  "eventID": "a1b2c3d4-EXAMPLE",
  "readOnly": false,
  "resources": [
    {
      "accountId": "123456789012",
      "type": "AWS::EC2::Instance",
      "ARN": "arn:aws:ec2:us-east-1:123456789012:instance/i-1234567890abcdef0"
    }
    {
      "accountId": "123456789012",
      "type": "AWS::EC2::Instance",
      "ARN": "arn:aws:ec2:us-east-1:123456789012:instance/i-0598c7d356eba48d7"
    }
  ],
  "eventType": "AwsServiceEvent",
  "recipientAccountId": "123456789012",
  "serviceEventDetails": {
      "capacityReservationId": "cr-12345678",
      }
}
```

### CapacityBlockPaymentFailed
<a name="understanding-capacity-blocks-entries-capacityblockpaymentfailed"></a>

```
{
  "eventVersion": "1.05",
  "userIdentity": {
    "accountId": "123456789012",
    "invokedBy": "AWS Internal;"
  },
  "eventTime": "2023-10-02T00:06:08Z",
  "eventSource": "ec2.amazonaws.com",
  "eventName": "CapacityBlockPaymentFailed",
  "awsRegion": "us-east-1",
  "sourceIPAddress": "203.0.113.25",
  "userAgent": "aws-cli/1.15.61 Python/2.7.10 Darwin/16.7.0 botocore/1.10.60",
  "requestParameters": null,
  "responseElements": null,
  "eventID": "a1b2c3d4-EXAMPLE",
  "readOnly": false,
  "resources": [
    {
      "ARN": "arn:aws:ec2:us-east-1:123456789012:capacity-reservation/cr-12345678",
      "accountId": "123456789012",
      "type": "AWS::EC2::CapacityReservation"
    }
  ],
  "eventType": "AwsServiceEvent",
  "recipientAccountId": "123456789012",
  "serviceEventDetails": {
      "capacityReservationId": "cr-12345678",
      "capacityReservationState": "payment-failed"
      }
}
```

### CapacityBlockScheduled
<a name="understanding-capacity-blocks-entries-capacityblockscheduled"></a>

```
{
  "eventVersion": "1.05",
  "userIdentity": {
    "accountId": "123456789012",
    "invokedBy": "AWS Internal;"
  },
  "eventTime": "2023-10-02T00:06:08Z",
  "eventSource": "ec2.amazonaws.com",
  "eventName": "CapacityBlockScheduled",
  "awsRegion": "us-east-1",
  "sourceIPAddress": "203.0.113.25",
  "userAgent": "aws-cli/1.15.61 Python/2.7.10 Darwin/16.7.0 botocore/1.10.60",
  "requestParameters": null,
  "responseElements": null,
  "eventID": "a1b2c3d4-EXAMPLE",
  "readOnly": false,
  "resources": [
    {
      "ARN": "arn:aws:ec2:us-east-1:123456789012:capacity-reservation/cr-12345678",
      "accountId": "123456789012",
      "type": "AWS::EC2::CapacityReservation"
    }
  ],
  "eventType": "AwsServiceEvent",
  "recipientAccountId": "123456789012",
  "serviceEventDetails": {
      "capacityReservationId": "cr-12345678",
      "capacityReservationState": "scheduled"
      }
}
```

### CapacityBlockActive
<a name="understanding-capacity-blocks-entries-capacityblockactive"></a>

```
{
  "eventVersion": "1.05",
  "userIdentity": {
    "accountId": "123456789012",
    "invokedBy": "AWS Internal;"
  },
  "eventTime": "2023-10-02T00:06:08Z",
  "eventSource": "ec2.amazonaws.com",
  "eventName": "CapacityBlockActive",
  "awsRegion": "us-east-1",
  "sourceIPAddress": "203.0.113.25",
  "userAgent": "aws-cli/1.15.61 Python/2.7.10 Darwin/16.7.0 botocore/1.10.60",
  "requestParameters": null,
  "responseElements": null,
  "eventID": "a1b2c3d4-EXAMPLE",
  "readOnly": false,
  "resources": [
    {
      "ARN": "arn:aws:ec2:us-east-1:123456789012:capacity-reservation/cr-12345678",
      "accountId": "123456789012",
      "type": "AWS::EC2::CapacityReservation"
    }
  ],
  "eventType": "AwsServiceEvent",
  "recipientAccountId": "123456789012",
  "serviceEventDetails": {
      "capacityReservationId": "cr-12345678",
      "capacityReservationState": "active"
      }
 }
```

### CapacityBlockFailed
<a name="understanding-capacity-blocks-entries-capacityblockfailed"></a>

```
{
  "eventVersion": "1.05",
  "userIdentity": {
    "accountId": "123456789012",
    "invokedBy": "AWS Internal;"
  },
  "eventTime": "2023-10-02T00:06:08Z",
  "eventSource": "ec2.amazonaws.com",
  "eventName": "CapacityBlockFailed",
  "awsRegion": "us-east-1",
  "sourceIPAddress": "203.0.113.25",
  "userAgent": "aws-cli/1.15.61 Python/2.7.10 Darwin/16.7.0 botocore/1.10.60",
  "requestParameters": null,
  "responseElements": null,
  "eventID": "a1b2c3d4-EXAMPLE",
  "readOnly": false,
  "resources": [
    {
      "ARN": "arn:aws:ec2:us-east-1:123456789012:capacity-reservation/cr-12345678",
      "accountId": "123456789012",
      "type": "AWS::EC2::CapacityReservation"
    }
  ],
  "eventType": "AwsServiceEvent",
  "recipientAccountId": "123456789012",
  "serviceEventDetails": {
      "capacityReservationId": "cr-12345678",
      "capacityReservationState": "failed"
      }
 }
```

### CapacityBlockExpired
<a name="understanding-capacity-blocks-entries-capacityblockexpired"></a>

```
{
  "eventVersion": "1.05",
  "userIdentity": {
    "accountId": "123456789012",
    "invokedBy": "AWS Internal;"
  },
  "eventTime": "2023-10-02T00:06:08Z",
  "eventSource": "ec2.amazonaws.com",
  "eventName": "CapacityBlockExpired",
  "awsRegion": "us-east-1",
  "sourceIPAddress": "203.0.113.25",
  "userAgent": "aws-cli/1.15.61 Python/2.7.10 Darwin/16.7.0 botocore/1.10.60",
  "requestParameters": null,
  "responseElements": null,
  "eventID": "a1b2c3d4-EXAMPLE",
  "readOnly": false,
  "resources": [
    {
      "ARN": "arn:aws:ec2:us-east-1:123456789012:capacity-reservation/cr-12345678",
      "accountId": "123456789012",
      "type": "AWS::EC2::CapacityReservation"
    }
  ],
  "eventType": "AwsServiceEvent",
  "recipientAccountId": "123456789012",
  "serviceEventDetails": {
      "capacityReservationId": "cr-12345678",
      "capacityReservationState": "expired"
      }
 }
```