ESXi6.0:ホストにパッチを適用する方法

シングル構成のVMwareESXiホスト(ESXi6.0update3)にSSH接続して、パッチを適用する方法です。

手順

すべての仮想マシンをシャットダウンする

事前にホストクライアント(GUI)にログインして、すべての仮想マシンをシャットダウンしておきます。

以下のコマンドで一括シャットダウンできるかもしれません。(未確認です)

vim-cmd vmsvc/getallvms | cut -d' ' -f1 | grep -v Vmid | while read i; do vim-cmd vmsvc/power.shutdown $i; done

メンテナンスモードの開始

以下のコマンドを実行し、ホストをメンテナンスモードにします。

vim-cmd hostsvc/maintenance_mode_enter

メンテナンスモードへの移行を確認するには、以下のコマンドを実行します。
「inMaintenanceMode =」がtrueならメンテナンスモードです。

vim-cmd hostsvc/hostsummary | grep -i mainte
 inMaintenanceMode = true,

パッチの適用

適用したいパッチを、あらかじめホストにアップロードしておきます。

パッチに登録されているプロファイルの確認

以下のコマンドを実行して、適用するパッチのプロファイルを確認します。
(表示されているプロファイルのうち、-standardを適用します。)

esxcli software sources profile list -d /vmfs/volumes/datastore1/Patch/ESXi600-201711001.zip

Name Vendor Acceptance Level
-------------------------------- ------------ ----------------
ESXi-6.0.0-20171103001s-no-tools VMware, Inc. PartnerSupported
ESXi-6.0.0-20171104001-standard VMware, Inc. PartnerSupported  ←これです
ESXi-6.0.0-20171103001s-standard VMware, Inc. PartnerSupported
ESXi-6.0.0-20171104001-no-tools VMware, Inc. PartnerSupported
「-no-tools」がつくプロファイルは、VMware Tools (tools-light vib) が含まれないプロファイルです。
「s」がつくプロファイルは、セキュリティに関する不具合修正のみで、バグフィックスが含まれないプロファイルです。

パッチの適用

以下のコマンドを実行して、パッチを適用します。
オプション「-p」には、先ほど確認したプロファイル名を指定します。

esxcli software profile update -d /vmfs/volumes/datastore1/Patch/ESXi600-201711001.zip -p ESXi-6.0.0-20171104001-standard

パッチ適用結果の確認と、ホストの再起動

パッチの適用コマンド実行後、しばらくして実効結果が画面に表示されます。

esxcli software profile update -d /vmfs/volumes/datastore1/Patch/ESXi600-201711001.zip -p ESXi-6.0.0-20171104001-standard
Update Result
   Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
   Reboot Required: true
   VIBs Installed: VMware_bootbank_esx-base_6.0.0-3.79.6921384, VMware_bootbank_esx-dvfilter-generic-fastpath_6.0.0-3.79.6921384, VMware_bootbank_esx-xserver_6.0.0-3.76.6856897, VMware_bootbank_ipmi-ipmi-devintf_39.1
・・・・・・

「Update Result」の「Message:」欄に「The update completed successfully, ・・・」と表示されていることを確認します。

ホストの再起動

「Update Result」の「Reboot Required:」が「true」ならホストを再起動します。

reboot

パッチ適用後のバージョン確認

ホストの再起動が完了したら、再度SSH接続して以下のコマンドを実行し、ビルド番号(BUild:)が更新されていることを確認します。

esxcli system version get
   Product: VMware ESXi
   Version: 6.0.0
   Build: Releasebuild-6921384 ←ここ
   Update: 3
   Patch: 79

メンテナンスモードの終了

以下のコマンドを実行し、ホストのメンテナンスモードを解除します。

vim-cmd hostsvc/maintenance_mode_exit

メンテナンスモードの状態を確認するには以下のコマンドを実行します。
「inMaintenanceMode =」がfalseなら、メンテナンスモードではありません。

vim-cmd hostsvc/hostsummary | grep -i mainte
 inMaintenanceMode = false,

仮想マシンの起動

仮想マシンを起動して、必要に応じてVM-Toolsを更新すればパッチ適用完了です。

参考までに、コマンドで仮想マシンを起動する方法もあります。

ESXi6:仮想マシンをコマンドで操作する方法
VMwareESXiホストにSSH接続して、仮想マシンをコマンドで操作する方法あれこれです。 ちなみに、仮想マシンの操作はコマンド「仮...

まとめ

ESXi5以前は「プロファイル」なるものは特に指定する必要はなかったのですが、適用方法が若干変わったようですね。

スポンサーリンク