AWS Fargateで使われているCPUについて調べてみた

fargate

AWS FargateのCPUは何が使われているのか疑問でしたので、調べてみました。

ArmのCPUはAWSGraviton2 が使われています。

AWS Fargate の AWS Graviton2 のサポートを発表 – サーバーレスコンテナのコストパフォーマンスが最大 40% 向上 | Amazon Web Services
AWS Graviton2 プロセッサは、64 ビットの Arm Neoverse コアを使用して AWS が

しかし、IntelCPU(X86)の方はどのCPUを使用しているか明記されていないようですので、実験して調べました。

結果、以下のいづれかが使われていることがわかりました!

ポイント

調べたこと:FargateでIntelCPU利用時に、どのCPUが使われているか
→ArmのCPUはAWS
Graviton2 が使われてることが分かっているので調査対象外
調査結果:以下のいずれかが使われている
Intel(R) Xeon(R) Platinum 8375C CPU(EC2 M6i インスタンス相当)
Intel(R) Xeon(R) Platinum 8275CL CPU(EC2 C5 インスタンス 相当)

 

結果を書いてしまいましたが、上記結果に至るまでの調査方法を書いていきます。

スポンサーリンク

調査方法

以下のDockerイメージを使わせていただきました。

Docker

上記Dockerイメージでは、コンテナ起動時にログにCPU名が出力されるので、ログを見てCPUを確認するという調査方法です。

具体的にやってこと

クラスタ作成
タスク定義作成
タスクの起動

まずは、クラスターを作成します!

クラスター作成

AWSマネージメントコンソール画面のECSダッシュボードから「クラスターの作成」ボタンを押下し、以下の設定でクラスターを作成します。

  • クラスター名:適切な名前
  • 上記以外、デフォルトのまま

次はタスク定義を作成します!

タスク定義の作成

AWSマネージメントコンソール画面のECSダッシュボードからタスク定義を選択し、「新しいタスク定義の作成」ボタンを押下し、以下の設定でタスク定義を作成する

  • タスク定義とコンテナの設定
    • タスク定義ファミリー:適切な名前
    • コンテナ – 1
      • 名前:適切な名前
      • イメージ URI:actions/lscpu:latest
      • 上記以外デフォルトのまま
    • 環境、ストレージ、モニタリング、タグの設定
      • 環境
        • CPU:.5VCPU
        • メモリ:1GB
    • 上記以外デフォルトのまま

次はタスクの作成(コンテナ立ち上げ)です!

タスクの作成

AWSマネージメントコンソール画面のECSダッシュボードで作成したクラスターを選択し、タスクタブ押下して、「新しいタスクの実行」ボタンを押下し、以下の設定で作成します。(このステップでコンテナを立ち上がります)

  • デプロイ設定
    • ファミリー:作成したタスク定義を指定
    • 上記以外デフォルトのまま
  • 必要なタスク:5
  • 上記以外はデフォルトのまま

調査結果

上記でタスクを立ち上げ、ログを確認したところ、CPUは以下の通りでした。

Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz

Intel(R) Xeon(R) Platinum 8275CL CPU @ 3.00GHz

Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz

Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz

Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz

まとめ

FargateでIntelCPU(X86)選択時に、どのCPUが使用されるかについて、明記されていなかったので、CPUにばらつきがある(起動タイミングによってCPUが変わる)のかなと思ったりしてました。

調査したところ、多少のばらつきはあり、EC2 M6iまたはC5 インスタンス相当のCPUが使われているという結果でした!

まとめ

調査内容:FargateでIntelCPU利用時に、どのCPUが使われているか
調査結果:以下のいずれかが使われている
Intel(R) Xeon(R) Platinum 8375C CPU(EC2 M6i インスタンス相当)
Intel(R) Xeon(R) Platinum 8275CL CPU(EC2 C5 インスタンス 相当)