The folks over at VMware Labs have really been on fire lately. Last week, they help release another exciting new Fling called Horizon View Configuration Tool. This latest Fling, also known as VCT was developed by Marilyn Basanta, who works over in our EUC organization. Marilyn's goal for this first release of VCT was simple, to enable customers to easily and quickly deploy a basic Horizon View 5.3 environment from scratch. I had the chance to meet up with Marilyn this week in person to discuss some of my feedback regarding VCT and something that really stood out to me was that she really understood the importance of Automation. If you compare this to the manual approach today, which has many moving parts not to mention the learning curve for new VMware customers , you can see why a solution like VCT would be a valuable tool for our customers.
After VCT was announced, I knew I had to give this a spin in my home lab! After quickly glancing at the documentation, I deployed VCT and found a couple of interesting tidbits that you should be aware of before getting started.
- In addition to deploying VCT, you will need to also deploy the VMware Studio virtual appliance which is used to provision Windows OSes
- A standalone ESXi host that is not managed by vCenter Server
- All virtual machines provisioned by VCT are "Zeroed Thick" and not Thin (minus VCT/Studio as you can specify)
- At least 19GB of memory is required, not including desktops you would provision
I went through a "full" VCT deployment in my home lab which I also included an Active Directory instance and here are the resource requirements for each Virtual Machine which I know some folks were interested in:
|View Config Tool||1||512 MB||14 GB||THIN|
|VMware Studio||1||512 MB||50 GB||THIN|
|Active Directory||2||2 GB||16 GB||ZEROED THICK|
|VCSA||2||8 GB||125 GB||ZEROED THICK|
|Horizon View||2||4 GB||20 GB||ZEROED THICK|
|Horizon Composer||2||4 GB||20 GB||ZEROED THICK|
For a first release where a user can just provide a Windows Server 2008 ISO and specify a couple of parameters and just sit back and watch this entire environment provision automatically is very impressive. However, I thought what would be even cooler is if we can further reduce the barrier for customers to try out this awesome tool. I did a bit of digging around in the VCT appliance and found that there are a couple of "tweaks" err "hacks" that you could perform to help reduce the footprint of your Horizon View setup.
Disclaimer: These optimizations is something that I spoke to Marilyn about and among other things and she is well aware of some of these early limitations which hopefully will be addressed in future releases of VCT.
For optimization #1 and #2, you will need to perform this before you start the VCT wizard. For optimization #3, this can be done after your Horizon View environment is up and running
Optimization # 1 - Enable "Thin" provisioning of VCSA
SSH to your VCT appliance and edit the following file /apache-tomcat-7.0.27/webapps/vct/WEB-INF/classes/deploy_vCenter.py and ensure it looks like the below (changes highlighted in blue):
deploy_vm = ["/ovftool/ovftool", "-n=" + name, "-ds=" + datastore, "-dm=thin", "-nw=" + network, "--acceptAllEulas", "--noSSLVerify", vcenter_path, "vi://" + esx_username + ":" + esx_password + "@" + esx_host ]
Optimization # 2 - Enable "Thin" provisioning for Windows VMs (View, Composer & AD)
SSH to your VCT appliance and edit the following file /apache-tomcat-7.0.27/webapps/vct/WEB-INF/classes/deploy_ova_studio.py and ensure it looks like the below (changes highlighted in blue):
ssh_command = "sh /opt/vmware/share/ovftool/ovftool --name=\"" + name + "\" --datastore=\"" + datastore + "\" -dm=thin --network=\"" + network + "\" " + path + " vi://" + esx_username + ":" + esx_password + "@" + esx_host
Optimization # 3 - Reduce VCSA memory
For a small environments or POCs, you can run VCSA with 4GB of memory. The default from VMware is 8GB, but this is not the minimal and will depend on the size of your environment (# of VMs/Hosts).
With these simple modifications, you can significantly reduce the amount of storage required and more importantly reduce the amount of memory down to ~14GB if not more due to other memory saving techniques such as VMware TPS. If you already have an existing Active Directory server, you can even further reduce it. The primary reason I was interested in reducing the resource requirements (which I am always a fan of) is that I wanted to demonstrate that you could easily get a fully working Horizon View environment running on top of an Apple Mac Mini! How cool is that!? I mean anyone can be walking around with a Mac Mini that includes everything to run or demo a full Horizon View 5.3 environment. The deployment in my environment took about ~3hrs, I suspect it was slow due to my spinning rust and it should be much faster on an SSD. I was also able to get away with just needing 91.8 GB of storage (all powered on) for the base infrastructure, of course you should allocate a bit more if you want to actually deploy additional desktops.
I highly recommend those of you who are interested in Horizon View to give VCT a try and if you have any feedback or features you would like to see, please leave a comment on the Flings webpage. I know Marilyn is very interested in hearing customer feedback and how she and her team can better improve VCT in the future. Great job again Marilyn, very cool solution and glad to see there is no shortage of innovation at VMware!