AWS Batchのコンピューティング環境にAmazonLinux2023(ECS最適化)を利用する
こんにちはこぐまです。
久しぶりにAWSの備忘録です。
今回はAWS Batch。
AWS Batchのコンピューティング環境として長くサポートされてきた
「AmazonLinux」ですが、2023年6月30日をもってサポート終了となるという連絡が来ていました。
更新せずにその日を迎えると、「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の上書きは、基本的にはどんな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一覧が出てきます。
それぞれのリリース内容に関しては、こちらにまとめてあるようです。
読んで下さってありがとうございました!