0
1

マルチアーキテクチャーでのコンテナデプロイワークショップを受けてきて

Posted at

経緯

会社の人がGravitonがこの後重要になってくるからGraviton勉強してきてとAWSのアーキテクトの人にお願いした結果、
このワークショップを案内されて受けてきました。

受ける前の私

  • GravitonってEC2みたいなAWSのサービスか何かか?って認識
  • マルチアーキテクトって何がいいのか、流行ってるのかな

でてくる用語すらわかってない何もわかってない状態がスタート時点だった。

Gravitonからマルチアーキテクトの必要性について

Gravitonとは

GravitonはAmazonが設計したarmベースのプロセッサ
AWSのサービスで最適化されるように設計してるそう。

Appleが独自のプロセッサを作ったりしてるように
Amazonも他社に振り回される要素を減らしたいので、推してる。
てことは、Intelのx86系よりGravitonを搭載してるインスタンスの方を安く、性能もでるようになっていきそう。
使える状態にしていった方が受けれる恩恵はありそうである。

詳細は以下の資料に記載してあります。
[https://pages.awscloud.com/rs/112-TZM-766/images/AWS-Black-Belt_2023_Amazon-Graviton_0430_v1.pdf]

CPUの差の影響

PCゲームなどで聞きますが、RyzenのCPUだとラグが発生するなどが起きます。
アプリケーションも同じでCPUがx86かarmかで動作が変わってきます。

今後使っていった方がいいGravitonはarm。
それに対して、2024/5時点でメインとなるCPUはIntelのx86。
CPUに差分があっても移行できるOR動作するアプリになっていけるのがベストになっていきそうです。

マルチアーキテクトとは

Dockerなどのコンテナサービスは以下をまとめてイメージ化してました。

  • アプリケーション
  • ライブラリ
  • OS

マルチアーキテクトではこれにCPUが追加され、以下がセットになってます。

  • アプリケーション
  • ライブラリ
  • OS
  • CPU

ワークショップでは、CPUの種類ごとにNodePoolを定義しておくことによって、
たてるインスタンスがx86だったら、x86用の定義をもとにコンテナをたちあげてくれるようになります。

マルチアーキテクトに対応した場合のメリット

1番はスポットインスが有効に使えること
2024/5時点ではx86系のインスタンスの方がAWSのリソースは潤沢だそうです。
つまり、スポットインスタンスに割り当てられやすいです。
それに対して、オンデマンドインスタンスはarmの方が安いそうです。
そのため、マルチアーキテクト構成にすることによって、費用を抑えることができます。

CPUの移行検証ができること、性能最適になるかの検証ができること
armに移行していく際、過渡期に複数のCPU構成で動かしてくことによって、影響を少なくしながら検証ができます。

ハンズオンの概要

  1. 各CPUによるDockerイメージによるビルド
    x86と異なり、armのイメージはどのように作るのかを実践できた
  2. CPUの種類を指定したコンテナをそれぞれ立ち上げ
  3. 各CPUを定義するためのNodePoolsを作成
    CPUごとのテンプレに依って、差分を吸収していると捉える
  4. x86でもarmでも同じようにコンテナが立ったり、割合を決めて両のCPUが共存するクラスターを作る

全体でarmとx86が共存した環境を立ち上げるためのやり方を、ハンズオンで試していくことができます。
どのような定義をいれることによって、インスタンスを使い分けたり、差異を吸収したりできるのかを
作った環境で見比べながらできたので、差分から理解をしやすいワークショップでした。

0
1
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
0
1