EC2 のインスタンスタイプの表記について

記事タイトルとURLをコピーする

SRE部佐竹です。
最近、呪文みたいになってきた EC2 の Instance Type の表記について見分け方を解説します。

はじめに

以下の記事を更新したブログを定期的に公開しているのですが、m5dn や r5ad などの表記がとっつきにくいという方もいらっしゃるかと思いますので、この命名規則について整理をしたいと思います。

blog.serverworks.co.jp

インスタンスタイプの構成要素

私の見解(理解)ですが、おおよそ以下のような区分けになっています。

f:id:swx-satake:20200813113257p:plain

これらの構成要素全体でインスタンスタイプを表しています。

インスタンスファミリー

ファミリーは m や c, t, r などの最初の部分を指します。場合によっては真ん中にある「.」より前全てをファミリーと呼ぶ場合もありますが、今回は一番前の英字をファミリーとしています。以下に、簡単に現行の各ファミリーの特徴を記載します。

Family 特徴
a CPU が Arm であり AWS Graviton プロセッサで動作する初の EC2 インスタンス
m 汎用とされるインスタンスファミリー
t ベースパフォーマンス&バーストを持つ代わりに m ファミリーと比較すると低コストな汎用インスタンスファミリー
c vCPU の能力が高く割り振られておりCPU処理に特化している
r 積載されるメモリの割り当て量が多い
x 巨大なメモリとCPUを備えるモデル。HPCなどの用途に向く
z 全コアのクロックを最大 4.0 GHz に維持できるファミリー
d Dense-storage 搭載。巨大なHDDローカルストレージを備え、MPP 等の用途向け
h d と同様の用途だが、ENAに対応。最大ローカルストレージは d の方が多い
i NVMe SSD ローカルストレージが提供されるファミリー
f FPGA (Xilinx UltraScale+ VU9P FPGA) 搭載のファミリー
g NVIDIA の GPU が搭載されており、機械学習など GPU が必要な用途向け
p 汎用 GPU インスタンスで、 g と比較するとコストパフォーマンスは劣る
inf AWS Inferentia 搭載。機械学習の推論用途

インスタンスの世代

2020年8月現在は、 AWS Graviton2 搭載の第6世代まで登場していますので、世代の部分は1から6のどれかの数字が入ります。
世代関連で注意が必要なのは、 Nitro 世代への切り替えです。第4世代より以前(つまり m4 や c4 など)は Xen ベースインスタンスタイプ であり、これをこのまま Nitro(KVM) 世代に移行することはできません。事前に ドライバーのインストールやアップデートが必要になります。なお、 t ファミリーは t1, t2 が旧世代で、t3 が Nitro 世代となっています。切り替えに必要な情報は、以下の公式ドキュメント等をご参考ください。

docs.aws.amazon.com

追加情報

古いインスタンスタイプでは「.」の前は常に数字でした。ですが、 m5d などの表記がここ数年使われており、少々これがカオスみを増しています。この追加情報部分も以下にまとめてみました。s はレアケースですので今回は省略しています。

表記 意味 特徴
a amd CPU が AMD ベースであり、Intelベースと比較すると10%程度のコスト削減が可能である
d disk(local) 旧世代のインスタンスではデフォルトで提供されていたインスタンスストアボリュームを内蔵している。Nitro 世代で d が付与されていないインスタンスタイプには、インスタンスストアボリュームは基本的に利用できない
n network ネットワークの帯域幅が大きく、かつ EBS 専用の帯域幅も保持している
g graviton2 ARM ベースの AWS Graviton2 プロセッサを搭載。なお第1世代の AWS Graviton プロセッサを搭載しているのは a1. となっている
e enhanced 同世代であるが、よりvCPUやメモリ、インスタンスストアボリュームを強化したもの。現状、x1⇒x1e と i3⇒i3en の2種類でのみ利用されている (このeは extended のeという説も)
ad amd, disk m5ad, r5ad が存在する
dn disk, network m5dn, r5dn, g,4dn, p3dn が存在する
gd graviton2, disk m6gd, c6gd, r6gd が存在するが、東京リージョンでは2020年8月現在利用できるインスタンスタイプは存在しない
en enhanced, network i3en でのみ提供されている組み合わせ

この追加情報箇所ですが、現状3つ合わせて表記されることはない状況です。つまり m5gdn 等は存在していません。

インスタンスサイズ

インスタンスサイズは、現状存在しているのは以下の通りです。これは、リザーブドインスタンスの正規化係数のページを見るとわかりやすいため、こちらにもそのまま記載しています。

インスタンスサイズ 正規化係数
nano 0.25
micro 0.5
small 1
medium 2
large 4
xlarge 8
2xlarge 16
3xlarge 24
4xlarge 32
6xlarge 48
8xlarge 64
9xlarge 72
10xlarge 80
12xlarge 96
16xlarge 128
18xlarge 144
24xlarge 192
32xlarge 256

まとめ

今回のブログでは、EC2 インスタンスタイプの表記についてその構成要素を整理してみました。最近文字数が増えてきているので、もしかするとこの先はもっと複雑な表記になって行くのかもしれません。
何かのお役に立てば幸いです。
以上になります。

佐竹 陽一 (Yoichi Satake) 記事一覧はコチラ

SRE2課所属。AWS資格12冠。2010年1月からAWSを利用してきました。
AWSのコスト削減、最適化を得意としています。