Azure Virtual Machines Azure VMの種類とそれぞれの使い道について解説
はじめに
Azureの仮想マシン(VM)のことについてよく質問される機会が増えてきたので、それぞれの特徴について解説します。
命名規則やサイズ、シリーズについて理解しておくと、使っている仮想マシンの名前を聞くだけでLLM作ってるのかな
とかデータ分析
に力をいれてるんだろうなとかある程度推測することが出来るので、勉強しておくことをおすすめします。
では、さっそくみていきましょう。
概要
Azure Virtual Machines (VM) は、Azure で提供されるオンデマンドでスケーラブルなコンピューティング リソースで、VM を実行する物理的なハードウェアを購入して維持する手間を省き、仮想化がもたらす柔軟性を提供するものです。
Microsoft Learnに掲載されている使用する用途
としては以下👇
- 開発とテスト
- Azure Virtual Machines は、アプリケーションのコーディングとテストに必要な特定の構成でコンピューターをすばやく簡単に作成出来る
- クラウドのアプリケーション
- フレキシブルなコンピューティングリソースを提供して、クラウドアプリケーションの開発に役立ちます。
- データセンターの拡張
- Azure 仮想ネットワーク内の仮想マシンは、組織のネットワークに簡単に接続できます。
Azure VMはざっくりまとめると、色々な使い方に合わせて使えるコンピューティングリソースで、物理機器準備する必要ないから便利だよと言ってます。
VMの名前の付け方
Azure VMの名前は、以下の命名規則があります。
[ファミリ] + [サブファミリ] + [vCPUの数] + [制約付きvCPU] + [追加機能] + [アクセラレータの種類] + [バージョン]
文言をまとめると以下になります。
値 | 説明 |
---|---|
ファミリ | VM ファミリのシリーズを示します |
サブファミリ | 特殊化された VM を区別するためにのみ使用 |
vCPU の数 | VM の vCPU の数 |
制約付き vCPU | 特定の VM サイズにのみ使用されます。 |
追加機能 | 小文字は、次のような追加機能を意味します。a = AMD ベースのプロセッサ b = ブロック ストレージのパフォーマンス d = ディスクフル (ローカル一時ディスクが存在) i = 分離サイズ l = 低メモリ。メモリ集中型のサイズより少ないメモリ量 m = メモリ集中型。特定のサイズの最大メモリ容量 p = ARM CPU t = 最少メモリ。特定のサイズの最小メモリ容量 s = Premium Storage 対応。Ultra SSD を使用可能 C = 機密 NP = ノード パッキング
|
アクセラレータの種類 | 特殊化された SKU および GPU SKU でハードウェア アクセラレータの種類を示します。2020 年第 3 四半期以降に公開された新しい SKU および GPU SKU のみ適用されます。 |
Version | VM ファミリ シリーズのバージョンを示します |
例えば以下のような感じで表記されます。
- M416ms_v2
値 | 説明 |
---|---|
ファミリ | M |
vCPU の数 | 416 |
追加機能 | m = メモリ集中型 s = Premium Storage 対応 |
Version | v2 |
名前にいろいろな情報を含めて命名しているので、名前を見るだけでどのようなVMか推測することが出来ます。
他にもこんな書き方もあります。
- Standard_DC8ads_v5
値 | 説明 |
---|---|
ファミリ | D |
サブファミリ | C |
vCPU の数 | 8 |
追加機能 | a = 特定のCPUアーキテクチャ d = ローカルストレージ対応 s = Premium Storage 対応 |
Version | v5 |
なんとなく命名規則の構成が理解出来たでしょうか。
ここからは、各ファミリと特徴についてみていきましょう。
ファミリ
ファミリには、以下のような種類があります。
- 汎用
- コンピューティング最適化
- メモリの最適化
- ストレージ最適化
- GPU 高速化
- FPGA アクセラレータ
- ハイ パフォーマンス コンピューティング
それぞれで使用する用途もことなりますので、ユースケースに合わせたファミリを使用することが必要です。
では、それぞれのファミリの特徴についてみていきましょう。
※価格については2024年11月時点の価格です。
汎用
CPUとメモリのバランスが取れたファミリ達。
小〜中規模のデータベース、および低〜中程度のトラフィックのWebサーバーに最適なVMです。
ファミリ名 | 説明 | 該当するシリーズ | ワークロード例 |
---|---|---|---|
A シリーズ | エントリレベルで効率的な仮想マシン。開発とテスト、小規模から中規模のデータベース、低トラフィックの Web サーバーに適しています。 | Av2 シリーズ、前世代の A ファミリ シリーズ | 開発およびテスト用のサーバー、低トラフィックの Web サーバー、小規模から中規模のデータベース、概念実証用のサーバー、コード リポジトリなど。BasicおよびStandardのAシリーズのVMは、2024年8月31日に廃止されます。
|
B シリーズ | バースト可能な仮想マシン。通常は低から中程度の CPU 使用率で、必要に応じて高い CPU パフォーマンスを発揮します。 | Bsv2 シリーズ、Basv2 シリーズ、Bpsv2 シリーズ、前世代 B ファミリ シリーズ | 開発およびテスト用のサーバー、低トラフィックの Web サーバー、小規模なデータベース、マイクロサービス、概念実証用のサーバー、ビルド サーバーなど。 |
D シリーズ | エンタープライズ グレードのアプリケーション、リレーショナル データベース、メモリ内キャッシュ、データ分析に適した仮想マシン。 | Dpsv6 シリーズ、Dplsv6 シリーズ、Dpdsv6 シリーズ、Dpldsv6 シリーズ、Dalsv6 シリーズ、Daldsv6 シリーズ、Dpsv5 シリーズ、Dpdsv5 シリーズ、Dpldsv5 シリーズ、Dpldsv5 シリーズ、Dlsv5 シリーズ、Dldsv5 シリーズ、Dv5 シリーズ、Dsv5 シリーズ、Ddv5 シリーズ、Ddsv5 シリーズ、Dasv5 シリーズ、Dadsv5 シリーズ、前世代の D ファミリ シリーズ | 多くのエンタープライズ グレードのアプリケーション、eコマース システム、Web フロントエンド、デスクトップ仮想化ソリューション、顧客関係管理アプリケーション、エントリ レベルとミッドレンジのデータベース、アプリケーション サーバー、ゲーム サーバー、メディア サーバーなど。 |
DC シリーズ | 機密コンピューティングを使用した D ファミリ。データの機密性を保護するワークロードに適しています。 | DCasv5 シリーズ、DCadsv5 シリーズ、DCas_cc_v5 シリーズ、DCads_cc_v5 シリーズ、DCesv5 シリーズ、DCedsv5 シリーズ、DCsv3 シリーズ、DCdsv3 シリーズ、前世代の DC ファミリ | セキュアなデータ処理を必要とする機密ワークロード |
コンピューティング最適化
高いCPU対メモリ比を備えたファミリ達。
中規模のトラフィックのWebサーバー、ネットワークアプライアンス、バッチプロセスおよびアプリケーションサーバーに最適なVMです。
ファミリ名 | 説明 | 該当するシリーズ | ワークロード例 |
---|---|---|---|
F シリーズ | 高いCPUパフォーマンスを必要とするワークロード向けに設計されています。トラフィックが中程度の Web サーバー、ネットワーク アプライアンス、バッチ プロセス、アプリケーション サーバーに適した仮想マシンです。 | Fasv6 シリーズ、Falsv6 シリーズ、Fsv2 シリーズ、前世代の F ファミリ シリーズ | バッチ処理、Web サーバー、分析、ゲームなど。 |
FX シリーズ | 電子設計自動化 (EDA)、大規模メモリのリレーショナル データベース、中規模から大規模のキャッシュ、インメモリ分析に適した仮想マシン。 | FX シリーズ | 電子設計自動化、リレーショナル データベース、インメモリ分析、キャッシュ |
メモリの最適化
メモリ最適化済みのメモリとCPUの高い比率を提供してくれるファミリ達。
リレーショナルデータベースサーバー、中〜大規模のキャッシュ、インメモリ分析に適したVMです。
ファミリ名 | 説明 | 該当するシリーズ | ワークロード例 |
---|---|---|---|
E シリーズ | リレーショナル データベース、中規模から大規模のキャッシュ、インメモリ分析に適した仮想マシン。 | Epsv6 シリーズ、Epdsv6 シリーズ、Easv6 シリーズ、Eadsv6 シリーズ、Ev5 シリーズ、Esv5 シリーズ、Edv5 シリーズ、Edsv5 シリーズ、Easv5 シリーズ、Eadsv5 シリーズ、Epsv5 シリーズ、Epdsv5 シリーズ、前世代の E ファミリ | SAP HANA、SAP S/4 HANA アプリケーション レイヤー、SAP NetWeaver アプリケーション レイヤー、メモリを大量に消費するエンタープライズ アプリケーション、ビジネス インテリジェンス アプリケーションなど。 |
Eb シリーズ | リモート ストレージのパフォーマンスが高い E ファミリ。 | Ebdsv5 シリーズ、Ebsv5 シリーズ | ストレージ集中型のリレーショナル データベース、中規模から大規模のキャッシュ |
EC シリーズ | 機密コンピューティングを使用した E ファミリ。 | ECasv5 シリーズ、ECadsv5 シリーズ、ECas_cc_v5 シリーズ、ECads_cc_v5 シリーズ、ECesv5 シリーズ、ECedsv5 シリーズ | データの機密性を保護するエンタープライズ ワークロード |
M シリーズ | 非常に大規模なデータベースや大量のメモリを必要とするワークロードに適した仮想マシン。 | Msv3 シリーズ、Mdsv3 シリーズ、Mv2 シリーズ、Msv2 シリーズ、Mdsv2 シリーズ | SAP HANA、SQL Hekaton、インメモリ型の大規模データベース |
ストレージ最適化
高いディスクスループットとIOを提供してくれるファミリ達。
ビッグデータ、SQL、NoSQLデータベース、データウェアハウス、大規模なトランザクションデータベースに適したVMです。
ファミリ名 | 説明 | 該当するシリーズ | ワークロード例 |
---|---|---|---|
L シリーズ | 大規模なデータベース、データ ウェアハウス、ビッグ データ アプリケーションに適した仮想マシン。 | Lsv3 シリーズ、Lasv3 シリーズ、Lsv2 シリーズ、前世代の L ファミリ | Cassandra、MongoDB、Cloudera、Redis などの NoSQL データベース、データ ウェアハウス、大規模なトランザクション データベース |
GPU 高速化
GPUでの使用に特化された仮想マシンを提供してくれるファミリ達(LLMとかのディープラーニングでよく使われる)
コンピューティング処理やグラフィック処理の負荷が高い視覚化ワークロードを意図して設計されたVMです。
ファミリ名 | 説明 | 該当するシリーズ | ワークロード例 |
---|---|---|---|
N シリーズ | 高度なグラフィックス処理や計算を必要とするワークロードに適した仮想マシン。 | ND H100 v5 シリーズ、NDv4 シリーズ、NDv2 シリーズ、ND シリーズ、NC T4 v3 シリーズ、NCas T4 v3 シリーズ、NC A100 v4 シリーズ、NCv3 シリーズ、NCv2 シリーズ、NC シリーズ、NVads A10 v5 シリーズ、NVv4 シリーズ、NVv3 シリーズ、NV シリーズ、前世代の N ファミリ | シミュレーション、ディープ ラーニング、グラフィックス プロセッシング、リモート視覚化 |
FPGA アクセラレータ
FPGA最適化済みの仮想マシンを提供してくれるファミリ達。
コンピューティング処理の負荷が高いワークロードを意図して設計されたVMです。
ファミリ名 | 説明 | 該当するシリーズ | ワークロード例 |
---|---|---|---|
X シリーズ | FPGA アクセラレータを搭載し、高度な計算処理を必要とするワークロードに適した仮想マシン。 | Xilinx U250 シリーズ | 高度なデータ処理、機械学習推論、暗号化処理、金融分析 |
ハイ パフォーマンス コンピューティング
HPCワークロードに特化したファミリ達。
数値流体力学、有限要素解析、フロントエンドおよびバックエンドEDA、レンダリング、分子動力学、気象シミュレーション、財務リスク分析に適したVMです。
ファミリ名 | 説明 | 該当するシリーズ | ワークロード例 |
---|---|---|---|
H シリーズ | ハイ パフォーマンス コンピューティング (HPC) ワークロードに適した仮想マシン。 | HBv4 シリーズ、HBv3 シリーズ、HBv2 シリーズ、HB シリーズ、HC シリーズ、前世代の H ファミリ | 流体力学、有限要素の分析、地震シミュレーション、貯留層シミュレーション、電子設計オートメーション |
最近特に使われているLLM用のGPUについて
特に最近はAIの学習や推論に使われるGPUがよく使われています。その中でもA100やH100がよく使われています。
用途に合わせてまとめてみました。
-
GPGPU, AI/DL用
- NC A100 v4、NCas T4 v3、NCsv3: 主に汎用GPU計算やAI/ディープラーニングのトレーニングに使用されるインスタンス。Tesla V100やA100 Tensor Core GPUを搭載し、メモリやローカルディスク容量も用途に合わせて異なります。
- ネットワーク: Azure Accelerated NetworkやNVLink、InfiniBandが利用可能で、GPU間通信が高速に行えるよう設計されています。
- 価格: 使用するGPUやインスタンスのスペックによって異なり、例えばNC A100 v4は1時間あたり$5.326です。
-
AI/DL用(大規模学習)
- ND A100 v4、ND H100 v5: 大規模なディープラーニングモデルのトレーニングに特化したインスタンス。A100やH100 GPUを最大8基搭載可能で、大容量のメモリとディスクを備えています。
- ネットワーク: InfiniBand HDRやNVLink GPU Interconnectを搭載し、大規模学習のためのデータ転送が高速に行えます。
- 価格: ND H100 v5 (8基使用時) は1時間あたり$27.197と高額ですが、高性能を必要とするトレーニングに適しています。
-
Gaming
- NGads V620: Radeon Pro V620を搭載したゲーミング用途のインスタンス。高いグラフィック性能が求められるゲームやビジュアル用途に向いています。
- 価格: 1時間あたり$3.61と比較的低コストで、West US 3リージョンで利用可能です。
-
可視化、CAD
- NVads A10 v5、NVv3: 可視化やCADのようなグラフィックが重要なワークロードに適しています。A10 Tensor CoreやTesla M60 GPUを使用しています。
- ネットワーク: Azure Accelerated Networkを使用し、ビジュアル用途にも対応した構成です。
- 価格: NVads A10 v5の価格は$0.563からで、手軽に利用できるインスタンスです。
次にNシリーズについて、特にLLMでの引き合いが多いので、まとめてみました。
-
NVシリーズ(NV & NVv3, NVadsA10 v5)
- 用途: 主に軽量なGPUデバイスやリアルタイム推論、ビジュアライゼーションに適しています。
- GPU: Tesla M60, NVIDIA A10 GPUなど
- 特徴: NVIDIA Triton Inference Serverとの互換性があり、インテリジェントエッジ用途で使いやすい。
-
NCシリーズ(NC, NCsv2, NCas_T4_v3, NCsv3)
- 用途: バッチ推論や基本的なトレーニング用途。
- GPU: Tesla K80, Tesla P100, NVIDIA T4 Tensor Core GPU, V100 Tensor Core GPUなど
- 特徴: 主に推論とエントリーレベルのトレーニングに適したシリーズで、AIやディープラーニングに向いています。
-
NDシリーズ(ND, NDv2, ND A100 v4, NDm A100 v4, ND H100 v5)
- 用途: 中規模から大規模なトレーニング、データ並列トレーニング、モデル並列トレーニング。
- GPU: Tesla P40, V100 Tensor Core GPU, A100 Tensor Core GPU(40GBおよび80GB)、H100 Tensor Core GPUなど
- 特徴: 高性能なトレーニングやディープラーニングワークロードに最適化されたシリーズで、大規模なAIモデルのトレーニングに向いています。
色々なGPUリソースがあって面白いですね。
まとめてみた感想ですが、これからさらにパフォーマンス高く、安くで提供出来るGPUリソースが増えていくのかなと思いました。
最後に
最近ではLLMの学習や推論用にA100やH100やどのGPUリソースを使うことが多いですが、その他にも色々な用途があるので、是非色々と試していただけると勉強になって良いかなと思いました。
それでは👋
参考資料
Discussion