[アップデート] Amazon EC2 のインスタンスタイプを選択する時に、ワークロード条件にあわせたアドバイスを受けることが出来るようになりました
いわさです。
Amazon EC2 を作成する際にインスタンスタイプを選択する必要があります。
インスタンスタイプの一覧ページには想定されるユースケースやスペックなど詳しい情報が記載はされていますが、非常に多くのインスタンスタイプが存在しているため何を選択したら良いか迷うことがあります。
今朝のアップデートで、ワークロードのユースケースや要件を入力することでどのインスタンスタイプを選択するのが良さそうかというアドバイスをマネジメントコンソール上で受けることが出来るようになりました。
仕組みとしては、Amazon Q と統合された機能のようです。
早速使い勝手などを確認してみましたので紹介したいと思います。
利用方法
この機能の開始方法ですが、私が確認した限りでは次の 2 パターンがあります。
ひとつめは EC2 インスタンスを新規作成する際にインスタンスタイプを選択する箇所がありまして、そこに「アドバイスを受ける」というリンクが新たに追加されています。
ふたつめは、起動テンプレートの作成画面です。
こちらでも EC2 インスタンス作成時と同様にインスタンスタイプを選択する箇所がありまして、同様にリンクが追加されています。
こちらのリンクを押すと次のようなダイアログが表示されます。
これから作成しようとしている EC2 が担うワークロードタイプやユースケースなどを選択すると、このインスタンスタイプが良いよというアドバイスを説明付きで得ることが出来ます。
なお、今朝私が確認した時点ではまだ日本語化されていませんでした。
一部ですが、ワークロードタイプは次のようなカテゴリから選択が出来ます。
Web サーバーなのか、RDBMS なのか、CI/CD の基盤なのかなどです。
ユースケースは次のような感じで、HPC やゲームなどこちらも様々な選択肢が用意されています。
トラフィック特性やスループット特性などをインスタンスタイプ選定におそらく反映してくれるのかなという感じです。
選択したワークロードタイプによってユースケースの内容が変わったりはしませんが、ワークロードタイプとユースケースの組み合わせによってはアドバイス結果が「なし」となる場合があります。後述します。
あとはそのワークロードが何を優先するかも選択出来ます。
デフォルトだと料金 + パフォーマンスのバランスが良いものを選んでくれるのですが、パフォーマンス優先だったりコスト優先だったり。
あとは CPU も選択が出来ます。
いくつかのパターンでアドバイスを受けた感じ、どうやらデフォルトだと Graviton 推しみたいです。
なので、例えばミドルウェアが Intel 前提であればこちらで選択しておくと Graviton は選択されなくなります。
後は追加のパラメータを入力することが出来ます。
vCPU 数やメモリ、ネットワークパフォーマンスなどです。
今回のアドバイス機能ではインスタンスサイズまでは提案されないのですが、上記がサポートされているインスタンスタイプが優先されて提案される感じですね。
Advanced parameters はデフォルトは設定されておらず、選択した項目ごとに次のように最小から最大までの数値を指定します。
アドバイスを受ける
上記からワークロード特性を選択し、「Get instance type advice」を押すと提案内容を作成してくれます。
ここで裏で Amazon Q が実行されているのかなという感じですね。
一瞬で提案内容が表示されます。
先ほど少し触れましたが、インスタンスファミリーなどが提案はされるのですがインスタンスサイズまでは提案されませんでした。
また、複数提案されることが多いのですが、その中からさらにどれを選べば良いかについては「Additional information」を確認することで、ユーザーが選択する際に役立てることが出来ます。
上記であれば M7g か C7g を基本に考えつつ、ネットワーク帯域やストレージパフォーマンス要件に合わせて C7gn や M7gd を選択するというオプションもある感じですね。なるほど。
なお上記画面で「View recommended instance family details」のボタンを押すと、次のように従来のインスタンスタイプ画面へ、アドバイス内容でフィルタリングされた状態で遷移します。
なお選択肢した組み合わせなどからアドバイス結果が得られない場合もありまして、その場合は次のような表示となりました。
あるいは、ピンポイントなアドバイスがないけどもこの条件に近いのでは?というものを替わりに提案してくれることもあります。なるほど。
いくつかアドバイス結果などのまとめ
精度というか、どんな選択肢をしたらどういうインスタンスタイプがアドバイスされるのだ?というのが気になる方も多いと思います。
私がいくつか試した感じだと次のようにアドバイスされましたので参考までにまとめておきます。
Workload type | Use case | Priority | 提案結果 |
---|---|---|---|
Web/App Server | Web hosting | Price/Performance | M7g, C7g, C7gn, M7gd, C7gd |
Web/App Server | Web hosting | High performance | M7g, C7g, C7gn, M7gd, C7gd |
Web/App Server | Web hosting | Low cost | T4g, C6gn, C6gd |
Web/App Server | Application Hosting | Price/Performance | M7g, C7g, C7gn, M7gd, C7gd |
Data Warehousing | Data Scientce & Analytics | Price/Performance | R7g, Im4gn, Is4gen |
Relational Database Management System (RDBMS) | General Database & Data Storage Applications | Price/Performance | R7g, Im4gn, Is4gen, R7gd |
Scientific Simulations/Numerical Computing | High Performance Computing (HPC) | Price/Performance | G5g, Hpc7g, C7g, C7gn, C7gd |
CPU の選択を行ってないので基本的に Graviton が提案されています。
コスト優先であれば T 系が提案されていたり、データワークロードであれば M 系や C 系よりも R 系が提案されていたり、HPC であれば G 系や Hpc が提案されていますね。
個人的には妥当なのではないかなと思いました。
Amazon Q に直接聞いてくれても良い
アナウンスや公式ドキュメントの記述では Amazon Q と統合されているようなことが記載されていましたが、実際に Amazon Q に同じようにワークロードタイプやユースケース情報を伝えてインスタンスタイプの提案を受けることももちろん出来ます。
似たような結果が得られていますね。
似たようなというかほぼ同じか。
さいごに
本日は Amazon EC2 のインスタンスタイプを選択する時に、ワークロード条件にあわせたアドバイスを受けることが出来るようになったので使い勝手などを確認してみました。
まだ日本語化が追いついていませんでしたが、選択に悩んだり、あるいは公式ドキュメントなどを調べるのが面倒な時もあるので結構便利なんじゃないかなと思いました。
使い方としては新規インスタンスの場合はこの機能であたりをつけて、既存インスタンスは AWS Compute Optimizer あたりを活用するのが良さそうです。