Updating the VCSA is easy when it has internet access or if you can mount the update iso. On a private network, VMware assumes you have a webserver that can serve up the updaterepo files. In this article, we'll look at how to proceed when VCSA is on a private network where internet access is blocked, and there's no webserver available. The VCSA and PSC contain their own webserver that can be used for an HTTP based update. This procedure was tested on PSC/VCSA 6.0.
Follow these steps:
P.S. I personally tested this using a PSC as webserver to update both that PSC, and also a VCSA appliance.
P.P.S. VMware released an update for VCSA 6.0 and 6.5 on the day I wrote this. For 6.0, the latest version is U3B at the time of writing, while I updated to U3A.
Follow these steps:
- First, download the update repo zip (e.g. for 6.0 U3A, the filename is VMware-vCenter-Server-Appliance-6.0.0.30100-5202501-updaterepo.zip )
- Transfer the updaterepo zip to a PSC or VCSA that will be used as the server. You can use Putty's pscp.exe on Windows or scp on Mac/Linux, but you'd have to run "chsh -s /bin/bash root" in the CLI shell before using pscp.exe/scp if your PSC/VCSA is set up with the appliancesh.
- chsh -s /bin/bash root
- "c:\program files (x86)\putty\pscp.exe" VMware*updaterepo.zip root@psc-name-or-address:/tmp
- Change your PSC/VCSA root access back to the appliancesh if you changed it earlier:
- chsh -s /bin/appliancesh root
- Make a directory for the repository files and unpack the updaterepo files there:
- mkdir /srv/www/htdocs/6u3
- chmod go+rx /srv/www/htdocs/6u3
- cd /srv/www/htdocs/6u3
- unzip /tmp/VMware-vCenter*updaterepo.zip
- rm /tmp/VMware-vCenter*updaterepo.zip
- Create a redirect using the HTTP rhttpproxy listener and restart it
- echo "/6u3 local 7000 allow allow" > /etc/vmware-rhttpproxy/endpoints.conf.d/temp-update.conf
- /etc/init.d/vmware-rhttpproxy restart
- Create a /tmp/nginx.conf (I copied /etc/nginx/nginx.conf, changed "listen 80" to "listen 7000" and changed "mime.types" to "/etc/nginx/mime.types")
- Start nginx
- nginx -c /tmp/nginx.conf
- Start the update via the VAMI. Change the repository URL in settings, use http://psc-name-or-address/6u3/ as repository URL. Then use "Check URL".
- Afterwards, clean up:
- killall nginx
- cd /srv/www/htdocs; rm -rf 6u3
P.S. I personally tested this using a PSC as webserver to update both that PSC, and also a VCSA appliance.
P.P.S. VMware released an update for VCSA 6.0 and 6.5 on the day I wrote this. For 6.0, the latest version is U3B at the time of writing, while I updated to U3A.
Comments