If you are planning to upgrade your VMware environment, hold that thought and ask yourself, “Have I planned properly?” The reason for that is the number of dependency that needs to be considered before starting off with the upgrade. While I was working as a VMware TSE, on a daily basis I used to have a case where an upgrade plan had gone haywire or post upgrade a customer is not able to manage his environment.
Before starting off with an upgrade, there is a lot that needs to be considered. I am going to list most of those here.
- What is the current version (x) of your vCenter Server (An instance – I had come across instance’s where vCenter Server upgrade was started off without making a note of last version in use and it was difficult to fall back in situations where immediate upgrade was not possible).
- To what version (y) of vCenter Server are we planning to upgrade the environment too.
- Is there an upgrade path that exists from the current version(x) to the new version (y) .
- What is the deployment model followed in the environment (With the increase in the complexity of environment this is an important question answer to which we must know, as this is a deciding factor on upgrade plan).
- Supported deployment model for vCenter Server 6.0 : https://kb.vmware.com/kb/2108548 .
- Supported deployment model for vCenter Server 6.5 : https://kb.vmware.com/s/article/2147672 .
Note : In case if you are on a deprecated topology, then before proceeding with upgrade it would be better to move to a supported topology.
- What other VMware products are there in the environment (This is yet another deciding factor as it impacts your entire infrastructure, I have seen customer find out from their peers after hours of troubleshooting / completing the upgrade, that they had another VMware product which is dependent on the existing vCenter server and we had to revert back to start again).
- Update sequence for vSphere 5.0 and its compatible products : https://kb.vmware.com/s/article/2057795 .
- Update sequence for vSphere 6.0 and its compatible products : https://kb.vmware.com/s/article/2109760 .
- Update sequence for vSphere 6.5 and its compatible products : https://kb.vmware.com/s/article/2147289 .
- Find out the respective versions for the other VMware products that will work with the updated vCenter server version (y).
- What other dependent products are there in the environment (There were lot of SRs that were raised when vSphere 5.5 U3b was released, related to backup jobs failure as the existing products were still using SSLv3 based certificates instead of TLS certificates).
- Is there a healthy backup of your vCenter Server VM or Database available which could be later used for restore.
- How is the health of your vCenter server database.
- How large is your vCenter Server database.
- What is the size of the historical data (Tasks, Events and Performance data) in the vCenter Server database.
- Is the retention policy on the task and events enabled for the vCenter Server DB and how much is it set too.
- Follow the steps and links mentioned in KB to perform the above : https://kb.vmware.com/s/article/1003979 (This is usually never considered but this has been a life saver as I have been able to find few issues which could later cause a time out or failure issues).
- You can use the calculator to know how much should be the approximate size of your vCenter server (This calculator is available under vCenter server advanced settings).
- Are there any other application or services running in the vCenter Server (Running any other service on vCenter Server machine has never been a recommendation as VPXD and its respective database would need quite an amount of resource but it has been in practice by few customers), you would need to plan a down time for that as well.
- No scheduled activity must run on the vCenter Server during the time of upgrade as they would fail for sure.
What needs to be done before the maintenance windows starts.
There is a lot that can go wrong during the upgrade and in order to be able to safely return back to the last known working state here is what must be done before starting with the vCenter Server upgrade.
- Take a snapshot on all related vCenter Server VM(s)(including PSC and Management nodes and Database server (if external) in vsphere version 6.x and take a snapshot on SSO, Inventory service, VC, vSphere web client & database VMs in case of vSphere version 5.x) before proceeding with the upgrade.
- Have a healthy backup copy of vCenter Server database.
- In case, of vSphere version 5.x take Inventory DB backup as well.
- In case if you have distributed vSwitch in your environment take a backup of the Distributed vSwitch configuration.
- If possible have your vCenter Server VM on Standard vSwitch(This is just during the upgrade / maintenance window).
- You should have the ISO downloaded for both the existing and the version to be upgraded to.
- You should have enough maintenance window depending upon the topology or deployment model (whatever you want to call it as).
- Have the vCenter Server VM on standard vSwitch during the maintenance window.
This should be enough to restore the environment back to normal, in case of an issue.
Well, I will write another article which talks about where & what to look for in logs for install / upgrade issue with the vCenter Server.