使用アイテム Capacity Blocks 機械学習ワークロード用 - Amazon EC2 Auto Scaling

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

使用アイテム Capacity Blocks 機械学習ワークロード用

Capacity Blocks は、短期の機械学習 (ML) ワークロードをサポートするために、将来、非常に人気のあるGPUインスタンスを予約するのに役立ちます。

の概要 Capacity Blocks とその仕組みについては、「」を参照してください。 Capacity Blocks Amazon ユーザーガイド の ML 用。 EC2

の使用を開始するには Capacity Blocks、特定のアベイラビリティーゾーンにキャパシティー予約を作成します。Capacity Blocks は、単一のアベイラビリティーゾーンでtargetedキャパシティー予約として配信されます。起動テンプレートを作成するときは、キャパシティブロックの予約 ID とインスタンスタイプを指定します。次に、Auto Scaling グループを更新して、作成した起動テンプレートとキャパシティブロックのアベイラビリティーゾーンを使用します。キャパシティブロック予約が開始されたら、スケジュールされたスケーリングを使用して、キャパシティブロック予約と同じ数のインスタンスを起動します。

重要

Capacity Blocks は、特定の Amazon EC2インスタンスタイプと でのみ使用できます AWS リージョン。詳細については、「Amazon EC2ユーザーガイド」の「前提条件」を参照してください。

操作のガイドライン

以下は、Auto Scaling グループでキャパシティブロックを使用するに従うべき操作の基本的なガイドラインです。

  • キャパシティブロックの予約終了時刻の 30 分以上前に、Auto Scaling グループをゼロにスケールインします。Amazon EC2は、キャパシティブロックの終了時刻の 30 分前にまだ実行されているインスタンスをすべて終了します。

  • スケジュールされたスケーリングを使用して、適切な予約時間にスケールアウト (インスタンスの追加) およびスケールイン (インスタンスの削除) を行うことをお勧めします。詳細については、「Amazon EC2 Auto Scaling のスケジュールされたスケーリング」を参照してください。

  • 必要に応じてライフサイクルフックを追加し、スケールインの際にインスタンス内でアプリケーションを正常にシャットダウンします。Amazon がキャパシティブロックの予約終了時刻の 30 分前にインスタンスをEC2強制終了する前に、ライフサイクルアクションが完了するまでの十分な時間を確保してください。詳細については、「Amazon EC2 Auto Scaling のライフサイクルフック」を参照してください。

  • Auto Scaling グループが、予約期間全体を通して正しいバージョンの起動テンプレートを指定していることを確認してください。$Default または $Latest バージョンではなく、特定のバージョンの起動テンプレートを指定することをお勧めします。

注記

予約が終了するまでキャパシティブロックインスタンスを実行したままで、Amazon がEC2それを再利用した場合、Auto Scaling グループのスケーリングアクティビティは、キャパシティブロックの最後に意図的に再利用されたにもかかわらず、taken out of service in response to an EC2 health check that indicated it had been terminated or stopped「」と表示されます。同様に、Amazon EC2 Auto Scaling は、ヘルスチェックに失敗したインスタンスの場合と同じ方法でインスタンスを置き換えようとします。詳細については、「Auto Scaling グループ内のインスタンスのヘルスチェック」を参照してください。

起動テンプレートでキャパシティブロックを指定する

Auto Scaling グループの特定のキャパシティブロックをターゲットとする起動テンプレートを作成するには、次のいずれかの方法を使用します。

Console
起動テンプレートでキャパシティブロックを指定するには (コンソール)
  1. で Amazon EC2コンソールを開きますhttps://console.aws.amazon.com/ec2/

  2. 上部のナビゲーションバーで、キャパシティブロックを作成した AWS リージョン を選択します。

  3. ナビゲーションペインで、[インスタンス] の [テンプレートの起動] を選択します。

  4. 起動テンプレートの作成 を選択し、起動テンプレートを作成します。Amazon マシンイメージの ID (AMI)、インスタンスタイプ、および必要に応じてその他の起動テンプレート設定を含めます。

  5. [高度な詳細] セクションを展開して、詳細設定を表示します。

  6. 購入オプション で、キャパシティブロック を選択します。

  7. [キャパシティ予約][ID 別のターゲット] を選択し、[キャパシティ予約 - ID ごとのターゲット] で、既存のキャパシティブロックのキャパシティ予約 ID を選択します。

  8. 完了したら、起動テンプレートの作成 を選択します。

    起動テンプレートを使用して Auto Scaling グループを作成する方法については、「」を参照してください起動テンプレートを使用して Auto Scaling グループを作成する

AWS CLI
起動テンプレートでキャパシティブロックを指定するには (AWS CLI)

次のcreate-launch-templateコマンドを使用して、既存のキャパシティブロック予約 ID を指定する起動テンプレートを作成します。各 を置き換える user input placeholder 独自の情報で。

aws ec2 create-launch-template --launch-template-name my-template-for-capacity-block \ --version-description AutoScalingVersion1 --region us-east-2 \ --launch-template-data file://config.json
ヒント

このコマンドでエラーが発生した場合は、 を AWS CLI ローカルで最新バージョンに更新していることを確認してください。

config.json の内容。

{ "ImageId": "ami-04d5cc9b88example", "InstanceType": "p4d.24xlarge", "SecurityGroupIds": [ "sg-903004f88example" ], "KeyName": "MyKeyPair", "InstanceMarketOptions": { "MarketType": "capacity-block" }, "CapacityReservationSpecification": { "CapacityReservationTarget": { "CapacityReservationId": "cr-02168da1478b509e0" } } }

以下は出力例です。

{ "LaunchTemplate": { "LaunchTemplateId": "lt-068f72b724example", "LaunchTemplateName": "my-template-for-capacity-block", "CreateTime": "2023-10-27T15:12:44.000Z", "CreatedBy": "arn:aws:iam::123456789012:user/Bob", "DefaultVersionNumber": 1, "LatestVersionNumber": 1 } }

次のdescribe-launch-template-versionsコマンドを使用して、起動テンプレートに関連付けられたキャパシティブロック予約 ID を確認できます。

aws ec2 describe-launch-template-versions --launch-template-names my-template-for-capacity-block \ --region us-east-2

以下は、キャパシティブロックの予約を指定する起動テンプレートの出力例です。

{ "LaunchTemplateVersions": [ { "LaunchTemplateId": "lt-068f72b724example", "LaunchTemplateName": "my-template-for-capacity-block", "VersionNumber": 1, "CreateTime": "2023-10-27T15:12:44.000Z", "CreatedBy": "arn:aws:iam::123456789012:user/Bob", "DefaultVersion": true, "LaunchTemplateData": { "ImageId": "ami-04d5cc9b88example", "InstanceType": "p5.48xlarge", "SecurityGroupIds": [ "sg-903004f88example" ], "KeyName": "MyKeyPair", "InstanceMarketOptions": { "MarketType": "capacity-block" }, "CapacityReservationSpecification": { "CapacityReservationTarget": { "CapacityReservationId": "cr-02168da1478b509e0" } } } } ] }

制限事項

  • サポート対象 Capacity Blocks は、Auto Scaling グループに互換性のある設定がある場合にのみ使用できます。混合インスタンスグループおよびウォームプールはサポートされていません。

  • 一度にターゲットにできるキャパシティブロックは 1 つだけです。