[アップデート] AWS Batch コンピューティング環境で許可されたインスタンスタイプに default_arm64 / default_x86_64 が指定できるようになりました

[アップデート] AWS Batch コンピューティング環境で許可されたインスタンスタイプに default_arm64 / default_x86_64 が指定できるようになりました

2025.08.19

いわさです。

AWS Batch は複数のコンポーネントで構成されています。
コンテナを起動するジョブを実行するのですが、事前にジョブ定義を用意し、そのジョブ定義とどこで起動するかのジョブキューを指定します。
さらにジョブキューではどういったコンピューティング基盤で実行するかをあらかじめカスタマイズすることが出来まして、Fargate や EC2 など選択が可能です。

そのコンピューティング環境で EC2 のオーケストレーションタイプがマネージド型の時、起動される EC2 インスタンスタイプを指定することが出来ます。

今回のアップデートで新たにインスタンスタイプのセット、default_arm64default_x86_64が追加されました。

https://aws.amazon.com/about-aws/whats-new/2025/08/aws-batch-default-instance-types/

Batch のコンピューティング環境では静的にインスタンスタイプを指定することも可能なのですが、デフォルトではoptimalというインスタンスタイプセットが選択されています。
以下はoptimalが設定された東京リージョンのコンピューティング環境でジョブを実行した時に起動された EC2 です。

7DD9308C-9FA7-4D66-AB35-BE2CBA8273F3.png

c4.largeで起動されましたね。
optimalm4/c4/r4などが優先的に選択されます。
リストの中から良い感じのものを自動選択して起動してくれるので良いのですが、コスト最適化を考えた時、c4などが優先的に選択されるのはちょっと古い感じで実際には「最適」とは必ずしも言えない状態でした。

今回追加されたdefault_arm64default_x86_64m6/r6/c6などより高性能で安価な世代が優先的に選択され、さらに ARM などの固定化もできるのでよりコストに最適化されたインスタンスタイプセットです。

今回こちらを使ってみたのでその様子を紹介します。

ジョブを実行するまでの準備

まずは今回アップデートされたパラメータを指定しましょう。
コンピューティング環境で指定することが出来ます。

EDCBEBEA-A54D-406D-9B39-AB33A5DE5B16.png

コンピューティング環境では Fargate や EC2 や EKS、さらに EC2 の中でもマネージドとアンマネージドなど様々な選択肢があります。
今回のアップデートは EC2 のマネージドタイプで使うことができる機能です。

このインスタンス設定の中で「許可されたインスタンスタイプ」を選択することが出来ます。
デフォルトは次のようにoptimalが選択されていると思います。

41A99FA8-A13C-455D-AF69-856710E47626_1_105_c.jpeg

今回のアップデートで追加されたのは次の2つのタイプです。

1081081E-2F74-4BF9-8B32-620CDEC0C5E4_4_5005_c.jpeg

まずはdefault_arm64を指定して作成を続けてみます。
作成後のコンピューティング環境は次のように表示されます。

985168DC-5019-4443-AF0F-A838E8E4918E.png

あとはこのコンピューティング環境を使ったジョブキューを作成します。

5DD5193F-2A2A-4901-8D09-189F2EE3C00D_1_105_c.jpeg

最後に、このジョブキューを指定してジョブを作成します。

54B18B35-BCB8-4D33-B098-E0F175BBFC5D_1_105_c.jpeg

ジョブの実行が開始されたら EC2 コンソールを確認してみましょう。

523ABE77-2796-4537-B999-C4CCDC04F7D6_4_5005_c.jpeg

m6g.mediumで実行されていることが確認出来ますね。
そして別のコンピューティング環境でdefault_x86_64を選択した場合、ジョブ実行時に次のような EC2 インスタンスが起動されていました。

ADB83AE5-C6AB-4879-9CFC-7EA15DDA20CB_4_5005_c.jpeg

こちらはc6i.largeです。
ジョブ定義に従ってインスタンスサイズやタイプは少し変わりますが、m6/c6/r6などから優先して選択されていそうなことがわかりますね。

optimal の位置付け

なお、今後optimalはどうなるのでしょうか。
そのあたりも今回のアップデートで公式ドキュメント上追記されています。

2025 年 11 月までは現在の仕様(m4/r4/c4を優先)で動作し、2025 年 11 月 1 日以降はdefault_x86_64と同じ動作になるそうです。

https://docs.aws.amazon.com/batch/latest/userguide/create-compute-environment-managed-ec2.html

特にユーザー側でアップグレード操作などは不要です。
自動でm6などが選択されるようになるので、逆にm4を引き続き使いたいのだが?という場合は、2025 年 11 月 1 日までにコンピューティング環境に対して静的にインスタンスタイプを指定しておきましょう。

7A2BB90F-26C2-4CDA-A9EA-8EAF581C954E.png

さいごに

本日は AWS Batch コンピューティング環境で許可されたインスタンスタイプに default_arm64 / default_x86_64 が指定できるようになったので使ってみました。

より最適化されたインスタンスタイプセットといえると思いますのでoptimalをお使いの方は切り替えてみては如何でしょうか。

この記事をシェアする

facebookのロゴhatenaのロゴtwitterのロゴ

© Classmethod, Inc. All rights reserved.