If you are taking part in the vSphere Beta (available to public to sign up but still under NDA), you may have recently noticed a new milestone release (RC) that has been made available for download. Having been a long time Beta participant when I was customer and still continuing to do so in my current role, the best way to evaluate and test new VMware software is to of course run them on top of vSphere! I know this may not be an option for everyone and the next best thing would be to use VMware Fusion or Workstation.
For those of you who have tried to run the vSphere Beta of VCSA on VMware Fusion or Workstation, you may have found that it does not work as there are some input parameters that are required as part of the new VCSA deployment. These parameters leverages OVF properties which are currently not supported in VMware Fusion and Workstation and therefore the new injectOvfEnv option in ovftool can not be used.
Having said that, VMware Engineering is quite aware that this can be challenging for many customers as well as VMware Employees who make use of Fusion and Workstation on a daily basis. That is why they have built the VCSA to be quite flexible to support both vSphere as well as Fusion and Workstation, however the process may not be completely obvious for the latter. If you inspect the latest VCSA Beta OVA, which you will need to extract from the ISO, you will notice a series of "keys" that begin with guestinfo which is just leveraging custom key/value pairs for the OVF environment.
Ideally, these are passed in from the OVF Properties using either the vSphere Web Client or the new VCSA deployment tool. However, due to the lack of OVF Property support, it can also be passed in through the VMX file of the Virtual Machine.
Here are the steps to deploy the VCSA Beta using either VMware Fusion or Workstation:
Step 1 - Download the VCSA Beta which is available as an ISO
Step 2 - Extract the contents of the ISO and add the .ova extension to following file located in vcsa/vmware-vcsa (this is the VCSA OVA)
Step 3 - Upload the OVA using either VMare Fusion or Workstation (you can either double click or just go to File->Open) but make sure you do not power it on after deployment. (this is very important)
Step 4 - Locate the directory in which the VCSA was deployed to and open up the VMX file and append the following (make sure to change the IP information and passwords based on your environment):
guestinfo.cis.appliance.net.addr.family = "ipv4" guestinfo.cis.appliance.net.mode = "static" guestinfo.cis.appliance.net.addr = "192.168.1.90" guestinfo.cis.appliance.net.prefix = "24" guestinfo.cis.appliance.net.gateway = "192.168.1.1" guestinfo.cis.appliance.net.dns.servers = "192.168.1.1" guestinfo.cis.vmdir.password = "VMware1!" guestinfo.cis.appliance.root.passwd = "VMware1!" guestinfo.cis.appliance.time.tools-sync = "True" guestinfo.cis.appliance.ssh.enabled = "True"
Note: The example above is a very basic VCSA deployment which should suffice for the majority of you. If you wish to deploy a more complex scenario, you can inspect the VCSA OVA for additional parameters and see their expected values.
Step 5 - Once you have saved your changes, go ahead and power on the VCSA. At this point, the guestinfo properties that you just added will be read in by VMware Tools as the VCSA is booting up and the configuration will begin. Depending on the speed of your hardware, hopefully in a very short amount of time you will have a fully configured VCSA that is ready for your evaluation and testing.
Here is a screenshot of running the VCSA Beta on both VMware Fusion and Workstation:
If you wanted to take this one step further and automate the entire deployment, you can leverage the ovftool to deploy the OVA as shown with the Fusion example below:
'/Applications/VMware Fusion.app/Contents/Library/VMware OVF Tool/ovftool' --name=vmware-vcsa --acceptAllEulas --allowExtraConfig /PATH/TO/VCSA/OVA '/Users/lamw/Documents/Virtual Machines.localized'
and then append the specific configuration using either an echo or here-statement. You can also do the same on Windows leveraging either plain Windows Bat script or PowerShell.
Hopefully for those of you who only have access to Fusion or Workstation, you can now also take part in the vSphere Beta if you do not have a vSphere lab that can be used. I would also recommend checking out the vSphere Beta Community as there is a new contest that launched today for finding bugs in the latest RC release. Not only can you help improve the product through your feedback, you can also win some some $$$ in doing so!
You have a really great blog, but you seriously need to stop using the word leverage so much.
Hopefully this isn't violating the NDA. If so, feel free to delete my comment. 🙁
I am currently participating in the vSphere Beta program and was wondering if you knew whether the released version of the OVFtool (I'm running 3.5.2 on 64bit Linux) supports the 6.0 Beta versions of vCenter or ESXi? I ask because I get a segfault when attempting to deploy an OVF (generated in VCSA Beta) but don't have the same problem when attempting to deploy to a vSphere 5.5 VCSA I have running on the same network. I've read about this particular segfault being related to incompatibilities or malformation of the vi locator string. As well, I notice that the OVFtool documentation states the specific vSphere versions it supports.
So, I'm assuming the issue is likely that OVFtool 3.5.2 is not compatible with vSphere versions > 5.5. You seem to know a ton about this subject so I figured you might know if this is likely to be the cause of the failure and whether there are any workarounds.
BTW: I have recently learned a lot about the OVFtool from your posts and find them very informative, accurate and easy to follow.
Thanks for that and hope this isn't too off topic!
David K Lee says
This method worked great for me. Thanks so much William!
Great blog, thanx a lot for all your stuff.
Any idea how we could configure embedded SSO with this method ?
Mike Pacholke says
To install the VCSA in VMware Workstation i installed the appliance first in a nested ESXi host, exported the vm to ova and imported it again directly in the VMware Workstation.
Same question as JihemmeT, I guess 🙂
I installed the appliance, but I cannot do anything on it (cannot even connect using the vSphere Client), due to lack of permissions. And I cannot login as the SSO admin ([email protected]), using the password set in guestinfo.cis.vmdir.password .
Does anyone know how to configure SSO and permissions in this particular case?
William Lam says
@JihemmeT & @bogd13 - Please take a look at the blog series here http://www.virtuallyghetto.com/2015/02/ultimate-automation-guide-to-deploying-vcsa-6-0.html for the updated details regarding vSphere 6
My issue was actually trying to use vRealize Automation and was stuck at sso binding, realized after this default port was 443 now (and wasn't supported but wasn't my concern).
I also did what suggested above : deploy vcsa in a nested ESXi then exported it as ova, worked perfectly.
Thank for your help.
Unfortunately, the solution of deploying to a nested ESXi and then exporting as OVA didn't work for me either (the deployment process failed on first boot, with an "error starting services").
However, I think I figured it out - the SSO administrator is *protected email* . Which with the default settings would be *protected email*. And the password is the one in guestinfo.cis.vmdir.password .
Robert Szymczak (@rszzy) says
Keep in mind that using the setting guestinfo.cis.vmdir.domain-name = "somedomain.local" you can change the name of the default SSO domain. If you use this of course the default login user will be *protected email* instead of the default *protected email*
I tried to edit the VMX file of the VCSA to deploy it on fusion. However, when i power on the VM it displays an error saying " dictionary error " and denies to power on the VM.. any clue ?
William Lam says
Yes, I've seen this before. It mostly like is due to copying/pasting from the blog and OSX converted the "quotes" into "smart quotes". Try deleting the quotes and then manually type them in, I think you'll notice they're different when you looked closely. This bit me for several hours before figuring it out
Hi William - I am still getting "Dictionary Error" after appending the following below...
I also re-typed the quotes and still the same?...any idea?
guestinfo.cis.vmdir.password = "Just4me!"
guestinfo.cis.appliance.net.addr.family = "ipv4"
guestinfo.cis.appliance.net.addr - "192.168.0.109"
guestinfo.cis.appliance.net.prefix = "24"
guestinfo.cis.appliance.net.mode = "static"
guestinfo.cis.appliance.net.dns.servers = "192.168.0.111"
guestinfo.cis.appliance.net.gateway = "192.168.0.1"
guestinfo.cis.appliance.root.password = "Just4me"
Zac Thomas says
Hi William, I added all the "guestinfo.cis" commands to the vmx file using "vi" on the Mac Book and after the appliance boots up it does not seem to honor any of the parameters. Meaning the IP address is set to a IPv6 and you can't login with the password. I am using Fusion 8.0.1 and the VMware-VCSA-all-6.0.0-3040890.
Zac Thomas says
Also it states "Configure Network Failed"
Just in case others were having the same issue as Zac (I know I was) it's the same issue about the smart quotes. Just replace the copied quotes or typed quotes (depending on your editor) with the original style quotations. This fixed things for me.
I have been trying to install VCSA 6.0 into workstation11 as a VM and when importing the extracted .OVA I get the following.
Error: The import failed because ... ova did not pass OVF specification conformance or virtual hardware compliance checks. Click Retry to relax OVF specification and virtual hardware compliance checks and try the import again, or click Cancel to cancel the import. If you retry the import, you might not be able to use the virtual machine in VMware Workstation.
I’m assuming this is why you customized the perimeters first right? what’s causing this error?
I have read Your" How to evaluate the vSphere VCSA" . I'm assuming that's why I may need to customize the install for workstation11 to accept the .OVA
Thanks in advance.