10
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

AWS Batch でコンテナストレージサイズを拡張する(起動テンプレート使用)

Last updated at Posted at 2019-05-01

概要

次の手順を示します

  • AWS Batchで起動されるコンテナのストレージ容量はデフォルトで10GBになっている
  • 処理するデータ量が10GBを超える場合、ストレージ割当を増やしたい
  • EC2の起動テンプレート(Launch Template)を使うことで(事前にAMIを作成せずに)対処する

補足

  • AWS Batchの実態はAmazon ECSであり、ECSはDockerです
  • Dockerが割り当てるストレージデフォルトが10GBなのでそういうことになるのだと思われます

デフォルトストレージが10GBであることを確認

  • AWS Batchは準備手順が少し複雑で、はじめての利用者には難しいと思います
  • そういう背景からだと思うのですが、手順ウィザードが準備されています
  • ウィザードに従って設定すれば busyboxイメージ(docker image)を起動して「hello world」を出力(CloudWatch Logsへ)することができます
  • hello worlddf -h に変更することでコンテナに割り当てられたストレージ容量を確認します

ジョブ定義

コンテナプロパティ部分

image.png

実行結果

CloudWatchLogsで確認(10GBといいつつ、9.8GBですが)
これを100GBにします

image.png

ストレージ拡張設定(起動テンプレート作成)

EC2ページの起動テンプレート→起動テンプレートの作成で、「Storage100G」というテンプレートを作成しました
設定箇所は2箇所で、他はデフォルトです

設定箇所(1):ストレージ(ボリューム)

  • Device Nameに /dev/xvdcz を指定します
  • ECSで使用されるAMIがこのデバイス名なので、合わせる感じです

image.png

設定箇所(2):高度な詳細 → ユーザーデータ

ユーザーデータに下記を指定します
起動時(かつDockerd起動前)にストレージオプションを指示する、ということですね
(参考)https://aws.amazon.com/jp/premiumsupport/knowledge-center/increase-default-ecs-docker-limit/

Content-Type: multipart/mixed; boundary="==BOUNDARY=="
MIME-Version: 1.0

--==BOUNDARY==
Content-Type: text/cloud-boothook; charset="us-ascii"

cloud-init-per once docker_options echo 'OPTIONS="${OPTIONS} --storage-opt dm.basesize=100G"' >> /etc/sysconfig/docker

--==BOUNDARY==--

image.png

ストレージ拡張設定(AWS Batchの設定)

コンピュート環境の作成

  • コンピューティングリソースの設定→Launch templateに上記で設定した起動テンプレートを指定します

image.png

ジョブキューの編集

  • ジョブキューを編集し、上記で作成したコンピュート環境を指定します

image.png

ストレージ拡張した状態でジョブを投入して結果を確認

ジョブ投入

  • 最初に作成したジョブ( df -h を実行するジョブ)を投入します

image.png

実行結果

  • CloudWatchLogsで確認
  • Sizeが97.9Gになっていることが確認できます

image.png

まとめ

参考にした記事

ありがとうございます 🙏

10
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?