vSphere 7.0 Update 1以降 vCLSという仮想マシンが勝手に起動してUPS連動シャットダウンに失敗する


vSphere 7.0 Update 1にアップデートして以降、UPS連動シャットダウンに失敗するようになった。

ログを確認していくと、仮想マシンがシャットダウンできない模様。

しかし、vCenter Serverから確認しても動いている仮想マシンは見えない。

そこでESXi のHost Clientに接続して確認すると、vCLSという作った覚えない仮想マシンが起動している。
そして、vCLSを手動で停止しても勝手に起動してくる。

確認してみると、vSphere 7.0 Update 1以降、vSphere DRS/vSphere HAなどのクラスタについて、起動するまでに時間がかかり重いvCenterサーバ仮想マシンではなく、クラスタの可用性のみを面倒見る仮想マシンとして vSphere Cluster Services を提供するようになったようである。

vSphere 7.0 Update 1 の vSphere Cluster Services (vCLS) (80472)
vSphere 7.0 documentation 「vSphere Cluster Services (vCLS)

これをUPS連動シャットダウンと組み合わせる場合の資料を探したところ、下記があった。

APC「PowerChute Network Shutdown v4.3/v4.4によるvSphere 7.0 Update 1でのvCLSの制御について
DELL「もう迷わない!HCI環境のUPS選定 シャットダウンについて

vSphereのクラスタをのvCLSをRetreatモードに変更することでvCLS仮想マシンが停止/削除することができる、というもの。

PowerShellでvCenterに接続して下記の様なスクリプトを実行して無効化を実行(APCのサンプルスクリプト disable_HA.ps1)

#!/usr/bin/pwsh

$server = "10.179.232.198" #"provide Vcenter server IP/hostname"
$username = "pcnsadmin" #"provide username to access vCenter"
$password = "APCapc@123" #"Provide Password to access vCenter server"
$cluster = "C" #"provide Name of the Cluster where Retreat mode needs to be enabled"

$env:HOME = '/root'
Set-PowerCLIConfiguration -InvalidCertificateAction Ignore -Confirm:$false
Connect-VIServer $server -Protocol https -User $username -password $password
$clid = (Get-Cluster $cluster).ID
Write-Host $clid
$myclid = $clid -replace 'ClusterComputeResource-',''
Write-Host $myclid
Get-AdvancedSetting -Entity $server -Name config.vcls.clusters.${myclid}.enabled | Set-AdvancedSetting -Value False -Confirm:$false

##Additional step for VSAN to turn off HA on the cluster
Get-Cluster -Name $cluster | Set-Cluster -HAEnabled:$false -Confirm:$false

Disconnect-VIServer -Force -Confirm:$false

PowerShellでvCenterに接続して下記の様なスクリプトを実行して有効化を実行(APCのサンプルスクリプト enable_HA.ps1)

#!/usr/bin/pwsh

$server = "10.179.232.198" #"provide Vcenter server IP/hostname"
$username = "pcnsadmin" #"provide username to access vCenter"
$password = "APCapc@123" #"Provide Password to access vCenter server"
$cluster = "C" #"provide Name of the Cluster where Retreat mode needs to be disabled"

$env:HOME = '/root'
Connect-VIServer $server -Protocol https -User $username -password $password
$clid = (Get-Cluster $cluster).ID
$myclid = $clid -replace 'ClusterComputeResource-',''
Write-Host $myclid
Get-AdvancedSetting -Entity $server -Name config.vcls.clusters.${myclid}.enabled | Set-AdvancedSetting -Value True  -Confirm:$false

##Additional step for VSAN to turn off HA on the cluster
Get-Cluster -Name $cluster | Set-Cluster -HAEnabled:$true -Confirm:$false

Disconnect-VIServer -Force -Confirm:$false

もう1つはAPCの資料および「PowerChute(TM) Network Shutdown v4.3 for Virtualization 補足説明書 日立編」には設定フローと共に掲載されている手法。

PowerChute Network Shutdownで「VM優先度付け」設定を有効にした上でvCLS仮想マシンを「優先度 高」で設定。vCenterサーバ仮想マシンを「優先度 中」、それ以外を優先度 低などに入れる。

「VMシャットダウン所要時間設定」と「VM起動所要時間設定」で「高」と「中」に対して0秒以上の値を設定

仮想化設定にある”仮想マシンと仮想装置、シャットダウンと起動”設定の「仮想マシンvApp 起動」にチェックを入れる

“ホストメンテナンスモード”の「タイムアウト」を「60秒」に設定

というもの。

綺麗に実行するのであればPowerShellを使った手法のほうが良さそうだ。

ESXiで使用できるUPS連動シャットダウンソフトの情報 2020/10/08修正


ESXi 6.7からvMAというVMware提供の仮想アプライアンスが使えなくなった。
LinuxベースなのだがvCenter/ESXiをCLIから操作するためのツールが導入済みなので、UPS連動シャットダウンする際によく使われていた。

ESXi6.7以降は動かなくなってしまったので、代替を探す必要がある。

APC PowerChute Network Shutdown 4.4

2020年10月登場の新バージョン:PowerChute 新バージョンリリースのお知らせ

PowerChute Network Shutdown v4.4 ご紹介(最新版)」「PowerChute Network Shutdown v4.4 for Windows & Linux 対応OS表」「PowerChute Network Shutdown v4.4 for Virtualization 対応OS表」「PowerChute Network Shutdown v4.4 既知の問題

PowerChuteシリーズ 各種マニュアル

PCNS v4.4でもJavaを使うという点には変更はない(今回はOpenJRE 14.0.2)。OpenJREのアップデートツールも添付されているとのこと。

今回のトピックは、VMware vSAN、Nutanix AOS、Microsoft Azure Stack HCI、Cisco HyperFlex、HPE Simplivityの自動シャットダウンをPCNS管理インタフェース上から設定できるようになった、ということ。

また、sshでアクセスし連動シャットダウンを仕掛けることが可能になったため、NetApp ONTAP 9.xとの連動シャットダウンなどもサポートした、とのこと。

Schneider Electric (APC) PowerChute Network Shutdown

APC PowerChute Network Shutdownに関する情報は「PowerChute Network Shutdownプロダクトセンター | よくあるお問い合わせ」と「PowerChuteシリーズ 対応OS表」を起点に捜索する。

PowerChute Network Shutdown v4.3 for Virtualization 対応OS表」はシャットダウン用仮想アプライアンスイメージが提供されているのでそれを使う。vSphere 7/ESXi 7.0サポートに関しても記載されている。
PowerChute Network Shutdown v4.2 for Virtualization 対応OS表」はシャットダウン用仮想アプライアンスか、vMAにPowerShuteインストールか、を選択できる。

PowerChute Network Shutdown v4.0以降のバージョンでVMware環境を保護する場合のPowerChuteインストール先について

PowerChute Network Shutdown v4.1 v4.2 電源障害時のシャットダウンプロセス(VMWare仮想環境) – 構成例1
PowerChute Network Shutdown v4.1 v4.2 電源障害時のシャットダウンプロセス(VMWare仮想環境) – 構成例2
PowerChute Network Shutdown v4.1 v4.2 電源障害時のシャットダウンプロセス(VMWare仮想環境) – 構成例3

VMware HA利用時やvSAN利用時は、VMware側がユーザ操作なしに停止することを全く考慮していないため、ESXiサーバのみの環境ではうまくシャットダウンを行うことができない。

別に物理のWindowsサーバを用意し、そこからシャットダウン命令を送る必要がある。また、復電後の起動についてはもっと考えられていないため、その処理も自前でどうにかする必要がある。

PowerChute Network Shutdown for Virtualization v4.x VMware HA環境でのサポート構成」(VMware HA環境では仮想マシン停止をサポートしていない)

20180222_VxRailccトラブルシューティングセミナーvSAN環境におけるUPS構成とシャットダウンシュナイダー出口様

富士通のWebにある「PowerChute Network Shutdown for Virtualization v4.3」でvSphere, Hyper-V, Nutanix AHV環境でどういう風に機器を配置すればいいのか分かりやすい絵付きで解説されている。

HPE Power Protector

HPEブランドで販売されているUPSは、HPE Power Protector(HPEPP)を使用してシャットダウンを行う。

ソフトのダウンロードは「HPE swdepot Power Protector UPS Management Software」から行える。(2020/10/12現在 HPEの検索使ってもこのURLが出てくるのだが無くなっている)

ESXi 6.7以降の対応について「アドバイザリ: HPE Power Protector – VMware vSphere Management Assistantのサポートが終了したため、VMware ESXi 6.7 (またはそれ以降) を実行しているHPEサーバーでHPE Power Protectorが正しく機能しない」「Advisory: HPE Power Protector – HPE Power Protector Does Not Function Correctly On HPE Servers Running VMware ESXi 6.7 (Or Later) Due to The Discontinued Support For VMware vSphere Management Assistant」に記載している。

vMA使えないから、無料で使えるdebian使って仮想マシン作って、それにHPEPPを入れろ、ということになる。

2019/12/06リリース版のダウンロードリンク
HPE Power Protector Windows版 v2.02.087 (HPE Power Protector (HPEPP) Clientのインストール方法 (Windows))
HPE Power Protector Linux版 v2.02.087 (HP UPS – HP Power Protector (HPPP) Client のインストール方法 (Linux))

2020/10/23リリース版のダウンロードリンク
HPE Power Protector – Windows版 v2.02.089
HPE Power Protector – Linux版 v2.02.089

EATON Intelligent Power Protector (IPP)とIntelligent Power Manager(IPM)

日本代理店ダイトロンの製品ページ「Intellignent Power Protector」「Intelligent Power Manager

メーカページ「Eaton Intelligent Power Manager

連動シャットダウンについてはWindows仮想マシンにIPMを入れる方向性のようだ

IPM SilverかIPM Goldを使うとVMware HAとvSANを含んだシャットダウンにも対応。

VMware HAはWindows仮想マシンにIPMを入れることで対応可能。復電も対応→「シャットダウン for vCSA on vSphere HA by IPM 1.67」「自動起動 for vCSA on vSphere HA by IPM 1.67

vSANはvSANを使っていないESXi上にvCSAとWindows仮想マシン+IPMを置くことで対応可能。復電も対応→「シャットダウン for VMware vSAN 6.6.1 by IPM 1.60

オムロン VirtuAttendant

無償のUPS管理ソフト「PowerAct Pro」はvMA利用のためESXi 6.5までになっている(PowerAct Pro Slave Agent VMware版 ダウンロード)

有償のUPS管理ソフト「VirtuAttendant」はESXi 7.0対応版が出ていて、手順説明はリンク先に掲載されている。なお、ライセンス料金は1つのvCenter Server環境につき192500円。

また「構成事例/設定ガイド」の「Nutanix / vSAN / 3Tier の構成事例〈ネットワークカード〉」にESXi6.7に対応したVSAN構成時の設定ガイドvSphere+RAID構成時の設定ガイドが掲載されている。

その他参考資料

NEC編

ESMPRO/AutomaticRunningController ダウンロードページ」にある「VMware ESXi 環境における電源管理ソフトウェアの導入」(第37版 2020/01/31)にNECのESMPRO/AutomaticRunningControllerと連携させる場合の詳細解説が書かれている。

富士通編

PRIMERGY 技術情報の「仮想システムでのUPS利用ガイド」にて、PowerChute Network Shutdown Enterprise Editionを使用する場合の説明がある。

VMware編

VMwareのKnowledgeに「VMware ESXi ホストへの APC Powerchute Network Shutdown ソフトウェアのインストール (1007036)」というのが掲載されたが、2020年2月掲載なのにvMAを利用するバージョンでRelated ProductsもESXi 5.5.xが最新という古い記述になっている。