今回もセミナー等でご質問いただいた内容となります。
Nutanix AHVには、ESXiと同様に、HA(High Availability)機能があり、ノード障害時に仮想マシンを別のサーバー上で自動で再起動させることができます。
HAの話をすると、起動する仮想マシンの優先順位をつけることはできるかという質問をいただくことがよくあるので、今回はAHV環境で試してみました。
今回の環境
AOS 5.20.1.1 LTS
AHV 20201105.2096
HA Priorityの設定
HAの優先順位付けは、CVMへSSHログインし、以下コマンドを実行すると変更できます。値は [0] [1] [2] [3]・・・という感じで、正の数値が大きいほど優先度が上がります。
今回は、[test-Win2016-0] というVMへ [ha_priority=0] という値を設定してみます。実行結果はこんな感じです。
ついでに、複数の仮想マシンへ以下のように異なる値を設定して、その仮想マシンが起動するノードを揃えた後、ノードを再起動してみました。
- 仮想マシン [test-Win2016-0] → [ha_priority=0]
- 仮想マシン [test-Win2016+1] → [ha_priority=1]
- 仮想マシン [test-Win2016+2] → [ha_priority=2]
- 仮想マシン [test-Win2016+3] → [ha_priority=3]
[acropolis.out] ログを確認すると、[ha_priority] の値が大きいものから優先的に再起動されていることが分かります。
ログ [acropolis.out] の一部抜粋
12:25:00,844Z INFO notify.py:329 notification=VmPowerOffAudit vm_name=test-Win2016+3 forced=True message=Powered off VM {vm_name}
12:25:05,767Z INFO notify.py:329 notification=VmPowerOnAudit vm_name=test-Win2016+3 reason=Powering on VM for HA failover message=Powered on VM {vm_name}
12:25:06,369Z INFO notify.py:329 notification=VmPowerOffAudit vm_name=test-Win2016+2 forced=True message=Powered off VM {vm_name}
12:25:11,323Z INFO notify.py:329 notification=VmPowerOnAudit vm_name=test-Win2016+2 reason=Powering on VM for HA failover message=Powered on VM {vm_name}
12:25:12,016Z INFO notify.py:329 notification=VmPowerOffAudit vm_name=test-Win2016+1 forced=True message=Powered off VM {vm_name}
12:25:17,229Z INFO notify.py:329 notification=VmPowerOnAudit vm_name=test-Win2016+1 reason=Powering on VM for HA failover message=Powered on VM {vm_name}
12:25:18,093Z INFO notify.py:329 notification=VmPowerOffAudit vm_name=test-Win2016-0 forced=True message=Powered off VM {vm_name}
12:25:23,346Z INFO notify.py:329 notification=VmPowerOnAudit vm_name=test-Win2016-0 reason=Powering on VM for HA failover message=Powered on VM {vm_name}
12:25:24,163Z INFO notify.py:329 notification=HAFailoverRestartedVMsAudit service_vm_id=10 hypervisor_address=172.22.1.134 vm_list=test-Win2016+3, test-Win2016+2, test-Win2016+1, test-Win2016-0 message=VMs restarted due to HA failover: test-Win2016+3, test-Win2016+2, test-Win2016+1, test-Win2016-0. VMs were running on host 172.22.1.134 prior to HA
以上、今回はこの辺で。