こんにちは!現在研修中の日高です。
Amazon EC2(今後はEC2と表記)を構築していく中で、どのインスタンスタイプを選べばいいか悩んだ経験はありませんか?
私はよくあります。
ですので、EC2の選び方について調べたものを自身の備忘録がてらまとめたいと思います。
前提知識(インスタンスタイプについて)
EC2インスタンスタイプの要素
EC2インスタンスタイプの選定方法について今回書かせてもらいますので、簡単にEC2インスタンスタイプについて説明をします。
インスタンスタイプは以下の図のように4つの要素にて構成されています。
インスタンスファミリー
主に5つのカテゴリーに分けることができます。
インスタンス世代
このインスタンス世代は、言葉の意味通り世代数を表しています。
数字が大きい方が新しい世代になります。
そのため、世代が新しい方が高性能でコストパフォーマンスも高いため、極力最新世代のインスタンス利用が推奨されています。
インスタンスの追加機能
こちらはインスタンスへの追加機能になります。
ですので、この記載がないインスタンスタイプも存在します。(M5.largeやC5.largeなど)
以下の表がインスタンスの追加機能一覧です。
インスタンスサイズ
CPU、メモリ、ネットワークのキャパシティによって、インスタンスサイズが分類されています。
インスタンスサイズは、nano →micro →medium →small →large →・・・のようにサイズが大きくなります。
サイズが1段大きくなるにつれ、CPU、メモリのサイズが倍もしくはインスタンスサイズ名の係数に応じて倍増、価格もそれに比例して増加していきます。
注意点として、ルートボリュームとして Amazon EBS を利用される際には、ユーザーがディスク容量を指定する必要があります。
インスタンスタイプの選定方法
インスタンスタイプの選別方法として、各要素ごとに見ていきます。
結論として一言でまとめると、「基本的には汎用のMインスタンス(M5.largeなど)を選択し、そこから要件や重視するリソースに合わせてタイプを変えていく」です。
インスタンスファミリーの選定方法
正確には使うOSやアプリによって選定方法は変わりますが、方針としては以下の図のようになります。
インスタンス世代の選定方法
世代が新しい方が高性能でコストパフォーマンスも高いため、極力最新世代のインスタンス利用が推奨されています。
追加機能の選定方法
選定ポイントを簡潔に書いていきます。
a.g.i→アプリやOS等の要件によってプロセッサを選択する
d→インスタンスストアボリュームを利用したいかどうか
※ブロックストレージ(インスタンスストアボリューム、EBS)の選定方法について詳しくは以下をご覧ください
- n→ネットワークの帯域幅が大きく、かつ EBS 専用の帯域幅も確保したい場合
※詳しくは以下をご覧ください
e→同世代であるが、よりvCPUやメモリ、インスタンスストアボリュームを強化したい場合
z→より高周波なコアを搭載しているものを利用したい場合
インスタンスサイズの選定方法
クラウドのメリットを活かして、徐々に調整していけばいいと思います。
例えば、ある程度余分なスペックを選択しておき後から調整するなどです。
※インスタンスタイプについて詳しくは以下をご覧ください aws.amazon.com
まとめ
概要程度ではありますが、簡単にEC2のインスタンスタイプの選定方法についてまとめさせていただきました。
本記事が誰かの助けになれば幸いです。
参考資料
日高 僚太(執筆記事の一覧)
2024 Japan AWS Jr. Champions / 2024 Japan AWS All Certifications Engineers
EC部クラウドコンサルティング課所属。2022年IT未経験でSWXへ新卒入社。
記事に関するお問い合わせや修正依頼⇒ hidaka@serverworks.co.jp