One of my biggest pet peeve when it comes to deploying the VCSA (vCenter Server Appliance) and other OVF/OVA directly onto an ESXi host is the lack of OVF property support. If you have deployed the VCSA before, you are probably aware of the different user experience when deploying to a vCenter Server versus deploying directly to an ESXi host. For those of you who are not familiar, the difference is when you deploy an OVF/OVA that contains custom OVF properties such as the VCSA, you have the ability to provide input to these parameters when deploying to a vCenter Server as seen in the screenshot below.
Simulating vSphere Performance Metrics using VCSIM
A really useful tool that I leverage from time to time is VCSIM (vCenter Simulator) which can be found within the VCSA (vCenter Server Appliance). VCSIM allows you to easily "simulate" a custom vSphere Inventory that can be used for a variety of use cases including custom reports using the vSphere API/CLIs. There are additional capabilities that VCSIM provides and one that I have not explored much is the simulation of vSphere Performance Metrics. Having received a couple of inquires regarding VCSIM and performance metrics, I figure this would be a good opportunity to explore this feature in a bit more detail.
Disclaimer: This is not officially supported by VMware, use at your own risk.
Before getting starting, you should familiarize yourself with VCSIM by reading these two articles here and here.
By default when running VCSIM, there are no Performance Metrics. If you wish to include it, you will need to ensure the following two lines are added to your VCSIM configuration file:
<perfCounterInfo>vcsim/model/PerfCounterInfo.xml</perfCounterInfo>
<metricMetadata>vcsim/model/metricMetadata.cfg</metricMetadata>
The first file contains the performance metric definitions that are supported and the second file will specify which metrics will be simulated. To demonstrate the performance metric capabilities of VCSIM, I will be using the following configuration files which you can just copy/paste:
vghetto-perf-vcsim.cfg - This will be our VCSIM configuration file
<simulator> <enabled>true</enabled> <initInventory>vcsim/model/vghetto-perf-inventory.cfg</initInventory> <hostConfigLocation>vcsim/model/hostConfig</hostConfigLocation> <perfCounterInfo>vcsim/model/PerfCounterInfo.xml</perfCounterInfo> <metricMetadata>vcsim/model/metricMetadata.cfg</metricMetadata> <datastore> <global>1</global> <cluster>2</cluster> <local>1</local> <prefix>vghetto</prefix> </datastore> </simulator>
vghetto-perf-inventory.cfg - This will be our VCSIM inventory configuration file
<config> <inventory> <dc>1</dc> <host-per-dc>0</host-per-dc> <vm-per-host>0</vm-per-host> <poweron-vm-per-host>0</poweron-vm-per-host> <cluster-per-dc>1</cluster-per-dc> <host-per-cluster>2</host-per-cluster> <rp-per-cluster>1</rp-per-cluster> <vm-per-rp>3</vm-per-rp> <poweron-vm-per-rp>3</poweron-vm-per-rp> <dv-portgroups>0</dv-portgroups> </inventory> <prefix>vGhetto-</prefix> <worker-threads>1</worker-threads> <synchronous>true</synchronous> </config>
To ensure everything is working, we can start VCIM by issuing the following command on the VCSA:
vmware-vcsim-start /etc/vmware-vpx/vcsim/model/vghetto-perf-vcsim.cfg
If everything is working, you should be able to login using the vSphere Web/C# Client to view the small inventory we just created. If you are able to see the inventory, then go ahead and stop VCSIM by issusing the following command:
vmware-vcim-stop false
Note: To ensure our inventory is not destroyed each time, you should pass in the 'false' flag else it will automatically be deleted each time. This is useful if you want to preserve your inventory on subsequent reboots.
For all Performance Metric configurations, you will only need to edit the metricMetadata.cfg file. VCSIM supports four different types of Stats model:
- Constant
- Linear
- Square
- Triangle
We will take a look at Stats model for 2-4 since the Constant is not all that interesting 🙂 For our examples, we will take a look at each Stats model for the datastore.datastoreIops.average metrics.
Linear Stats Model:
<Metric id="datastore.datastoreIops.average"> <Instance id="Default"/> <StatsModel> <Type>Triangle</Type> <Values>0,20,10,30,0</Values> <Periods>600,300,600,900</Periods> </StatsModel> </Instance> <Instance id="HostDatastore"/> </Metric>
Square Stats Model:
<Metric id="datastore.datastoreIops.average"> <Instance id="Default"/> <StatsModel> <Type>Square</Type> <Values>0,10,0,20,0</Values> <Periods>300,300,600,600,300</Periods> </StatsModel> </Instance> <Instance id="HostDatastore"/> </Metric>
Triangle Stats Model:
<Metric id="datastore.datastoreIops.average"> <Instance id="Default"/> <StatsModel> <Type>Triangle</Type> <Values>0,20,10,30,0</Values> <Periods>600,300,600,900</Periods> </StatsModel> </Instance> <Instance id="HostDatastore"/> </Metric>
I thought this was pretty neat that the VCSIM developers included a couple of Stats Models that could be leveraged right out of the box! As you can see, it is pretty easy to enable various performance metrics simply by identifying the metric(s) you are interested in and specifying the Stats Model and then starting up VCSIM. The other neat thing that I have been asked about before is can VCSIM simulate performance metrics for specific vSphere entities? I originally thought the answer was no until I started to play with the performance metric simulator a bit more and realize there is a List property that you can use to specify the specific objects in which you want data to be displayed.
Here is an example of of the same performance metric we have been looking at but only enabling it for two Datastores:
<Metric id="datastore.datastoreIops.average"> <Instance id="List"> <List>vghettoDS_vGhetto-DC0_C0_0,vghettoDS_vGhetto-DC0_C0_1</List> <StatsModel> <Type>Triangle</Type> <Values>0,20,10,30,0</Values> <Periods>600,300,600,900</Periods> </StatsModel> </Instance> <Instance id="HostDatastore"/> </Metric>
Note: One thing I noticed while playing with the performance metric simulator is that some times the object in the UI is blank when using the vSphere Web Client. If I use the vSphere C# Client, it is perfectly fine and that is also true if you are using the vSphere API to query for these metrics.
Hopefully this was a good overview of how the VCSIM performance metrics feature works. I know there are a couple of internal folks who have used VCSIM injunction with vCenter Operations and I am also curious to see what other neat uses cases exists for the performance metrics feature. Also, if you have created a really cool metricMetadata.cfg configuration file, feel free to share with the rest of the community!
Horizon View in a box using new Horizon View Config Tool
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:
VM | vCPU | vMEM | vDISK | DISK TYPE |
---|---|---|---|---|
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!
- « Previous Page
- 1
- …
- 35
- 36
- 37
- 38
- 39
- …
- 42
- Next Page »