<?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>Hostmedic &#187; performance</title>
	<atom:link href="http://www.hostmedic.com/tag/performance/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.hostmedic.com</link>
	<description>Emergency Medicine for Hosting &#38; Server Admins</description>
	<lastBuildDate>Sun, 06 Jun 2010 01:23:06 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>iscsi ≠Speed when it comes to DataBases</title>
		<link>http://www.hostmedic.com/admin/storage/iscsi-%e2%89%a0speed-when-it-comes-to-databases/</link>
		<comments>http://www.hostmedic.com/admin/storage/iscsi-%e2%89%a0speed-when-it-comes-to-databases/#comments</comments>
		<pubDate>Sun, 13 Sep 2009 02:23:25 +0000</pubDate>
		<dc:creator>Glenn Kelley</dc:creator>
				<category><![CDATA[DBA]]></category>
		<category><![CDATA[Network Admin]]></category>
		<category><![CDATA[Storage]]></category>
		<category><![CDATA[SysAdmin]]></category>
		<category><![CDATA[Virtualization]]></category>
		<category><![CDATA[vmWare]]></category>
		<category><![CDATA[cat6]]></category>
		<category><![CDATA[etherchannel]]></category>
		<category><![CDATA[flow control]]></category>
		<category><![CDATA[iscsi]]></category>
		<category><![CDATA[performance]]></category>

		<guid isPermaLink="false">http://www.hostmedic.com/?p=537</guid>
		<description><![CDATA[My advice is - stay away from iSCSI for databases - and go with direct storage - iSCSI is not ready for performance-sensitive applications out of the box.   I would suggest that anyone considering iSCSI with VMware should feel confident that their deployments can provide high performance and high availability as long as theyunderstand the “one link max per iSCSI target” ESX iSCSI initiator behavior.  ]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fwww.hostmedic.com%2Fadmin%2Fstorage%2Fiscsi-%25e2%2589%25a0speed-when-it-comes-to-databases%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fwww.hostmedic.com%2Fadmin%2Fstorage%2Fiscsi-%25e2%2589%25a0speed-when-it-comes-to-databases%2F&amp;source=churchmedic&amp;style=normal&amp;service=TinyURL.com" height="61" width="50" /><br />
			</a>
		</div>
<p><img class="alignright" src="http://h18006.www1.hp.com/storage/highlights/images/05282009/idea_entmsg_virt_tap.gif" alt="" width="148" height="110" />Recently a quite large client contacted the HostMedic agency regarding some issues they are having within their network at their datacenter.</p>
<p>They are using <a href="http://www.vmware.com" target="_blank">VMWare</a> &#8211; and have what appears to be an excellent setup &#8211; until you step under the hood and tinker for a little while.    This client has done everything &#8220;right&#8221; &#8211; purchasing a SAN from Dell (the axiom line) as well as using Gigabit networking &#8211; Their SAN is connected to the network sharing its drives using the <a title="ISCSI Wikipedia" href="http://en.wikipedia.org/wiki/ISCSI" target="_blank">iSCSI</a> protocol.</p>
<p>What this client and I discovered the hard way is that it does not matter how fast the disks are &#8211; or how many disks you have if your pipe to them is slower than the pipe sticking out of a molasses tree.</p>
<p>I recreated the network locally as best as I could &#8211; and then turned on <a href="http://www.coker.com.au/bonnie++/experimental/">Bonnie.</a> Bonnie is an excellent disk performance utility.   After compiling the latest version, 1.96, (which allows you to measure lag time and even includes a multi-threaded mode) it quickly became apparent that their read times were quite high &#8211; interestingly enough higher than their write times (go figure).</p>
<p>The upper limit of &#8220;<em>Gigabit Ethernet</em>&#8221; is (theoretically) about 125MByte/sec.  Sadly &#8211; there is no real way for this client to get more due to their expensive iSCSI device not allowing more than one connection to parallel the data &#8211; so of course 125MByte/sec is all you get&#8230;   My testing in the real world gave roughly 40mbps.    OUCH -  So copying roughly 250GB of databases would take the better part of 5+ hours to complete.</p>
<p>I ran to google and asked the question: <strong>Can you get high throughput with iSCSI with GbE on ESX?</strong></p>
<p>The answer is <strong>YES</strong>.  But there are some complications, and some configuration steps that are not immediately apparent.</p>
<p>You need to understanding some iSCSI fundamentals, some Link Aggregation fundamentals, and know some ESX internals – none of which are immediately obvious to most folks (including myself).</p>
<p>A few take homes here:</p>
<blockquote>
<ul>
<li><strong>Ethernet link aggregation isn&#8217;t worth crap </strong>in iSCSI environments</li>
<li><strong>iSCSI HBA’s don’t buy you much</strong> other than boot-from-SAN in ESX,</li>
<li>The most common configuration (ESX software iSCSI) is <strong>limited to about 100 MB/s per iSCSI target</strong> over one-gigabit Ethernet.</li>
<li>Adding <strong>multiple iSCSI targets adds performance</strong> across the board, but configurations will vary according to your array.</li>
<li>Maximum per-target performance comes from <strong>guest-side software iSCSI</strong>, which can make use of multiple Ethernet links to push each array as fast as it can go.</li>
<li><span id="comment-6a00d8341c328153ef0111683760d0970c-content">accessing iSCSI directly from guest VM&#8217;s gives better performance than accessing it via the hypervisor layer.<br />
</span></li>
<li>If you are serious about iSCSI in your production environment, it’s valuable to do a bit of investigation learning, and it’s important to do a little engineering during design.    Of course iSCSI is easy to connect and begin using, but like many technologies which excel in terms of their simplicity the default options and parameters may not be robust enough to provide an iSCSI infrastructure which can support your organization.</li>
<li>Think about Flow-Control (should be set to receive on switches and transmit on iSCSI targets)</li>
<li>Enable spanning tree protocol with either RSTP or portfast enabled</li>
<li>Filter / restrict bridge protocol data units on storage network ports</li>
<li>Configure jumbo frames (always end-to-end – otherwise you will get fragmented crap)</li>
<li>Use Cat6 cables rather than Cat5/5e &#8211; the better the cable the better the connection. PERIOD</li>
<li>Consider cross-stack Etherchannel trunking for your configuration.</li>
<li>Investigate your switch &#8211; every switch has its good and bad &#8211; such as the amount of port buffers, ram, cpu, etc &#8230;</li>
</ul>
</blockquote>
<p><strong><span style="text-decoration: underline;">(Strongly) Recommended Additional Reading</span></strong></p>
<ol>
<li>Scott Lowe has done an excellent job talking on ESX networking.   Start with his recap here: <a href="http://blog.scottlowe.org/2008/12/19/vmware-esx-networking-articles/">http://blog.scottlowe.org/2008/12/19/vmware-esx-networking-articles/</a></li>
<li>Read the vendor&#8217;s documentation!
<ul>
<li><strong>START HERE -</strong> VMware: <a href="http://www.vmware.com/pdf/vi3_35/esx_3/r35u2/vi3_35_25_u2_iscsi_san_cfg.pdf">iSCSI SAN Configuration Guide</a></li>
<li>EMC Celerra: <a href="http://powerlink.emc.com/km/live1/en_US/Offering_Technical/Technical_Documentation/H5536-vmware-esx-srvr-using-emc-celerra-stor-sys-wp.pdf">VMware ESX Server Using EMC Celerra Storage Systems – Solutions Guide</a></li>
<li>EMC CLARiiON: <a href="http://powerlink.emc.com/km/live1/en_US/Offering_Technical/Technical_Documentation/H2197-vmware-esx-clariion-stor-sys-sg.pdf">VMware ESX Server Using EMC CLARiiON Storage Systems &#8211; Solutions Guide</a></li>
<li>EMC DMX: <a href="http://powerlink.emc.com/km/live1/en_US/Offering_Technical/Technical_Documentation/H2529_vmware_esx_svr_w_symmetrix_wp_ldv.pdf">VMware ESX Server Using EMC Symmetrix Storage Systems – Solutions Guide</a></li>
<li>NetApp: <a href="http://media.netapp.com/documents/tr-3428.pdf">NetApp &amp; VMware Virtual Infrastructure 3 : Storage Best Practices</a> (Vaughn is proud to say this is the most popular NetApp TR)</li>
<li>HP/LeftHand: <a href="http://www.lefthandnetworks.com/document.aspx?oid=a0e0000000000ri">LeftHand Networks VI3 field guide for SAN/iQ 8 SANs</a></li>
<li>Dell/EqualLogic:
<ul>
<li><a href="http://www.equallogic.com/resourcecenter/assetview.aspx?id=5229">Network Performance Guidelines</a></li>
<li><a href="http://www.equallogic.com/resourcecenter/assetview.aspx?id=5235">VMware Virtual Infrastructure 3.x Considerations, Configuration and Operation Using an Equallogic PS Series SAN</a></li>
</ul>
</li>
</ul>
</li>
</ol>
<p>My advice is &#8211; stay away from iSCSI for databases &#8211; and go with direct storage &#8211; iSCSI is not ready for performance-sensitive applications out of the box.   I would suggest that anyone considering iSCSI with VMware should feel confident that their deployments can provide high performance and high availability as long as theyunderstand the “one link max per iSCSI target” ESX iSCSI initiator behavior.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.hostmedic.com/admin/storage/iscsi-%e2%89%a0speed-when-it-comes-to-databases/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
