I was in the process of upgrading VC 6.0 EP01 to 6.0 U1 when I realized that the process to perform this same version upgrade was not the same. I did quite a bit of hunting for the specific info on how to do this, so I figure I would save people some time and publish the link here.
There are a couple items that can be easily missed in the Documentation for upgrading the VCSA in version 6. The documentation is located HERE.
Here is a quick step by step to help summarize:
There are a ton of blogs out there with complex queries and actions you can perform when your transaction logs are full and the vCD Web Interface fails with an error like:
.CellNotActiveException: Cell is not active
Well, I decided to make it simple for those who just want to get your environment back up and running ASAP.
I found it quite risky to connect to a vCloud instance as a SysAdmin and perform calls to a specific Org and ensure not to touch other orgs by a simple typo in my commands.
Use the following command to connect via PowerCLi direct to an org in vCD.
Connect-CIServer -Org WWW -Server XXX -Username YYY -password ‘ZZZ’
The Virtual Machine Message I’m faced with deals with the relocation of the VM. Via the vSphere Client, my possible choices to answer the question are “Cancel”, “I moved it”, or “I copied it”. I don’t have the patience or desire to mouse through this hundreds of times.
I want to provide the same answer, “I moved it”, for every VM in inventory which has this question. The script to accomplish this is fairly simple, even by my standards. Once the PowerCLI connection is established to the vCenter Server or ESX(i) host, it’s a one-liner. Following is the PowerShell script which gets the job done for my situation:
Get-VM | Get-VMQuestion | Set-VMQuestion -Option “I moved it” -Confirm:$false
Note that there are different types of Virtual Machine Message questions which will yield a different set of possible answers. Be sure to query a VM having a question via PowerCLI for the possible answers to that question. Get-VM | Get-VMQuestion -full should do it. Once the possible answers are revealed, use Set-VMQuestion -Option to provide an answer.
Also note the script above will cycle through all VMs in inventory, and for those having a question, it will provide the same response for each VM. Thus the assumption is made that all VMs with pending questions have the same question being asked. To respond to explicit question types or to filter the VMs being looped through, the script would need to be refined.
For more information on the Get-VMQuestion or Set-VMQuestion PowerCLI cmdlets, use Get-Help Get-VMQuestion -full or Set-Help Get-VMQuestion -full respectively.
Thank you to Jason Boche for this article