自宅環境の ESXi をアップグレードしようとしたところ、以下のような nsx vib の
依存関係のエラーが発生しました。
[DependencyError]
On platform embeddedEsx, VIB VMware_bootbank_nsx-esx-datapath_3.2.3.1.0-7.0.22104635 requires esx-base << 7.1, but the requirement cannot be satisfied within the ImageProfile.
Please refer to the log file for more details.
VCF on VxRail: Upgrade failed on node due to NSX-T VIB version error
私の自宅環境では検証用で NSX を構築していましたが、自宅のネットワーク構成の
変更やその他の検証などで色々いじりすぎて、NSX Manager へ接続できない状態
となっていました。
そのため、今回は nsx del コマンドを使用して ESXi 上から nsx vib を削除して
みようと思います。
nsx del コマンドを使用して ESXi 上から nsx vib を削除する
まずは、ESXi から削除前の NSX vib を確認してみます。
[root@localhost:~] esxcli software vib list | grep -E 'nsx|vsipfwlib'
nsx-adf 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsx-cfgagent 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsx-context-mux 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsx-cpp-libs 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsx-esx-datapath 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsx-exporter 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsx-host 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsx-ids 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsx-monitoring 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsx-mpa 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsx-nestdb 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsx-netopa 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsx-opsagent 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsx-platform-client 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsx-proto2-libs 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsx-proxy 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsx-python-gevent 1.1.0-18242523 VMware VMwareCertified 2023-12-17
nsx-python-greenlet 0.4.14-18242315 VMware VMwareCertified 2023-12-17
nsx-python-logging 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsx-python-protobuf 2.6.1-18242311 VMware VMwareCertified 2023-12-17
nsx-python-utils 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsx-sfhc 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsx-shared-libs 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsx-vdpi 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsxcli 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
vsipfwlib 3.2.3.1.0-7.0.22104635 VMware VMwareCertified 2023-12-17
nsx del コマンドで NSX vib を削除する準備として、ESXi をメンテナンスモードに
切り替えます。
また、ESXi 上で nsx-proxy サービスが起動している場合には停止させます。
[root@localhost:~] esxcli system maintenanceMode set --enable true
[root@localhost:~] esxcli system maintenanceMode get
Enabled
[root@localhost:~] /etc/init.d/nsx-proxy status
nsx-proxy is running ★起動中
[root@localhost:~] /etc/init.d/nsx-proxy stop
nsx-proxy agent stop
Shutting down nsx-proxy watchdog
watchdog-nsx-proxy[3652391]: Terminating watchdog process with PID 527653
Shutting down nsx-proxy service
.
nsx-proxy service is stopped
host/vim/vmvisor/nsx-proxy
Resource pool 'host/vim/vmvisor/nsx-proxy' released.
nsx-proxy is stopped
nsxcli -c del nsx を実行します。
「Are you sure you want to remove NSX-T on this host? (yes/no)」が表示される
ので、”yes” を実行します。
[root@localhost:~] nsxcli -c del nsx
*************** STOP STOP STOP STOP STOP ***************
Carefully read the requirements and limitations of this command:
1. Read NSX-T documentation for 'Remove a Host from NSX-T Data Center or Uninstall NSX-T Data Center Completely'.
2. Deletion of this Transport Node from the NSX-T UI or API failed, and this is the last resort.
3. If this is an ESXi host:
a. The host must be in maintenance mode.
b. All resources attached to NSXPGs must be moved out.
If the above conditions for ESXi hosts are not met, the command WILL fail.
4. If this is a Linux host:
a. If KVM is managing VM tenants then shut them down before running this command.
b. This command should be run from the host console and may fail if run from an SSH client
or any other network based shell client.
c. The 'nsxcli -c del nsx' form of this command is not supported
5. For command progress check /scratch/log/nsxcli.log on ESXi host or /var/log/nsxcli.log on non-ESXi host.
Are you sure you want to remove NSX-T on this host? (yes/no) yes
Terminated
“Terminated” と表示されれば OK です。
なお、もし失敗した場合は /var/log/nsxcli.log にログがあるので、確認すると良いです。
[esxcli software vib list] コマンドにて vib を確認し、NSX vib が消えてれば OK です。
※”Terminated” と表示された直後に確認すると nsx vib が出てきましたが、数分後に
再度確認すると NSX vib は消えてました。
参考情報
[nsxcli -c del nsx] コマンドに失敗した場合の Knowledge も公開されているので、
いくつか以下に記載しておきます。
NSX-T “del nsx” command fails with exception when deleting nsx from ESXi host
NSX VIBs are not removed from an ESXi host
Error in NSX VIBs installation and unable to delete NSX VIBs using “nsxcli -c del nsx” command
Uninstalling NSX-T from a host transport node fails: Unable to clear DVS propertycom.vmware.nsx.vdl2.enabled