翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
マネージド型のコンピューティング環境
マネージド型のコンピューティング環境を使用して、 が環境内のコンピューティングリソースの容量とインスタンスタイプ AWS Batch を管理できます。これは、コンピュート環境の作成時に定義したコンピュートリソースの仕様に基づいています。Amazon EC2 オンデマンドインスタンスと Amazon EC2 スポットインスタンスを使用するかを選択できます。または、マネージド型のコンピューティング環境で Fargate および Fargate スポット容量を使用することもできます。スポットインスタンスを使用する場合、オプションで上限価格を設定できます。こうすることで、スポット・インスタンスは、スポットインスタンス価格がオンデマンド価格の指定されたパーセンテージを下回った場合にのみ起動する。
重要
Fargate Spot インスタンスは ではサポートされていません Windows containers on AWS Fargate。FargateWindowsのジョブが、Fargate Spotのコンピュート環境のみを利用するジョブキューに投入された場合、ジョブキューはブロックされます。
重要
AWS Batch は、Amazon EC2 起動テンプレート、Amazon EC2 Auto Scaling グループ、Amazon EC2 Amazon EC2 スポットフリート、Amazon ECS クラスターなど、ユーザーに代わってアカウント内で複数の AWS リソースを作成および管理します。これらのマネージドリソースは、最適な AWS Batch オペレーションを保証するために特別に設定されています。これらのバッチ管理リソースを手動で変更すると、ドキュメントに AWS Batch 明示的に記載されていない限り、予期しない動作が発生し、INVALID
コンピューティング環境、最適ではないインスタンスのスケーリング動作、ワークロード処理の遅延、予期しないコストが発生する可能性があります。これらの手動変更は、 AWS Batch サービスで決定的にサポートすることはできません。コンピューティング環境を管理するには、必ずサポートされているバッチ APIs またはバッチコンソールを使用してください。
マネージド・コンピュート環境は、指定したVPCとサブネットにAmazon EC2インスタンスを起動し、Amazon ECSクラスターに登録します。Amazon EC2インスタンスは、Amazon ECSサービスエンドポイントと通信するために外部ネットワークアクセスが必要です。一部のサブネットでは、Amazon EC2インスタンスにパブリックIPアドレスを提供していない。Amazon EC2インスタンスがパブリックIPアドレスを持っていない場合、このアクセスを得るためにネットワークアドレス変換(NAT)を使用する必要があります。詳細については、Amazon VPC ユーザーガイド のNAT ゲートウェイを参照してください。VPC の作り方の詳細については、仮想プライベートクラウドを作成する を参照してください。
デフォルトでは、 AWS Batch マネージド型のコンピューティング環境は、承認された最新バージョンの Amazon ECS 最適化 AMI をコンピューティングリソースに使用します。ただし、さまざまな理由により、マネージド型のコンピューティング環境で使用する AMI を独自に作成する場合もあります。詳細については、「コンピューティングリソースの AMI」を参照してください。
注記
AWS Batch は、作成後にコンピューティング環境の AMIs を自動的にアップグレードしません。例えば、Amazon ECS最適化AMIの新しいバージョンがリリースされても、コンピュート環境のAMIは更新されません。ゲストオペレーティングシステムの管理はユーザーの責任です。これには、アップデートとセキュリティパッチが含まれます。また、コンピューティングリソースにインストールするその他のアプリケーションソフトウェアやユーティリティについても責任を負うものとします。 AWS Batch ジョブに新しい AMI を使用するには、2 つの方法があります。オリジナルの方法は、次のステップを完了することです。
-
新しい AMI を使用して新しいコンピューティング環境を作成します。
-
コンピューティング環境を既存のジョブキューに追加します。
-
古いコンピューティング環境をジョブキューから削除します。
-
以前のコンピューティング環境を削除します。
2022 年 4 月に、コンピューティング環境の更新に対する拡張サポート AWS Batch が追加されました。詳細については、「コンピューティング環境を更新します。」を参照してください。コンピューティング環境の拡張アップデートを使用して AMI を更新するには、次のルールに従います。
-
サービスロール(
serviceRole
)パラメータを設定しないか、AWSServiceRoleForBatch サービス連動ロールに設定します。 -
割り当て戦略 (
allocationStrategy
) パラメータを、BEST_FIT_PROGRESSIVE
、SPOT_CAPACITY_OPTIMIZED
またはSPOT_PRICE_CAPACITY_OPTIMIZED
に設定します。 -
最新のイメージバージョンへの更新 (
updateToLatestImageVersion
) パラメータをtrue
に設定します。 -
imageId
、imageIdOverride
(ec2Configuration
) または起動テンプレート (launchTemplate
) には AMI ID を指定しないでください。この場合、 はインフラストラクチャの更新が開始された AWS Batch 時点で でサポートされている最新の Amazon ECS 最適化 AMI AWS Batch を選択します。または、imageId
またはimageIdOverride
パラメータで AMI ID を指定するか、LaunchTemplate
プロパティで識別されるローンチテンプレートを指定することもできます。これらのプロパティのいずれかを変更すると、インフラストラクチャの更新が開始されます。AMI ID が起動テンプレートで指定されている場合、imageId
またはimageIdOverride
パラメータで AMI ID を指定して置き換えることはできません。別の起動テンプレートを指定することでのみ置き換えることができます。$Default
または$Latest
、起動テンプレートのバージョンがまたはに設定されている場合は、起動テンプレートの新しいデフォルトバージョンを設定するか(設定されている場合$Default
)、起動テンプレートに新しいバージョンを追加(ある場合$Latest
)します。
これらのルールに従うと、インフラストラクチャの更新をトリガーする更新により、AMI ID が再選択されます。起動テンプレートversion
の (launchTemplate
)設定が$Latest
または$Default
に設定されている場合、launchTemplate
を更新していない場合でも、インフラストラクチャの更新時に起動テンプレートの最新バージョンまたはデフォルトバージョンが評価されます。
マルチノードの並列ジョブを作成する際の考慮事項
AWS Batch では、マルチノード並列 (MNP) ジョブと非 MNP ジョブを実行するための専用のコンピューティング環境を作成することをお勧めします。これは、マネージドコンピュート環境におけるコンピューティングキャパシティの作り方によるものです。新しいマネージド型のコンピューティング環境を作成するときに、0 より大きいminvCpu
値を指定すると、 は非 MNP ジョブでのみ使用するインスタンスプール AWS Batch を作成します。マルチノードの並列ジョブが送信されると、 はマルチノードの並列ジョブを実行する新しいインスタンス容量 AWS Batch を作成します。単一ノードとマルチノードの両方の並列ジョブが、 minvCpus
または maxvCpus
値が設定された同じコンピューティング環境で実行されている場合、必要なコンピューティングリソースが使用できない場合 AWS Batch 、 は現在のジョブが終了するのを待ってから、新しいジョブの実行に必要なコンピューティングリソースを作成します。