AR ホームベーカリー

オイラのアウトプット用ホームベーカリー!

Fargate の料金を計算する

いつもざっくり AWS で計算していたのだけど、 vCPU 8, 16 が選択できず

「まあ Linux だけサポートしてるし、ざっくりの範疇を超えてるかー。 手動で計算すっか」

と思っていたら、公式のコストシミュレータがちゃんと使えるものになっていた。

とはいえ相変わらず AWS のコストシミュレータなんか見づらいんだよなあ。

公式のコストシミュレータ

calculator.aws

各項目について

ガッと。

Number of tasks or pods

タスクの実行数。 Terraform 的に言うと aws_ecs_service.ローカル名.desired_count

動かしっぱなし想定なので、 per month を選択した上で実行したいタスクの数を入れれば良い。 片肺なら 1 で最低限縮退するなら 2 とかですかね。

Average duration

タスクの実行時間。 基本的に動かしっぱなしのはずなので hours を選択した上で、上限の 730 を入れておけば良い。

Amount of vCPU allocated

タスクの vCPU 数。 Terraform 的に言うと aws_ecs_task_definition.ローカル名.cpu

コストシミュレータでは CPU unit 数ではなく vCPU 数で指定するらしい。

Amount of memory allocated

タスクの RAM 数。

1GiB 以下を指定することは早々無いと思うので、 GB を選択した上で利用する数を指定してください。

Amount of ephemeral storage allocated for Amazon ECS

タスク内のコンテナにアタッチするストレージ。

20GiB が最低値ですが、最低値なら追加料金ナシとのことなので、頑張ってイメージ圧縮してストレージは小さくいきましょう。 追加で必要なら S3 とか EFS マウントした方がいいかも。

1 task, 730 Hour, 1 vCPU, RAM 2GB, Storage 20Gib

一ヶ月稼働しっぱなしで t2.small みたいな状態にすると以下のようになります。

44.98 USD

ちなみに vCPU 専有数を 1 以下にしないと、RAM 1 GB とかにできません。