VMware NSX Upgrade fails in NSX Edges Upgrade step
search cancel

VMware NSX Upgrade fails in NSX Edges Upgrade step

book

Article ID: 322451

calendar_today

Updated On:

Products

VMware NSX Networking

Issue/Introduction

Symptoms:
  • You're currently upgrading VMware NSX.
  • During the edge precheck, it may fail or stop or the upgrade progress stops and it eventually fails.
  • All Edges that are being upgraded report failed state, this may be at different upgrade stages on each edge node.
  • The output of the below command (run as root user on the NSX-T manager which is orchestrator node), indicates the number of threads are larger than 4500 (4500 is the threshold for Managers with Large Size Deployment):
sudo -u uuc jstack <UC pid> | grep "tid=" | grep "rpc" | wc -l

Note: <UC pid> is the process of the uuc JVM. It can be identified using the below command as root user:
§ ps aux | grep uuc


Environment

VMware NSX-T Data Center

Cause

The upgrade coordinator service creates a ThreadPoolExecutor for each RPC request.
The code neglects to close the ThreadPoolExecutors after the completion of the RPC request. Consequently, ThreadPoolExecutors accumulate over time causing the upgrade to fail when it passes the threshold.

Resolution

This issue is resolved in VMware NSX 4.1.1, available at VMware downloads.

Workaround:
  • To workaround this issue, please restart the install-upgrade service on the orchestrator node by running the below command from the NSX Manager admin shell:
restart service install-upgrade
  • If the above provided an error, you can manually stop the install-upgrade service on the NSX Manager orchestrator node, by executing the below commands from root shell:
/etc/init.d/install-upgrade stop
/etc/init.d/upgrade-coordinator stop
/etc/init.d/lighttpd stop


Then kill the Process IDs:
ps aux | grep uuc
kill -9 <pid>

Note: Normally there are 2 PIDs for the UUC that needs to be killed.
  • Then start the install-upgrade service, by running the below command from the admin shell:
start service install-upgrade
 
If starting the service failed from the admin shell, then proceed with the below commands from the NSX Manager root shell:
/etc/init.d/install-upgrade restart
/etc/init.d/upgrade-coordinator restart
/etc/init.d/lighttpd restart