In this blog post, I am going to review the process of updating a VMware Cloud Director (VCD) virtual appliance along with a quick walkthrough of this 10.0.0.1 patch release.
Yesterday, we released our first 10.0 patch – release notes here.
Please note that while we can upgrade via the VMware Update Repository, the 10.0.0.1 patch has not been propagated just yet (as of January 16th, 2020).
10.0.0.1 Patch and Upgrade Path
First, this is a patch release that focuses on defect fixes, updating packages within the Photon OS, and other miscellaneous updates.
From an upgrade path, below is a MindMap that reviews the VCD supported versions that can directly upgrade to 10.0.0.1. This is the current upgrade support as of January 16th, 2020. Please take a look at my previous upgrade diagram if you are running a different version.
Appliance Upgrade Tutorial
Currently, I have my multi-site lab deployed with VCD 10 appliances that are running the GA build –
As stated before, I also have two VCD instances in a multi-site architecture, Site-A and Site-B. We will also walk through the multi-site behavior for this upgrade.
Create Backup / Snapshot
Yes, snapshots are not backups, but I’m going to still utilize them. Within my services vCenter, I’ve created a “pre-VCD upgrade” snapshot that’s available in the event my upgrade goes awry.
Upload Update Package and Update Repository
Next, I will be downloading the update package and copying it to a folder structure on each cell. This also requires us to utilize the “vamicli” command to configure it to a local repository.
To start, let’s download the package. The virtual appliance package can be found here.
Once we have the tar.gz file, let’s upload it to a temporary file structure. I am using “/tmp/vcd-update” for each site.
From there, let’s SSH to our VCD appliance. I am extracting the tar.gz file to a sub-directory called “update” in this folder structure.
tar -zxf VMware_vCloud_Director_10.0.0.4649-15450333_update.tar.gz -C /tmp/vcd-update/update
We will utilize vamicli to point to this local package for the update operation.
vamicli update --repo file:///tmp/vcd-update/update
Now, we can check for an update.
vamicli update --check
We are ready to process the VCD update.
Stopping VCD Services
We will utilize the CMT (Cell Management Tool) to safely shut down the cell services. CMT will prompt for the system admin account and password.
cd /opt/vmware/vcloud-director/bin/ ./cell-management-tool -u admin cell --shutdown
Install the VCD Update
Finally, we are now ready to install the VCD update. Just a single command is needed here.
vamicli update --install latest
This might take a few minutes to run.
Once completed, we will be brought back to the command prompt.
This process is repeated on all remaining cells/appliances. Note if you utilize a standard Linux system, the process is a little different but follows a similar flow.
Updating the VCD Database
In my lab environment, I have a single instance for both the database and cell state. Since we have completed the service upgrade, we are ready for the database upgrade. This would only be done once.
First, from the primary database instance, let’s create a backup of the database. (Note – I made script changes to dump the DB to my temp directory.)
Now we are ready to upgrade the database –
Our documentation also states to restart the appliance post-successful upgrade. I presume this is just to verify everything operational on normal boot.
Logging into the VCD Provider portal, we can see the new build number and date.
Currently, I’ve upgraded my Site-A but Site-B is still on the 10.0 GA version. As we can see below, multi-site is still operational. Since the API version did not change, multi-site will continue to work between these upgrades.
Site-A Tenant View:
Site-B Tenant View (still on 10.0 GA and shows Site-A):
This is a nice feature as many providers might have many sites to upgrade over a period of time.
The upgrade process for the VCD virtual appliance is pretty simple and straight forward. I look to further enhancements as it comes to the VCD appliance.