EC2インスタンスタイプの意味と特徴の覚え方
EC2 のインスタンスタイプ、たくさんありますよね。
それぞれの特徴を覚えられなかったので、インスタンスタイプの意味を調べてみました。
ネーミングポリシー📝
インスタンスタイプはこのような表記になっています。
[ファミリー][世代](追加機能).[サイズ]
たとえば、m5.large
は
Mファミリー
, 5世代
, largeサイズ
ということになります。
世代は大きいほど新しく、高性能でコストパフォーマンスが良くなります。
基本的には新しいものを選ぶのが良いようです。
サイズは大きいほど CPU 数とメモリ量が大きくなります。
また、稼働時間あたりの値段も比例して増加します。
nano < micro < small < medium < large < xlarge < 2xlarge < 4xlarge < ...
世代とサイズは分かりやすいですね!
次に、ファミリーと追加機能についてです。
ファミリー👪
ファミリーは大きく5つの種類に分けられます。
種類ごとにファミリーの覚え方を表にまとめました。
種類 | 特徴 | ファミリー |
---|---|---|
汎用 | バランスが取れている | T, M, A, Mac |
コンピューティング最適化 | 計算パフォーマンスが高い | C |
メモリ最適化 | メモリ量が多くて高速 | R, X, z |
高速コンピューティング | GPU が搭載されている | P, G, F, Inf |
ストレージ最適化 | ストレージアクセスが速い | I, D, H |
■汎用
ファミリー | 特徴 | 覚え方 |
---|---|---|
T | CPU バースト[1]可能 | Turbo |
M | さまざまな場面で利用できる | Most scenarios |
A | Arm プロセッサ搭載 | Arm |
Mac | Apple Mac mini 搭載 | Mac |
■コンピューティング最適化
ファミリー | 特徴 | 覚え方 |
---|---|---|
C | 計算パフォーマンスが高い | Compute |
■メモリ最適化
ファミリー | 特徴 | 覚え方 |
---|---|---|
R | メモリ最適化 | RAM |
X | 最大メモリ量が大きい | Extra large memory |
z | 高周波なコア搭載 | 周波数(Hz) |
■高速コンピューティング
ファミリー | 特徴 | 覚え方 |
---|---|---|
P | 汎用 GPU 搭載 | General Purpose |
G | グラフィックスに最適化 | Graphics |
F | FPGA[2] カスタマイズ可能 | FPGA |
Inf | 機械学習推論に最適化 | Inference |
■ストレージ最適化
ファミリー | 特徴 | 覚え方 |
---|---|---|
I | NVMe SSD 搭載で I/O 性能高い | I/O performance |
D | 最大 48 TB の HDD 搭載 | Dense storage |
H | 高ディスクスループット | High disk throughput |
追加機能🔌
追加機能がついたインスタンスタイプも存在します。
たとえば、m5a.large
は
m5.large
に a
の追加機能がついているインスタンスタイプです。
また、M5zn
や C6gn
など機能が複数ついているタイプも存在します。
各機能についても同じようにまとめました。
機能 | 特徴 | 覚え方 | インスンタンス例 |
---|---|---|---|
a | AMD CPU 搭載 | AMD CPU | T3a, M5a, R5a |
b | EBS パフォーマンスが高い | Block storage performance | R5b |
d | 内蔵ストレージ(インスタンスストア)付加 | Directly attached instance storage | M5d, C5d, R5d, Z1d |
e | CPU やメモリ搭載量が異なる | Extra capacity | X1e, I3en, D3en |
g | AWS Graviton[3] プロセッサ搭載 | Graviton | T4g, R6g, C6gn |
n | ネットワークスループットが高い | Network throughput | M5n, C5n, R5n |
z | 高周波なコア搭載 | 周波数(Hz) | M5zn |
例外なタイプ💥
■ベアメタル
一般的なインスタンスは仮想化環境が用意されますが、ハードウェアに直接アクセス可能なベアメタルインスタンスが存在します。
このインスタンスは m5.metal
というような表記で、サイズの部分が metal
になります。
m5d.metal
など、追加機能付きのタイプもあります。
■ハイメモリ
メモリ最適化ファミリーには、ハイメモリインスタンスが存在します。
このインスタンスは u-6tb1.metal
というような表記で、ネーミングポリシーに沿わないタイプです。
一応このようなタイプもあるということだけ覚えておきましょう。
まとめ📌
- インスタンスタイプの表記は
[ファミリー][世代](追加機能).[サイズ]
! - それぞれ文字の意味を覚えれば、インスタンスタイプから特徴がわかる!
- 一部例外なインスタンスタイプもあるよ!
最後までご覧いただき、ありがとうございました。
参考
-
一時的に CPU 使用率を上げる機能。詳しくは → バーストパフォーマンス(T系)インスタンスの特徴を理解して上手に利用しよう | AWS Startup ブログ ↩︎
-
"field-programmable gate array" の略で、製造後に購入者や設計者が構成を設定できる集積回路のこと(FPGA - Wikipedia より引用) ↩︎
-
AWS が提供する Arm ベースのプロセッサ。詳しくは → AWS Graviton (EC2 に最良の料金とパフォーマンスを提供 | AWS ↩︎
Discussion
突然のコメントで申し訳ありません。プログラミングの勉強をはじめたばかりの初心者です。
AWSについても勉強をはじめたのですが、そもそも「インスタンスタイプ」とは何かが理解できていません。どちらのページもあくまで「インスタンスタイプ」が何かはわかった上での解説が多く、、恐縮ですが、「インスタンスタイプ」とは何かを簡単に教えていただけないでしょうか。
コメントありがとうございます!
インスタンスタイプは、簡単に説明すると仮想マシン(EC2インスタンス)のスペックを表すものです!
具体的には、仮想マシンの計算能力やメモリ量などが決まります。
仮想マシンを作成するときにインスタンスタイプを指定するのですが、
この記事は「インスタンスタイプからどんなスペックの仮想マシンなのか分かるよ!」という内容です!
ご質問の答えになっていますでしょうか…?
記事そのものは良いのですが、参考資料として貼ってあるリンク先のうち、一番下の「EC2 Instance Type Names Cheat Sheet」にアクセスしたら、いくつかのサイトをリダイレクトされてトロイの木馬(HTML/FakeAlert)をセキュリティソフトが検出しましたので、リンクの削除をお願いします。