見出し画像

AWS Batchのコンピューティング環境にAmazonLinux2023(ECS最適化)を利用する

こんにちはこぐまです。

久しぶりにAWSの備忘録です。
今回はAWS Batch
AWS Batchのコンピューティング環境として長くサポートされてきた
「AmazonLinux」ですが、2023年6月30日をもってサポート終了となるという連絡が来ていました。

・・・using a Batch-provided Amazon Linux AMI that will no longer be supported after June 30, 2023. After this date, your compute environment will be moved to an INVALID state.

更新せずにその日を迎えると、「INVALID」というステータスになるらしいので、そのままにしておくとこのコンピューティング環境を利用するジョブが実行されません。

そこで、コンピューティング環境を最新にしました。
本日はその備忘録です。

結論

AWS Batchで利用できる「ECS最適化インスタンスAMI」はAMI画面で以下文言で
フィルタリングして選ぶとやりやすい

AmazonLinux2
 ・「amzn2-ami-ecs-hvm」の中から選ぶ

AmazonLinux2022
 ・「al2022-ami-ecs-hvm」の中から選ぶ
     2023年6月13日時点の最新は「ami-0afd6c9431a9be6a9」 

AmazonLinux2023
 ・「al2023-ami-ecs-hvm」の中から選ぶ
   2023年6月13日時点の最新は「ami-0920e1db62029f4d1」

メモ解説

AWS Batchのコンピューティング環境には、Fargate、EC2、EKSのいずれかを選択できます。今回はEC2を選択した場合の話です。

コンピューティング環境の設定を進めていくと、EC2設定の部分で
「イメージタイプ」「イメージIDの上書き」という部分が表示されます。

「イメージタイプ」のプルダウンでは、記事執筆時点ではAmazonLinux2022および2023(AL2022,AL2023)を選択することはできませんが、「イメージIDの上書き」のところで対応するAMIIDを入力することで、AL2022およびAL2023のECS最適化AMIも利用することができます。

イメージIDを上書きすれば、AL2022,2023も利用できる。
上記AMIIDは記事執筆時点でのAL2023最新AMI(・・から脱落したばかりのAMI(笑))

このイメージIDの上書きは、基本的にはどんなAMIIDも入れることができるようですが、AWS Batchのコンピューティング環境で利用するためには、ECS最適化AMIを入れておいたほうがいいと思います。
理由は下記にもある通り、ECS用途に最適化されている(Dockerエンジン等が最初から入っている)ためです。またそのAMIを利用してAWSエンジニアにより事前動作確認されたものだからです。

背景

私は最初、素のAL2023のAMI(ECS最適化されていないAMI)を指定して実施しました。コンピューティング環境は無事に立ち上がってきたのですが、いざコンテナインスタンス内にログインしてみると、dockerコマンドが存在しないという経験をしました。

なので、AMIIDを確認するときに、それぞれのAmazonlinuxバージョンで
ECS最適化のAMIを見つける方法を備忘録としてまとめた次第です。

AMIの画面でパブリックAMIから「al2023-ami-ecs-hvm」と検索すると、
AL2023のECS最適化AMI一覧が出てきます。

AMI名には、日付やプラットフォームも記載されているのでわかりやすいですね。

それぞれのリリース内容に関しては、こちらにまとめてあるようです。

読んで下さってありがとうございました!

この記事が参加している募集

最近の学び

この記事が気に入ったらサポートをしてみませんか?