<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>VirtualKenneth&#039;s Blog - hqVirtual &#124; hire quality</title>
	<atom:link href="http://virtualkenneth.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://virtualkenneth.com</link>
	<description>Virtualization Blog focused on VMware Environments</description>
	<lastBuildDate>Mon, 06 Feb 2012 06:40:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Datacenters vs Clusters within the vCenter Inventory</title>
		<link>http://virtualkenneth.com/2012/02/03/datacenters-vs-clusters-within-the-vcenter-inventory/</link>
		<comments>http://virtualkenneth.com/2012/02/03/datacenters-vs-clusters-within-the-vcenter-inventory/#comments</comments>
		<pubDate>Fri, 03 Feb 2012 13:49:47 +0000</pubDate>
		<dc:creator>Kenneth van Ditmarsch</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[VMware vCenter]]></category>
		<category><![CDATA[VMware VirtualCenter]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[Clusters]]></category>
		<category><![CDATA[Datacenters]]></category>

		<guid isPermaLink="false">http://virtualkenneth.com/?p=636</guid>
		<description><![CDATA[Recently I got involved in a discussion about &#8220;Creating multiple Datacenters with one Clusters rather than one Datacenter with multiple Clusters&#8221; First of all lets get the definitions of these objects summarized (as stated in the vSphere Datacenter Administration Guide) Clusters A collection of ESX/ESXi hosts and associated virtual machines intended to work together as [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I got involved in a discussion about &#8220;Creating multiple Datacenters with one Clusters rather than one Datacenter with multiple Clusters&#8221;</p>
<p>First of all lets get the definitions of these objects summarized (as stated in the <a title="vSphere Datacenter Administration Guide" href="http://www.vmware.com/pdf/vsphere4/r41/vsp_41_dc_admin_guide.pdf" target="_blank">vSphere Datacenter Administration Guide</a>)</p>
<p><strong>Clusters</strong></p>
<p>A collection of ESX/ESXi hosts and associated virtual machines intended to work together as a unit. When you add a host to a cluster, the host’s resources become part of the cluster’s resources. The cluster manages the resources of all hosts. VMware Features like EVC, DRS, DPM and HA are enabled on a per Cluster basis.</p>
<p><span id="more-636"></span></p>
<p><strong>Datacenters</strong></p>
<p>Unlike a folder, which is used to organize a specific object type, a datacenter is an aggregation of all the different types of objects needed to do work in virtual infrastructure:</p>
<ul>
<li>Virtual machines (and templates)</li>
<li>Hosts (and clusters)</li>
<li>Networks</li>
<li>Datastores</li>
</ul>
<p>The datacenter defines the namespace for networks and datastores. The names for these objects must be unique within a datacenter. For example, you cannot have two datastores with the same name within a single datacenter, but you can have two datastores with the same name in two different datacenters.</p>
<p>Virtual machines, templates, and clusters need not be unique within the datacenter, but must be unique within their folder.</p>
<p>Objects with the same name in two different datacenters are not necessarily the same object. Because of this, moving objects between datacenters can create unpredictable results. For example, a network named networkA in datacenterA might not be the same network as a network named networkA in datacenterB. Moving a virtual machine connected to networkA from datacenterA to datacenterB results in the virtual machine changing the network it is connected to.</p>
<p><a href="http://virtualkenneth.com/wp-content/uploads/2012/02/MovingVMbetweenDC1.jpg"><img class="alignnone size-full wp-image-638" title="Moving a VM between Datacenters" src="http://virtualkenneth.com/wp-content/uploads/2012/02/MovingVMbetweenDC1.jpg" alt="" width="533" height="133" /></a></p>
<p>&nbsp;</p>
<p>Back to the the discussion about creating multiple Datacenters, this was mainly started because the organization wanted a static &#8221;Folder&#8221; hierarchy per environment. Since the Datacenter object is the boundary for Folders their environment looked like this:</p>
<p><a href="http://virtualkenneth.com/wp-content/uploads/2012/02/DCs_Folders.jpg"><img class="alignnone size-full wp-image-639" title="Folders in DC" src="http://virtualkenneth.com/wp-content/uploads/2012/02/DCs_Folders.jpg" alt="" width="143" height="134" /></a></p>
<p>This design argument can easily be set aside since it&#8217;s possible to create Subfolders as well. So it could also look like this:</p>
<p><a href="http://virtualkenneth.com/wp-content/uploads/2012/02/DCs_Folders01.jpg"><img class="wp-image-643 alignnone" title="Folders in DC" src="http://virtualkenneth.com/wp-content/uploads/2012/02/DCs_Folders01.jpg" alt="" width="151" height="146" /></a></p>
<p>while preserving the one Datacenter design which, from a logic perspective they had.</p>
<p>The key message here is to be sure that you have thought well about the design decisions and that you preserve logics as much as possible to keep a clear view even when the the environment grows.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://virtualkenneth.com/2012/02/03/datacenters-vs-clusters-within-the-vcenter-inventory/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Running scripts on the ESXi shell with correct time-stamps</title>
		<link>http://virtualkenneth.com/2012/01/26/running-scripts-on-the-esxi-shell-with-correct-time-stamps/</link>
		<comments>http://virtualkenneth.com/2012/01/26/running-scripts-on-the-esxi-shell-with-correct-time-stamps/#comments</comments>
		<pubDate>Thu, 26 Jan 2012 08:02:20 +0000</pubDate>
		<dc:creator>Kenneth van Ditmarsch</dc:creator>
				<category><![CDATA[ESXi]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Shell Script]]></category>
		<category><![CDATA[Time Zone]]></category>
		<category><![CDATA[Time-stamps]]></category>
		<category><![CDATA[UTC]]></category>

		<guid isPermaLink="false">http://virtualkenneth.com/?p=618</guid>
		<description><![CDATA[While working on the ESXi shell you might notice that the “date” command returns the UTC time instead of displaying the correct time zone like ESX Classic does. This is by design within ESXi and stated in this VMware KB article: ESXi uses UTC time and does not support changing time zones Although it’s not supported to [...]]]></description>
			<content:encoded><![CDATA[<p>While working on the ESXi shell you might notice that the “date” command returns the <a title="UTC time" href="http://en.wikipedia.org/wiki/UTC" target="_blank">UTC</a> time instead of displaying the correct time zone like ESX Classic does.</p>
<p><a href="http://virtualkenneth.com/wp-content/uploads/2012/01/date.jpg"><img class="alignnone size-full wp-image-619" title="Date Output" src="http://virtualkenneth.com/wp-content/uploads/2012/01/date.jpg" alt="" width="284" height="62" /></a></p>
<p>This is by design within ESXi and stated in <a title="VMware KB Article" href="http://kb.vmware.com/kb/1436" target="_blank">this</a> VMware KB article: <em>ESXi uses UTC time and does not support changing time zones</em></p>
<p><em></em>Although it’s not supported to change the time zone it could come in handy to get the correct time-stamps for custom scripts within the ESXi Shell.<br />
To get the correct time-stamps you only need to add the following line in the beginning of your script:</p>
<blockquote><p>export TZ=MET&lt;-/+&gt;&lt;no of hours&gt;</p></blockquote>
<p>In my case UTC is off with -1 hour with the actual time, which means that I need: <em>export TZ=MET-1</em></p>
<p><a href="http://virtualkenneth.com/wp-content/uploads/2012/01/date_export.jpg"><img class="alignnone size-full wp-image-620" title="Date using TZ" src="http://virtualkenneth.com/wp-content/uploads/2012/01/date_export.jpg" alt="" width="284" height="117" /></a></p>
<p>Please note that this command only changes the time zone for the<strong> current</strong> Shell session as long as it’s active, so it doesn&#8217;t change the system time zone.<br />
Also don&#8217;t forget to check the output with <a title="Daylight saving time" href="http://en.wikipedia.org/wiki/Daylight_saving_time" target="_blank">daylight saving time</a> if applicable to your current time zone.</p>
<p><strong><br />
</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://virtualkenneth.com/2012/01/26/running-scripts-on-the-esxi-shell-with-correct-time-stamps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dutch vBeers &#8211; 14 July 2011</title>
		<link>http://virtualkenneth.com/2011/07/13/dutch-vbeers-14-july-2011/</link>
		<comments>http://virtualkenneth.com/2011/07/13/dutch-vbeers-14-july-2011/#comments</comments>
		<pubDate>Wed, 13 Jul 2011 05:45:52 +0000</pubDate>
		<dc:creator>Kenneth van Ditmarsch</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[vBeers]]></category>

		<guid isPermaLink="false">http://virtualkenneth.com/?p=610</guid>
		<description><![CDATA[Another vBeers gathering will be held on Thursday 14th of July starting from 6:00pm in ‘Cafe de Omval’ which is located near the Amsterdam Amstel station. This venue is selected since it&#8217;s  easy to reach for people not coming from Amsterdam and serves a fine of selection of beers along with soft drinks and bar [...]]]></description>
			<content:encoded><![CDATA[<p>Another <a title="vBeers.org" href="http://www.vbeers.org/2011/06/14/vbeers-%e2%80%93-amsterdam-thur-july-14th-2011/" target="_blank">vBeers</a> gathering will be held on <strong>Thursday 14th of July</strong> starting from 6:00pm in ‘<a title="Cafe de Omval" href="http://www.deomval.nl/" target="_blank">Cafe de Omval</a>’ which is located near the Amsterdam Amstel station. This venue is selected since it&#8217;s  easy to reach for people not coming from Amsterdam and serves a fine of selection of beers along with soft drinks and bar food.</p>
<p>Note that  <a href="http://twitter.com/#!/frankdenneman" target="_blank">Frank Denneman</a>, one of the two great authors of the<a title="VMware vSphere Clustering Technical Deepdive" href="http://www.yellow-bricks.com/2011/07/12/hot-of-the-press-vsphere-5-0-clustering-technical-deepdive/" target="_blank"> VMware vSphere Clustering Technical Deepdive</a> (available now!) will also be attending. This is a great moment to meet up with him!</p>
<p>Drinks will not be paid for, there will not be a tab. When you buy a drink please pay for it as no one else will be paying for your drinks.</p>
<ul>
<li>Location: ‘<a title="Cafe de Omval" href="http://www.deomval.nl/" target="_blank">Cafe de Omval</a>’ Amsterdam</li>
<li>Address: Weesperzijde 250 (hoek Omval), 1097 EB Amsterdam</li>
<li>Nearest Train Station: Amsterdam Amstel</li>
<li>Time: 6:00pm</li>
<li>Location: <a href="http://maps.google.co.uk/maps?f=q&amp;source=s_q&amp;hl=en&amp;geocode=&amp;q=Weesperzijde+250+(hoek+Omval),+1097+EB+Amsterdam&amp;aq=&amp;sll=53.800651,-4.064941&amp;sspn=22.541458,67.456055&amp;ie=UTF8&amp;hq=Weesperzijde+250+(hoek+Omval),&amp;hnear=1097+Amsterdam,+North+Holland,+The+Netherlands&amp;ll=52.343245,4.920137&amp;spn=0.010999,0.032938&amp;z=16" target="_blank">Map</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://virtualkenneth.com/2011/07/13/dutch-vbeers-14-july-2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VM Swapfile (.vswp) placement with SRM</title>
		<link>http://virtualkenneth.com/2011/06/29/vm-swapfile-vswp-placement-with-srm/</link>
		<comments>http://virtualkenneth.com/2011/06/29/vm-swapfile-vswp-placement-with-srm/#comments</comments>
		<pubDate>Wed, 29 Jun 2011 07:45:19 +0000</pubDate>
		<dc:creator>Kenneth van Ditmarsch</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[SRM]]></category>
		<category><![CDATA[VMware Design]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[VM swap file]]></category>
		<category><![CDATA[vswp]]></category>

		<guid isPermaLink="false">http://virtualkenneth.com/?p=597</guid>
		<description><![CDATA[Nowadays VMware Site Recovery Manager (SRM) gets implemented more and more and like vSphere, VMware SRM needs a good architectural design before starting off. One of the design considerations is around the placement of the Virtual Machine Swap File (.vswp) which I want to give some more information about in this article. Let’s first take [...]]]></description>
			<content:encoded><![CDATA[<p>Nowadays VMware Site Recovery Manager (SRM) gets implemented more and more and like vSphere, VMware SRM needs a good architectural design before starting off.</p>
<p>One of the design considerations is around the placement of the Virtual Machine Swap File (.vswp) which I want to give some more information about in this article.</p>
<p>Let’s first take a look at the VM Swap File (.vswp), by default this file is placed in the VM “working directory” which also contains all the other VM files. The .vswp is created every time the VM is started and equals the size to the unreserved memory configured on the VM. If the VM is configured with 2 GB and memory reservation is set to 0 MB (default) the VM Swap File will be 2 GB. If memory reservation in this example would be 1 GB than the .vswp file will be 2GB – 1GB = 1 GB total.</p>
<p>The design considerations are about:</p>
<ol>
<li>Keeping the .vswp file in its default “working directory”;</li>
<li>Placing the .vswp on a separated non-replicated datastore.</li>
</ol>
<p>Keeping the .vswp file in its default “working directory” means that the .vswp file will be replicated to the recovery site as indicated in the next overview:</p>
<p><a href="http://virtualkenneth.com/wp-content/uploads/2011/06/default-swap-location.png"><img class="alignnone size-full wp-image-598" title="default-swap-location" src="http://virtualkenneth.com/wp-content/uploads/2011/06/default-swap-location.png" alt="" width="528" height="159" /></a></p>
<p>Pros:</p>
<ul>
<li>Ease of manageability, all VM files are together and it’s default;</li>
</ul>
<p>Cons:</p>
<ul>
<li>More replication bandwidth is needed for files (.vswp) that aren’t used at the recovery site;</li>
<li>Cost is higher since more replicated storage space is used;</li>
<li>Increases the recovery speed of both the test and real failover. This is due to the fact that SRM explicitly deletes the useless .vswp files on the recovery site before starting the VM’s.</li>
</ul>
<p>Placing the .vswp on a separated non-replicated datastore involves some manual work, possibly even reconfiguration of all the current available Virtual Machines. The following overview shows the configuration:</p>
<p><a href="http://virtualkenneth.com/wp-content/uploads/2011/06/separated-datastore-swap-location.png"><img class="alignnone size-full wp-image-599" title="separated-datastore-swap-location" src="http://virtualkenneth.com/wp-content/uploads/2011/06/separated-datastore-swap-location.png" alt="" width="529" height="318" /></a></p>
<p>Pros:</p>
<ul>
<li>Does not consume unused storage replication traffic;</li>
<li>Uses less replicated storage, which could be more expensive than non-replicated storage.</li>
</ul>
<p>Cons:</p>
<ul>
<li>Can be more difficult to manage because some parts of a virtual machine reside on a separate datastore.</li>
<li>Requires additional configuration and management processes within SRM since the VM would be detect with a non-replicated datastore which consequently causes SRM to remove the VM from its protection group.</li>
</ul>
<p>An important note that needs to be made is around NFS storage. As indicated, one of the drawbacks on keeping the .vswp file in the “working directory” is the fact that this increases the recovery speed since SRM deletes the replicated, useless, .vswp file before starting the VM.</p>
<p>Deleting the .vswp file from a newly recovered NFS datastore can take up some time since ESX needs to wait for the replicated file lock to expire (default 35 seconds).  A quote from the the <a title="VMware Best Practices on NAS" href="http://www.vmware.com/files/pdf/VMware_NFS_BestPractices_WP_EN.pdf" target="_blank">Best Practices on NAS Whitepaper</a>:</p>
<blockquote><p><em>Once a lock file is created, VMware periodically (every NFS.DiskFileLockUpdateFreq seconds) send updates to the lock file to let other ESX hosts know that the lock is still active. Changing any of the NFS locking parameters will change how long it takes to recover stale locks. The following formula can be used to calculate how long it takes to recover a stale NFS lock: </em></p>
<p><em>(NFS.DiskFileLockUpdateFreq * NFS.LockRenewMaxFailureNumber) + NFS.LockUpdateTimeout </em></p>
<p><em>If any of these parameters are modified, it’s very important that all ESX hosts in the cluster use identical settings. Having inconsistent NFS lock settings across ESX hosts can result in data corruption! </em></p></blockquote>
<p>This timeout isn’t applicable on VMFS datastores because the auto-resignaturing process  drops the file locks automatically.</p>
<p>As with every design decision it&#8217;s all about knowing the pros/cons of the available options you have and as such select the best option for your environment.</p>
]]></content:encoded>
			<wfw:commentRss>http://virtualkenneth.com/2011/06/29/vm-swapfile-vswp-placement-with-srm/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Self-employed, delivering Virtualization Consultancy</title>
		<link>http://virtualkenneth.com/2011/06/07/self-employed-delivering-virtualization-consultancy/</link>
		<comments>http://virtualkenneth.com/2011/06/07/self-employed-delivering-virtualization-consultancy/#comments</comments>
		<pubDate>Tue, 07 Jun 2011 06:28:47 +0000</pubDate>
		<dc:creator>Kenneth van Ditmarsch</dc:creator>
				<category><![CDATA[Consultancy]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[Contracting]]></category>
		<category><![CDATA[Contractor]]></category>
		<category><![CDATA[Van Ditmarsch]]></category>
		<category><![CDATA[Virtualization]]></category>
		<category><![CDATA[VMware Consultancy]]></category>

		<guid isPermaLink="false">http://virtualkenneth.com/?p=584</guid>
		<description><![CDATA[After working for VMware for over a year I decided to take the next step in my career: to start Van Ditmarsch Consultancy As a contractor I will be available to do Virtualization Consultancy, primarily focused on designing, implementing and/or validating VMware Virtualization solutions with a strong focus on business continuity, high availability and disaster recovery. [...]]]></description>
			<content:encoded><![CDATA[<p>After working for VMware for over a year I decided to take the next step in my career: to start <strong><a title="Van Ditmarsch Consultancy" href="http://www.vd-consultancy.nl" target="_blank">Van Ditmarsch Consultancy</a></strong></p>
<p>As a contractor I will be available to do Virtualization Consultancy, primarily focused on designing, implementing and/or validating VMware Virtualization solutions with a strong focus on business continuity, high availability and disaster recovery.</p>
<p>I want to thank VMware for their understanding and I want to thank all the great people I met while working for VMware since they definitely have the best people around!</p>
<p>Thanks guys, all the best and we will certainly stay in touch!</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://virtualkenneth.com/2011/06/07/self-employed-delivering-virtualization-consultancy/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>How to get Device Identifiers for I/O Devices</title>
		<link>http://virtualkenneth.com/2011/03/10/how-to-get-device-identifiers-for-io-devices/</link>
		<comments>http://virtualkenneth.com/2011/03/10/how-to-get-device-identifiers-for-io-devices/#comments</comments>
		<pubDate>Thu, 10 Mar 2011 13:45:30 +0000</pubDate>
		<dc:creator>Kenneth van Ditmarsch</dc:creator>
				<category><![CDATA[ESX]]></category>
		<category><![CDATA[ESXi]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[Device ID]]></category>
		<category><![CDATA[Device Identifiers]]></category>
		<category><![CDATA[DID]]></category>
		<category><![CDATA[HCL]]></category>
		<category><![CDATA[I/O Device]]></category>
		<category><![CDATA[PCI]]></category>
		<category><![CDATA[Vendor ID]]></category>
		<category><![CDATA[VID]]></category>

		<guid isPermaLink="false">http://virtualkenneth.com/?p=568</guid>
		<description><![CDATA[Recently I got a few questions about the VMware HCL and how to verify I/O devices without knowing all the key details of  the device. Let’s start of by looking at the VMware HCL, note that there are additional fields on which a search can be done for I/O Devices. The Device Identifiers are separated into the following items: VID [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I got a few questions about the <a href="http://www.vmware.com/go/hcl">VMware HCL</a> and how to verify I/O devices without knowing all the key details of  the device. Let’s start of by looking at the <a href="http://www.vmware.com/go/hcl">VMware HCL</a>, note that there are additional fields on which a search can be done for I/O Devices.</p>
<p><a href="http://virtualkenneth.com/wp-content/uploads/2011/03/DeviceID-01.jpg"><img class="alignnone size-full wp-image-569" title="Device Identifiers on VMware HCL" src="http://virtualkenneth.com/wp-content/uploads/2011/03/DeviceID-01.jpg" alt="" width="539" height="527" /></a></p>
<p>The Device Identifiers are separated into the following items:</p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="73" valign="top">VID</td>
<td width="227" valign="top">Vendor ID<strong> </strong></td>
</tr>
<tr>
<td width="73" valign="top">DID</td>
<td width="227" valign="top">Device ID<strong> </strong></td>
</tr>
<tr>
<td width="73" valign="top">SVID</td>
<td width="227" valign="top">Subsystem Vendor ID<strong> </strong></td>
</tr>
<tr>
<td width="73" valign="top">SSID</td>
<td width="227" valign="top">Subsystem ID<strong> </strong></td>
</tr>
</tbody>
</table>
<p><strong> </strong></p>
<p>Getting the Device Identifiers on your ESX(i) Host is done by taking a look at the current running PCI config by issuing the following command:</p>
<p>For an ESX Host: <em>cat /proc/vmware/pci</em></p>
<p><em> </em>For an ESXi Host: <em>lspci –p</em></p>
<p>The output will display all the Device Identifiers needed to verify the I/O device against the VMware HCL. (in this example the details of a HBA).</p>
<p><a href="http://virtualkenneth.com/wp-content/uploads/2011/03/DeviceID-03.jpg"><img class="alignnone size-full wp-image-570" title="Device Identifiers Output" src="http://virtualkenneth.com/wp-content/uploads/2011/03/DeviceID-03.jpg" alt="" width="688" height="371" /></a></p>
<p>More information on Device Identifiers in combination with PowerShell can be found in this excellent <a href="http://www.lucd.info/2010/03/07/name-that-hardware/">article</a> of Luc Dekens.</p>
]]></content:encoded>
			<wfw:commentRss>http://virtualkenneth.com/2011/03/10/how-to-get-device-identifiers-for-io-devices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VMFS3 Heap Size (MaxHeapSizeMB)</title>
		<link>http://virtualkenneth.com/2011/02/15/vmfs3-heap-size-maxheapsizemb/</link>
		<comments>http://virtualkenneth.com/2011/02/15/vmfs3-heap-size-maxheapsizemb/#comments</comments>
		<pubDate>Tue, 15 Feb 2011 19:19:56 +0000</pubDate>
		<dc:creator>Kenneth van Ditmarsch</dc:creator>
				<category><![CDATA[VMFS]]></category>
		<category><![CDATA[VMware vCenter]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[MaxHeapSizeMB]]></category>
		<category><![CDATA[VMFS Heap Size]]></category>
		<category><![CDATA[VMFS3]]></category>
		<category><![CDATA[VMFS3 Heap Size]]></category>

		<guid isPermaLink="false">http://virtualkenneth.com/?p=552</guid>
		<description><![CDATA[This article gives you more information on the VMFS3.MaxHeapSizeMB advanced parameter. Let&#8217;s start off with VMware KB article 1004424 describing the method to increase the VMFS3 Heap Size in case you see the following error message in /var/log/vmkernel or /var/log/messages log: vmkernel: 8:18:59:58.640 cpu2:1410)WARNING: Heap: 1370: Heap_Align(vmfs3, 4096/4096 bytes, 4 align) failed. caller: 0x8fdbd0 vmkernel: 8:18:59:58.640 [...]]]></description>
			<content:encoded><![CDATA[<p>This article gives you more information on the VMFS3.MaxHeapSizeMB advanced parameter. Let&#8217;s start off with VMware KB article <a href="http://kb.vmware.com/kb/1004424" target="_blank">1004424</a> describing the method to increase the VMFS3 Heap Size in case you see the following error message in /var/log/vmkernel or /var/log/messages log:</p>
<p style="padding-left: 30px;"><em>vmkernel: 8:18:59:58.640 cpu2:1410)WARNING: Heap: 1370: Heap_Align(vmfs3, 4096/4096 bytes, 4 align) failed. caller: 0x8fdbd0<br />
vmkernel: 8:18:59:58.640 cpu2:1410)WARNING: Heap: 1266: Heap vmfs3: Maximum allowed growth (24) too small for size (8192)</em></p>
<p>Running out of VMFS3 Heap Space can occur when a large quantity of virtual disk space (.vmdk files) is open on a single ESX Host.</p>
<p><span id="more-552"></span></p>
<p>The default VMFS3.MaxHeapSizeMB settings are:</p>
<ul>
<li>16 MB for ESX 3.5/4.0 &#8211; allows for a maximum of 4TB of active virtual disk space on a single ESX Host.</li>
<li>80 MB for ESX 4.1 &#8211; allows for a maximum of 20TB active virtual disk space on a single ESX Host.</li>
</ul>
<p>The maximum value that can be set is 128MB which allows for a maximum of 32TB of active virtual disk space on a single ESX Host.</p>
<p><strong>Important Note: </strong>All limits of “active virtual disk space” that are described above are applicable only for 1 MB VMFS Blocksizes. 2 MB VMFS Blocksize will double these numbers and 4 MB VMFS Blocksize will quadruple these numbers, etc.</p>
<p>The following example shows the maximum values when using a VMFS Blocksize of 8MB with again the default VMFS3.MaxHeapSizeMB settings:<br />
<em>(If you want to read more about VMFS Blocksizes I would recommend <a href="http://deinoscloud.wordpress.com/2010/07/26/understanding-vmfs-block-size-and-file-size/" target="_blank">this</a> excellent article by Didier Pironet)</em></p>
<ul>
<li>16 MB for ESX 3.5/4.0 &#8211; allows for a maximum of 32TB of active virtual disk space on a single ESX Host.</li>
<li>80 MB for ESX 4.1 &#8211; allows for a maximum of 160TB active virtual disk space on a single ESX Host.</li>
</ul>
<p>Using the maximum of 128 for the VMFS3.MaxHeapSizeMB setting allows up to 256TB of active virtual disk space on a single ESX Host.</p>
<p>It is important to know about these values for your consolidation ratio/design and to know what the effect is of increasing it. Nowadays physical servers become bigger and bigger, allowing you to run more and more Virtual Machines on them which increases the risk of hitting the limit of active virtual disk space on a single ESX Host.</p>
<p>As stated the maximum value can be set to 128MB. The Heap is part of the kernel memory so increasing its memory will increase memory consumption of the kernel which results in less memory for other consumers on the system.</p>
]]></content:encoded>
			<wfw:commentRss>http://virtualkenneth.com/2011/02/15/vmfs3-heap-size-maxheapsizemb/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>vCenter Performance Tab &#8211; Real-time vs. Historical Data</title>
		<link>http://virtualkenneth.com/2011/02/07/vcenter-performance-tab-real-time-vs-historical-data/</link>
		<comments>http://virtualkenneth.com/2011/02/07/vcenter-performance-tab-real-time-vs-historical-data/#comments</comments>
		<pubDate>Mon, 07 Feb 2011 13:00:08 +0000</pubDate>
		<dc:creator>Kenneth van Ditmarsch</dc:creator>
				<category><![CDATA[Database]]></category>
		<category><![CDATA[VMware vCenter]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[Historical Data]]></category>
		<category><![CDATA[Performance Tab]]></category>
		<category><![CDATA[Real-time data]]></category>
		<category><![CDATA[vCenter SQL Database]]></category>
		<category><![CDATA[vpx_hist_stat1]]></category>

		<guid isPermaLink="false">http://virtualkenneth.com/?p=536</guid>
		<description><![CDATA[Recently I received a question about the Performance tab within vCenter which intrested me. Looking at the available Chart Options we can see that there are two distinctive performance streams: Real-time data Historical data Real-time Data  The Real-time data is displayed for the last hour only and is directly queried from the ESX Host (vpxa) [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I received a question about the Performance tab within vCenter which intrested me. Looking at the available Chart Options we can see that there are two distinctive performance streams:</p>
<ul>
<li>Real-time data</li>
<li>Historical data</li>
</ul>
<p><a href="http://virtualkenneth.com/wp-content/uploads/2011/02/vCenterStats-01.png"><img class="alignnone size-full wp-image-537" title="vCenterStats-01" src="http://virtualkenneth.com/wp-content/uploads/2011/02/vCenterStats-01.png" alt="" width="150" height="161" /></a></p>
<p><strong><span id="more-536"></span></strong></p>
<p><strong>Real-time Data</strong><br />
<strong> </strong>The Real-time data is displayed for the last hour only and is <strong>directly</strong> queried from the ESX Host (vpxa) every 20 seconds.<br />
Because the ESX Host stores the performance data locally for the last hour you can have a vCenter outage for up to one hour without getting any gaps in the historical data.</p>
<p><strong>Historical Data</strong><br />
The process outlined below described the steps that are taking place to collect and store the Historical Data.</p>
<ol>
<li>Every 5 minutes 1/6<sup>th</sup> of the total amount of ESX Hosts (vpxa) is queried for performance data;</li>
<li>The vpxa sends its data to vCenter (vpxd) which stores the data in the VPX_HIST_STAT1 table.</li>
</ol>
<p>This process happens every 5 minutes which means that every ESX Host is queried once every 30 minutes.</p>
<p>Let’s take a look at a 10 ESX Host cluster for example:</p>
<p>10.00am: ESX01, ESX02 are queried<br />
10.05am: ESX03, ESX04 are queried<br />
10.10am: ESX05, ESX06 are queried<br />
10.15am: ESX07, ESX08 are queried<br />
10.20am: ESX09, ESX10 are queried<br />
10.25am: ESX11, ESX12 are queried<br />
10.30am: ESX01, ESX02 are queried again.<br />
Etc.</p>
<p>Every 30 minutes the final statistics data rollup and purge store procedures will run. These database roll-up jobs are either controlled by the SQL Agent (in both MS SQL and Oracle) or by vCenter (vpxd) internally. The vpxd internal scheduler is<strong> </strong>only used with Microsoft SQL Express Editions.</p>
<p>The corresponding database tables that are used to store the rollup data are outlined below:</p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="130" valign="top">VPX_HIST_STAT1</td>
<td width="484" valign="top">stores integral values at the lowest level of granularity (daily level)</td>
</tr>
<tr>
<td width="130" valign="top">VPX_HIST_STAT2</td>
<td width="484" valign="top">Weekly Stats Rollup Job &#8211; repeats every 30 minutes &#8211; performing rollups at weekly level.</td>
</tr>
<tr>
<td width="130" valign="top">VPX_HIST_STAT3</td>
<td width="484" valign="top">Monthly Stats Rollup Job &#8211; repeats once per 2 hours &#8211; performing rollups at monthly level</td>
</tr>
<tr>
<td width="130" valign="top">VPX_HIST_STAT4</td>
<td width="484" valign="top">Yearly Stats Rollup Job &#8211; repeats twice a day &#8211; performing rollups at yearly level</td>
</tr>
</tbody>
</table>
<p> </p>
<p>The interval duration for the stored data is a configurable item from within vCenter as you can see in the screenshot below.</p>
<p><a href="http://virtualkenneth.com/wp-content/uploads/2011/02/vCenterStats02.png"><img class="alignnone size-full wp-image-538" title="vCenterStats02" src="http://virtualkenneth.com/wp-content/uploads/2011/02/vCenterStats02.png" alt="" width="391" height="141" /></a></p>
<p>Please note that changing the Interval durations can have a major impact on the database size and vCenter performance due to excessive load.</p>
<p>To conclude, knowing the difference between the Real-time and Historical Data querying and the way the data is processed might benefit you during troubleshooting.</p>
]]></content:encoded>
			<wfw:commentRss>http://virtualkenneth.com/2011/02/07/vcenter-performance-tab-real-time-vs-historical-data/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Design VMware FT Network, active/active or active/passive</title>
		<link>http://virtualkenneth.com/2010/12/13/design-vmware-ft-network-activeactive-or-activepassive/</link>
		<comments>http://virtualkenneth.com/2010/12/13/design-vmware-ft-network-activeactive-or-activepassive/#comments</comments>
		<pubDate>Mon, 13 Dec 2010 21:53:29 +0000</pubDate>
		<dc:creator>Kenneth van Ditmarsch</dc:creator>
				<category><![CDATA[VMware FT]]></category>
		<category><![CDATA[vSphere]]></category>
		<category><![CDATA[active/active]]></category>
		<category><![CDATA[active/passive]]></category>
		<category><![CDATA[Fault Tolerance]]></category>
		<category><![CDATA[IP Hash]]></category>
		<category><![CDATA[Load Balancing]]></category>

		<guid isPermaLink="false">http://virtualkenneth.com/?p=515</guid>
		<description><![CDATA[I recently had a design discussion about the best way to configure the VMware Fault Tolerance Logging network. During the discussion we quickly established that you want to assure redundancy for the VMware FT Logging network. The most interesting part of the discussion was how to configure the vSwitch dedicated for FT traffic. Before discussing [...]]]></description>
			<content:encoded><![CDATA[<p>I recently had a design discussion about the best way to configure the VMware Fault Tolerance Logging network. During the discussion we quickly established that you want to assure redundancy for the VMware FT Logging network. The most interesting part of the discussion was how to configure the vSwitch dedicated for FT traffic.</p>
<p><span id="more-515"></span></p>
<p>Before discussing the options you have in teaming/load balancing lets focus a bit more on the VMware FT Interface. VMware FT keeps the Primary and Secondary VMs in lockstep using VMware vLockstep technology. vLockstep technology ensures that the Primary and Secondary VMs execute the same x86 instructions in an identical sequence. The Primary VM captures all nondeterministic events and sends them across the VMware FT logging network to the Secondary VM. The Secondary VM receives and then replays those nondeterministic events in the same sequence as the Primary VM, typically with a very small lag time.</p>
<p>The FT interface is configured per ESX(i) Host as a vmkernel port and needs an unique IP address assigned. This unique IP address is used to send out the logging traffic as shown in the figure below.</p>
<p><a href="http://virtualkenneth.com/wp-content/uploads/2010/12/FTLogging.png"><img class="alignnone size-full wp-image-521" title="FTLogging" src="http://virtualkenneth.com/wp-content/uploads/2010/12/FTLogging.png" alt="" width="821" height="430" /></a></p>
<p><span style="font-size: x-small;"><span style="font-weight: normal;"><span style="font-size: 13px;">Looking at a typical design with two vmnics configured for FT you can set the failover configuration to either active/active or active/passive as shown in the overview below.</span></span></span></p>
<h1><span style="font-size: 13px;"><a href="http://virtualkenneth.com/wp-content/uploads/2010/12/ActiveActive.png"><img class="alignnone size-full wp-image-516" title="ActiveActive" src="http://virtualkenneth.com/wp-content/uploads/2010/12/ActiveActive.png" alt="" width="181" height="92" /></a> or    <a href="http://virtualkenneth.com/wp-content/uploads/2010/12/ActivePassive.png"><img class="alignnone size-full wp-image-517" title="ActivePassive" src="http://virtualkenneth.com/wp-content/uploads/2010/12/ActivePassive.png" alt="" width="181" height="92" /></a></span></h1>
<p>The active/passive connection is pretty straight forward, in case the active adapter fails the standby adapters takes over seamlessly.</p>
<p>The active/active connection however could cause some confusion since we have a few options in there which I like to explain a bit more.</p>
<p><strong>Active/Active with default “Route based on the originating virtual port ID” load balancing</strong></p>
<p style="padding-left: 30px;">Since the FT Interface has only got one MAC address it will distribute the traffic to only one vmnic in this configuration. The vmnic that will be used is the first vmnic that listed in the “Active Adapters” as shown in the overview below. vmnic1 will utilize all FT logging traffic and vmnic5 will only be used whenever vmnic1 fails.</p>
<p style="padding-left: 30px;"><a href="http://virtualkenneth.com/wp-content/uploads/2010/12/ActiveActive.png"><img class="alignnone size-full wp-image-516" title="ActiveActive" src="http://virtualkenneth.com/wp-content/uploads/2010/12/ActiveActive.png" alt="" width="181" height="92" /></a></p>
<p style="padding-left: 30px;"><a href="http://virtualkenneth.com/wp-content/uploads/2010/12/ActiveActive.png"></a>Note that you can change the order of active vmnic dynamically by just moving another vmnic to the first position in the list.</p>
<p><strong>Active/Active with “Route Based on source MAC hash”</strong></p>
<p style="padding-left: 30px;">Equally to the “Route based on the originating virtual port ID”</p>
<p><strong> </strong><strong>Active/Active with “Route based on IP Hash”</strong></p>
<p style="padding-left: 30px;">IP Hash load balancing is another policy that you can use on the FT logging network. This policy uses both source and destination IP addresses of the ESX(i) Hosts that are running FT-protected VM’s. <a href="http://kb.vmware.com/kb/1004048">Etherchannel /Link Aggregation</a> is mandatory on the physical network to be able to correctly use the IP Hash algorithm.</p>
<p style="padding-left: 30px;">In my opinion there is a risk in using the “Route based on IP Hash” load balancing policy. Generally you only enable FT on important VMs that need to meet very high availability SLAs. Using the IP Hash load balancing method will utilize both vmnics, spreading out the load, but  keep in mind what happens whenever one vmnic will fail. You don’t want to get in a situation with congestion on the FT network which could impact Fault Tolerance since this is a key element in your high availability.</p>
<p>The key take-away here is to hand out the design decisions and let you make the best selection for your specific scenario.</p>
]]></content:encoded>
			<wfw:commentRss>http://virtualkenneth.com/2010/12/13/design-vmware-ft-network-activeactive-or-activepassive/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>VMware vCenter Port 80 invalid or already in use</title>
		<link>http://virtualkenneth.com/2010/12/08/vmware-vcenter-port-80-invalid-or-already-in-use/</link>
		<comments>http://virtualkenneth.com/2010/12/08/vmware-vcenter-port-80-invalid-or-already-in-use/#comments</comments>
		<pubDate>Wed, 08 Dec 2010 18:51:40 +0000</pubDate>
		<dc:creator>Kenneth van Ditmarsch</dc:creator>
				<category><![CDATA[SQL 2008]]></category>
		<category><![CDATA[VMware vCenter]]></category>
		<category><![CDATA[already in use]]></category>
		<category><![CDATA[http port 80]]></category>
		<category><![CDATA[SSRS]]></category>
		<category><![CDATA[vCenter]]></category>

		<guid isPermaLink="false">http://virtualkenneth.com/?p=508</guid>
		<description><![CDATA[While installing VMware vCenter 4.x with Microsoft SQL 2008 (R2) installed on the same system you might get the following error message: The following port numbers are either invalid or already in use. VMware VirtualCenter HTTP Port: 80 By default vCenter wants to use port 80 for the HTTP service and using the netstat command you [...]]]></description>
			<content:encoded><![CDATA[<p>While installing VMware vCenter 4.x with Microsoft SQL 2008 (R2) installed on the same system you might get the following error message: <em>The following port numbers are either invalid or already in use. VMware VirtualCenter HTTP Port: 80</em></p>
<p>By default vCenter wants to use port 80 for the HTTP service and using the netstat command you can verify which process is listening on port 80. In my case Windows wasn’t able to show the actual process name other than Process ID 4 which basically tells that the “system” is using the port.</p>
<p>The netstat -abo output displays: “Cannot obtain ownership information” and only shows Process ID 4</p>
<p><a href="http://virtualkenneth.com/wp-content/uploads/2010/12/Netstat_Output01.jpg"><img class="alignnone size-full wp-image-509" title="Netstat_Output01" src="http://virtualkenneth.com/wp-content/uploads/2010/12/Netstat_Output01.jpg" alt="" width="601" height="104" /></a></p>
<p><span id="more-508"></span>A lot of forums on the Internet talk about the fact that this is caused by Windows Remote Management (WinRM) that by default is using port 80. This story isn’t true since Windows Remote Management isn’t listening by default even while it is started as described in this <a href="http://msdn.microsoft.com/en-us/library/aa384372(v=VS.85).aspx" target="_blank">Microsoft article</a>:</p>
<blockquote><p><em>By default, no WinRM </em><em>listener</em><em> is configured. Even if the WinRM service is running, WS-Management protocol </em><em>messages</em><em> that request data cannot be received or sent</em></p></blockquote>
<p>Also note that only the WinRM 1.1 and earlier is using port 80 by default <span style="text-decoration: underline;">when configured</span>.</p>
<blockquote><p><em>WinRM 1.1 and earlier: </em><em>The default HTTP port is 80.</em></p>
<p><em>WinRM 2.0: </em><em>The default HTTP port is 5985.</em></p></blockquote>
<p>There is a <a href="http://kb.vmware.com/kb/4824652" target="_blank">VMware KB article</a> about this problem that states that it could be IIS or Microsoft SQL Server Reporting Services (SSRS). Since I personally only know this error message from IIS that is using port 80, I wanted to know what the difference was in SQL 2008.</p>
<p>Basically the story is that SSRS now handles HTTP via HTTP.SYS, a native OS kernel that intercepts and handles HTTP requests just like IIS. The reason for Microsoft to use this method is to make the SSRS independent of IIS.</p>
<p>So with this knowledge you can relate to the fact that netstat isn’t displaying the process name other than the process ID 4 which is pointing out to the “system”. To get vCenter Installed on port 80 ensure that the SSRS Service is stopped (or uninstalled when it’s not needed on the system.).</p>
]]></content:encoded>
			<wfw:commentRss>http://virtualkenneth.com/2010/12/08/vmware-vcenter-port-80-invalid-or-already-in-use/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>

