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

以下の記事を更新したブログを定期的に公開しているのですが、m5dn や r5ad などの表記がとっつきにくいという方もいらっしゃるかと思いますので、この命名規則について整理をしたいと思います。
2023年追記
以下の公式ドキュメントに説明ページができていました。
現在は、上記 AWS の公式ドキュメントを確認することを推奨します。
インスタンスタイプの構成要素
私の見解(理解)ですが、おおよそ以下のような区分けになっています。

これらの構成要素全体でインスタンスタイプを表しています。
インスタンスファミリー
ファミリーは 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 世代となっています。切り替えに必要な情報は、以下の公式ドキュメント等をご参考ください。
追加情報
古いインスタンスタイプでは「.」の前は常に数字でした。ですが、 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、D3en で提供されている組み合わせ |
| b | block storage | r5b のみで提供。最大 60 Gbps の帯域幅と 260,000 IOPS の EBS パフォーマンスをサポート |
| zn | GHz , network | m5zn は z1d インスタンスの後継で m5 のみで提供。周波数は 最大 4.0 GHz から 4.5 GHz に向上しつつネットワークも強化されている |
| i | intel | Intel CPU で動作するインスタンス。「2021年8月発表(M6i など)」 |
この追加情報箇所ですが、現状3つ合わせて表記されることはない状況です。つまり m5gdn 等は存在していません。
関連ブログ
2020年末の re:invent で追加された zn と b については以下で詳しく説明しております。
インスタンスサイズ
インスタンスサイズは、現状存在しているのは以下の通りです。これは、リザーブドインスタンスの正規化係数のページを見るとわかりやすいため、こちらにもそのまま記載しています。
| インスタンスサイズ | 正規化係数 |
|---|---|
| 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) エンジニアブログの記事一覧はコチラ
セキュリティサービス部所属。AWS資格全冠。2010年1月からAWSを業務利用してきています。主な表彰歴 2021-2022 AWS Ambassadors/2020-2025 Japan AWS Top Engineers/2020-2025 All Certifications Engineers。AWSのコスト削減やマルチアカウント管理と運用を得意としています。