Nutanix AHVで仮想マシンを運用していると、「CPU使用率が高いのでvCPUを増やしたい」「メモリ不足なのでRAMを追加したい」ということがあります。
Nutanix AHVではVMのCPU・メモリ構成を変更できます。また、ゲストOSなどの条件を満たしていれば、VMを停止せずにCPUやメモリを追加するHot Addも可能です。
この記事では、Nutanix AHVでVMのCPU・メモリを増やすときの基本的な考え方と、Hot Addするときの注意点を解説します。

最初に現在のCPU・メモリを確認する
リソースを増やす前に、まず現在のVM構成とゲストOSから見えているCPU・メモリを確認します。
Linuxの場合は、例えば次のコマンドを利用できます。
lscpu
nproc
free -h
CPU負荷やメモリ使用状況も確認します。
top
free -h
単に「遅いからCPUを増やす」のではなく、本当にCPUやメモリがボトルネックになっているのか確認してから変更するのが重要です。
Nutanix AHVでVMのCPUを増やす
Prismから対象VMの設定を開き、CPU構成を変更します。
例えば現在2 vCPUで動作しているVMを4 vCPUへ増やす、といった変更です。
変更前:2 vCPU
↓
変更後:4 vCPU
ただしNutanix AHVでは、CPU構成にvCPU数とcores per socketという考え方があります。
単純にCPUを増やしたい場合でも、現在のCPUトポロジーを確認してから変更してください。
CPUは多ければ多いほど速いわけではない
CPU不足だからといって、必要以上のvCPUをVMへ割り当てればよいとは限りません。
Nutanixの技術情報でも、必要以上のvCPUを割り当てることはAHVのスケジューリングやリソース利用の面で有利とは限らず、ワークロードに必要な数を割り当てることが重要とされています。
まずCPU使用率やアプリケーションの動作を確認し、必要な範囲で段階的に増やす方がよいでしょう。
Nutanix AHVでVMのメモリを増やす
メモリについても対象VMの設定から容量を変更します。
例えば、
4 GiB
↓
8 GiB
のように増やします。
変更後はゲストOS側でも増えていることを確認します。
Linuxなら、
free -h
などで確認できます。
稼働中のVMにCPU・メモリを追加できる
NutanixのAHV Administration Guideでは、AHV上のゲストVMについて、CPUとメモリのHot Plugがサポートされています。
条件を満たす環境では、VMを稼働させたまま、
- メモリ容量を増やす
- CPU数を増やす
ことができます。
業務サーバーを停止しにくい場合には便利な機能です。
ただし、ゲストOS側がHot Plugに対応している必要があります。利用しているOSについてNutanixのGuest OS Compatibility Matrixなども確認してください。
稼働中はcores per socketを変更できない
Hot Addには制限もあります。
Nutanix公式資料では、VMの電源が入った状態でvCPU数を増やすことはできますが、cores per socketは変更できません。
CPUトポロジーそのものを変更する必要がある場合は、VMを停止して設定変更する必要があります。
稼働中はCPU・メモリを減らせない
もう一つ重要なのが、Hot Addは基本的に「追加」の機能だという点です。
Nutanix公式資料では、VMが稼働している状態でCPU数やメモリ容量を減らすことはできません。
例えば、
4 GiB → 8 GiB
という追加は条件を満たせばHot Addできますが、
8 GiB → 4 GiB
のように減らす場合はVM停止が必要になります。
Linuxでは追加メモリが認識されないことがある
AHV側でメモリをHot Addしても、Linux側ですぐ利用できない場合があります。
Nutanixの技術情報では、LinuxカーネルによってはHot Plugされたメモリが自動的にonlineにならない場合があると説明されています。
まず確認します。
free -h
メモリブロックの状態を確認する場合は、環境に応じて次のような情報も利用できます。
grep . /sys/devices/system/memory/*/state
offlineのメモリブロックが存在する場合は、ゲストOSの仕様や運用方針を確認したうえでonlineにする必要があります。
単純に「AHVで増やしたのにfreeで増えない」という場合は、AHV側だけでなくLinux側も確認してください。
Linuxでは追加CPUがonlineになっているか確認する
CPUについてもゲストOS側で認識されているか確認します。
lscpu
nproc
CPUのonline状態は次のように確認できます。
cat /sys/devices/system/cpu/online
Hot AddしたCPUが利用できない場合は、ゲストOS側でCPUがofflineになっていないか確認します。
aCLIからCPU・メモリを変更する方法
Prismだけでなく、Acropolis CLI(aCLI)から変更することもできます。
CVMへSSH接続し、aCLIを利用します。
メモリ変更は、Nutanixの例では次の形式です。
acli vm.update VM名 memory=メモリサイズ
CPU数は次の形式です。
acli vm.update VM名 num_vcpus=CPU数
実際に使用する場合は、利用しているAOS/AHVバージョンのNutanix公式ドキュメントでパラメーターを確認してから実行してください。
変更前にスナップショットを取るべき?
CPUやメモリを増やすだけなら、ディスクやファイルシステムを変更する作業とは性質が異なります。
ただし重要な業務VMで設定変更を行う場合は、変更内容や影響範囲を確認し、必要に応じてバックアップや復旧手段を確保しておくと安心です。
Nutanix AHVでVMスナップショットを取得する方法については、以下の記事で解説しています。
▶ Nutanix AHVでVMスナップショットを取得・復元する方法【Prism Element】
ディスク容量を増やす場合は別の作業が必要
CPU・メモリとは異なり、Linux VMの仮想ディスクを拡張した場合は、ゲストOS側でパーティションやLVM、ファイルシステムの拡張が必要になることがあります。
Rocky Linux 9で実際に50GBから100GB・150GBへ拡張した手順はこちらで解説しています。
▶ Nutanix AHVでLinux仮想マシンのディスク容量を拡張する方法【Rocky Linux 9】
CPU・メモリ変更後の確認
Linuxの場合は最低限、次のような確認をしておくとよいでしょう。
# CPU
lscpu
nproc
# メモリ
free -h
# 負荷
top
「設定値が増えた」だけでなく、実際にゲストOSがリソースを認識しているか確認することが重要です。
まとめ
Nutanix AHVではVMのCPUとメモリを変更できます。
さらに対応するゲストOSでは、VMを停止せずCPU・メモリを追加するHot Addも利用できます。
ただし、
- 稼働中にCPU・メモリを減らすことはできない
- 稼働中にcores per socketは変更できない
- ゲストOSがHot Plugに対応している必要がある
- Linuxでは追加したCPU・メモリが自動的にonlineにならない場合がある
といった注意点があります。
変更後はAHV側の設定だけを見て終わらず、lscpu、nproc、free -hなどを使ってゲストOS側でも認識されていることを確認しましょう。

コメント