<?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/"
	xmlns:series="http://unfoldingneurons.com/"
	>

<channel>
	<title>Stephen Foskett, Pack Rat &#187; API Archives  &#8211; Stephen Foskett, Pack Rat</title>
	<atom:link href="http://blog.fosketts.net/tag/api/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.fosketts.net</link>
	<description>Understanding the accumulation of data</description>
	<lastBuildDate>Fri, 10 Feb 2012 17:40:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
<atom:link rel="hub" href="http://pubsubhubbub.appspot.com" />
	<atom:link rel="hub" href="http://superfeedr.com/hubbub" />
			<item>
		<title>VMware VAAI Storage Array Support in Plain English</title>
		<link>http://blog.fosketts.net/2011/02/08/vmware-vaai-storage-array-support-plain-english/</link>
		<comments>http://blog.fosketts.net/2011/02/08/vmware-vaai-storage-array-support-plain-english/#comments</comments>
		<pubDate>Tue, 08 Feb 2011 18:30:02 +0000</pubDate>
		<dc:creator>Stephen</dc:creator>
				<category><![CDATA[Enterprise storage]]></category>
		<category><![CDATA[Everything]]></category>
		<category><![CDATA[Gestalt IT]]></category>
		<category><![CDATA[Virtual Storage]]></category>
		<category><![CDATA[3PAR]]></category>
		<category><![CDATA[4.1]]></category>
		<category><![CDATA[AMS]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[block zeroing]]></category>
		<category><![CDATA[Bull]]></category>
		<category><![CDATA[Celerra]]></category>
		<category><![CDATA[CLARiiON]]></category>
		<category><![CDATA[Dell]]></category>
		<category><![CDATA[DS8000]]></category>
		<category><![CDATA[EMC]]></category>
		<category><![CDATA[EqualLogic]]></category>
		<category><![CDATA[ESX]]></category>
		<category><![CDATA[Eternus]]></category>
		<category><![CDATA[FibreCAT]]></category>
		<category><![CDATA[Fujitsu]]></category>
		<category><![CDATA[full copy]]></category>
		<category><![CDATA[hardware assisted locking]]></category>
		<category><![CDATA[HCL]]></category>
		<category><![CDATA[HDS]]></category>
		<category><![CDATA[HP]]></category>
		<category><![CDATA[IBM]]></category>
		<category><![CDATA[iStorage]]></category>
		<category><![CDATA[LeftHand]]></category>
		<category><![CDATA[locking]]></category>
		<category><![CDATA[mirror]]></category>
		<category><![CDATA[snapshot]]></category>
		<category><![CDATA[Storwize]]></category>
		<category><![CDATA[SVC]]></category>
		<category><![CDATA[Symmetrix]]></category>
		<category><![CDATA[T10]]></category>
		<category><![CDATA[thin provisioning]]></category>
		<category><![CDATA[VAAI]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[VNX]]></category>
		<category><![CDATA[vStorage]]></category>
		<category><![CDATA[XIV]]></category>

		<guid isPermaLink="false">http://blog.fosketts.net/?p=4877</guid>
		<description><![CDATA[The most exciting enhancements in VMware vSphere 4.1 is the addition of vStorage API for Array Integration (VAAI). This new API allows VMware ESX to offload storage processing functions to capable storage arrays, reducing the workload on the server hardware in introducing new and exciting possibilities for performance and efficiency. VAAI in ESX 4.1 includes three separate capabilities: block zeroing, full copy, and hardware assisted locking.]]></description>
			<content:encoded><![CDATA[<p>The most exciting enhancements in VMware vSphere 4.1 is the addition of vStorage API for Array Integration (VAAI). This new API allows VMware ESX to offload storage processing functions to capable storage arrays, reducing the workload on the server hardware in introducing new and exciting possibilities for performance and efficiency. VAAI in ESX 4.1 includes three separate capabilities: block zeroing, full copy, and hardware assisted locking.</p>
<blockquote><p><strong>Note:</strong> This information was based on the &#8220;<a href="http://www.vmware.com/resources/compatibility/pdf/vi_san_guide.pdf"  target="_blank">VMware Storage/SAN Compatibility Guide</a>&#8221; and is being regularly updated. Please add comments here and I will add products and change and update listings as soon as they appear in the guide!</p></blockquote>
<h3>Where, Why, and What is VAAI?</h3>
<p>I’ve previously discussed the fact that VMware’s excellent ESX hardware compatibility list (HCL) is so comprehensive than obscures basic facts about supported products. This is especially true for VAAI, since compatibility is only noted as a footnote in individual storage array listings. It does not help matters that not all VAAI plugins support all three capabilities.</p>
<p>Like my previous posts regarding <a href="http://blog.fosketts.net/2011/01/24/vmware-esx-fcoe-cna-compatibility-plain-english/"  target="_blank">FCoE CNA’s</a>, <a href="http://blog.fosketts.net/2011/01/27/vmware-esx-sata-pata-compatibility-cheat-sheet/"  target="_blank">SATA and PATA chipsets</a>, and <a href="http://blog.fosketts.net/2011/01/31/best-nic-network-card-vmware-esx-home-lab-machine-retail/"  target="_blank">home/lab network cards</a>, I’ll attempt to boil down the VMware ESX HCL into plain English. This data will also be part of my <a href="http://blog.fosketts.net/2011/01/12/open-source-2011-storage-virtualization-seminar/"  target="_blank">Storage for Virtual Servers seminar</a> presentation, the first of which will be given on March 10 in Philadelphia.</p>
<p>I&#8217;m not going to spend too much time on &#8220;what is VAAI&#8221; in this post. Instead, I suggest you read the following blog posts and VMware&#8217;s excellent guide, &#8220;<a href="http://www.vmware.com/resources/techresources/10117"  target="_blank">What’s New in VMware vSphereTM 4.1 — Storage</a>&#8220;?</p>
<ul>
<li><a href="http://basraayman.com/2010/11/27/what-is-vaai-and-how-does-is-add-spice-to-my-life-as-a-vmware-admin/" >What is VAAI, and how does it add spice to my life as a VMware admin?</a></li>
<li><a href="http://www.yellow-bricks.com/2010/11/23/vstorage-apis-for-array-integration-aka-vaai/" >vStorage APIs for Array Integration aka VAAI</a></li>
<li><a href="http://lonesysadmin.net/2010/11/08/if-you-ever-needed-convincing-about-vaai/" >If You Ever Needed Convincing About VAAI…</a></li>
<li><a href="http://searchvmware.techtarget.com/tip/VMware-VAAI-pros-and-cons-and-the-hidden-fourth-primitive"  target="_blank">VMware VAAI pros and cons and the hidden fourth primitive</a></li>
</ul>
<h3><strong>The Three VAAI Primitives</strong></h3>
<blockquote><p>You ought to read the updated <a href="http://blog.fosketts.net/2011/11/10/complete-list-vmware-vaai-primitives/" >Complete List of VMware VAAI Primitives</a> since it&#8217;s much more thorough and informative!</p></blockquote>
<p>In ESX 4.1, that vStorage API for Array Integration includes three basic capabilities or primitives:</p>
<ol>
<li>Blocks zeroing is a <a href="http://blog.fosketts.net/2011/01/05/write_same-green-eggs-ham/"  target="_blank">communication method</a> for thin provisioning capable storage arrays, allowing them to quickly zero out storage capacity for later reclamation.</li>
<li>Full copy commands the storage array to make a mirror or snapshot of data without any I/O on the server hardware.</li>
<li>Hardware assisted locking enables more granular control of shared storage resources in ESX clusters</li>
</ol>
<p>In order to support VAAI, a storage array requires two things:</p>
<ol>
<li>Hardware capable of supporting one or more of the three primitives listed above</li>
<li>A software plug in for ESX enabling communication and integration</li>
</ol>
<h3>VAAI Plug In Support</h3>
<p>Creating a VAAI plug in is not a trivial task, and not all storage arrays are yet supported. I have heard grumbling from storage vendors that EMC (the storage vendor that owns VMware) has been given early access to VAAI information, allowing them to support this feature set before their competitors. However, this has not stopped a diverse set of other unrelated storage vendors from quickly producing and releasing effective and complete VAAI plugins.</p>
<p>As of this writing, there are 11 array-specific plugins and one general-purpose plug in available for ESX 4.1. EMC, NetApp, 3PAR (HP), HDS, FalconStor, Fujitsu, IBM, Dell (EqualLogic), and HP (LeftHand, P9000, P2000) have produced VAAI plugins supporting all three primitives. Additionally, a cloud in supporting the T10 blocks zeroing methods is available, enabling other arrays to support this one primitive. Note that the T10 primitive should support nearly any capable array, but not all have been tested and qualified for use with it.</p>
<h3>VAAI Support Matrix</h3>
<table>
<tbody>
<tr align="center" bgcolor="lightgray">
<th>Products</th>
<th>Plugin</th>
<th>Fibre Channel</th>
<th>iSCSI</th>
<th>Block Zeroing</th>
<th>Full Copy</th>
<th>Hardware Assisted Locking</th>
</tr>
<tr align="center" bgcolor="lightgray">
<td><strong>EMC</strong> Symmetrix VMAX</td>
<td>VMW_VAAI_SYMM<br />
vmw_vaaip_symm</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
</tr>
<tr align="center" bgcolor="lightgray">
<td><strong>EMC</strong> Clariion CX4, Celerra NS, CNS</td>
<td>vmw_vaaip_cx</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
</tr>
<tr align="center" bgcolor="lightgray">
<td><strong>FalconStor</strong> NSS</td>
<td>unknown</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="pink">N</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
</tr>
<tr align="center" bgcolor="lightgray">
<td><strong>HP/3PAR</strong> E200, F-Class, S400, S800, T-Class</td>
<td>3PAR_vaaip_InServ</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
</tr>
<tr align="center" bgcolor="lightgray">
<td><strong>HP</strong> P9500</td>
<td>hp-vaaip-p9000</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="pink">N</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
</tr>
<tr align="center" bgcolor="lightgray">
<td><strong>HP</strong> MSA P2000</td>
<td>hp-vaaip-p2000</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
</tr>
<tr align="center" bgcolor="lightgray">
<td><strong>HDS</strong> AMS 2040, 2100, 2300, 2500, BR1600, USP V/VM, VSP, NSC 55, USP 100/1100/600</td>
<td>vmw_vaaip_hds</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
</tr>
<tr align="center" bgcolor="lightgray">
<td><strong>IBM</strong> XIV, SVC, Storwize V7000, <strong>Fujitsu</strong> VS850, <strong>Actifio</strong></td>
<td>IBM_VAAIP_MODULE</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
</tr>
<tr align="center" bgcolor="lightgray">
<td><strong>NetApp </strong>FAS2000, FAS3000, FAS6000, N3000, N5000, N6000, N7000</td>
<td>VMW_VAAIP_NETAPP</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
</tr>
<tr align="center" bgcolor="lightgray">
<td><strong>Fujitsu</strong> Eternus 4000, 8000, DX410/440, DX8100/8400/8700</td>
<td>fjt_vaaip_module</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
</tr>
<tr align="center" bgcolor="lightgray">
<td><strong>Dell Compellent Storage Center 6.0</td>
<td>vmw_vaaip_eql</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
</tr>
<tr align="center" bgcolor="lightgray">
<td><strong>Dell/EqualLogic</strong> PS4000, PS5000, PS5500, PS6000</td>
<td>vmw_vaaip_eql</td>
<td bgcolor="pink">N</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
</tr>
<tr align="center" bgcolor="lightgray">
<td><strong>HP/LeftHand</strong> P4000, P4300, P4500, P4800, VSA</td>
<td>vmw_vaaip_lhn</td>
<td bgcolor="pink">N</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
</tr>
<tr align="center" bgcolor="lightgray">
<td><strong>Actifio</strong>, <strong>Bull</strong> Optima2000, <strong>Dell</strong> Compellent, <strong>iStorage</strong> D3/D4, <strong>IBM</strong> Storwize V7000, <strong>IBM</strong> SVC , <strong>Fujitsu</strong> Eternus VS850</td>
<td>vmw_vaaip_t10</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="lightgreen">Y</td>
<td bgcolor="pink">N</td>
<td bgcolor="pink">N</td>
</tr>
</tbody>
</table>
<p>Note that similar OEM versions (for example, Fujitsu&#8217;s FibreCAT CLARiiONs, and the Gateway/Lenovo/Acer AMS line) are also supported the same as the manufacturer&#8217;s offerings. I&#8217;ve simplified and eliminated similar models (the Dell EqualLogic PS6000E, PS6000S, PS6000X, PS6000XV, and PS6000XVS are all listed simply as PS6000).</p>
<p>Updates:</p>
<p>&nbsp;</p>
<ul>
<li><a href="http://blog.fosketts.net/2011/05/09/ibm-adds-vaai-support-xiv-svc/" >IBM recently added full VAAI for the XIV, SVC, and similar Storwize V7000</a>. I&#8217;m sure they&#8217;re also working on complete VAAI plugins for the big DS8000 systems!</li>
<li>EMC certified the new VNX line for VAAI (FC only for now) and the V-Max just gained iSCSI VAAI support.</li>
<li><a href="http://blog.fosketts.net/2011/09/01/falconstor-nss-vmware-vaai/" >FalconStor added VAAI for NSS</a>, enabling any storage array to be used.</li>
<li>HP created VAAI plugins for the P9500 and MSA P2000 lines as well.</li>
</ul>
<h3>Stephen’s Stance</h3>
<p>VAAI is an exciting new capability for VMware ESX, and demonstrates the enterprise readiness of vSphere 4.1. Although not all storage arrays are yet supported, the diverse assortment listed above should cover the majority of enterprise storage environments. I fully expect that the obvious holes will be filled in soon, and I look forward to updating this list when I hear news of those product releases. I also look forward to learning of additional capabilities added as VAAI primitives in the future!</p>
<h3>The Exhaustive List</h3>
<p>I am attempting to keep this list up to date. My authoritative source of information is the VMware Storage Compatibility Guide. This is the only source of information I will use, since only official and supported implementations belong in production. But I welcome pointers, suggestions, and referrals for updates!</p>
<blockquote><p>This list is complete as of February 21, 2011</p></blockquote>
<h4>Full VAAI (All 3 primitives)</h4>
<ul>
<li>Dell
<ul>
<li>EqualLogic
<ul>
<li>iSCSI (vmw_vaaip_eql)
<ul>
<li>Dell EqualLogic PS4000E (Dell EqualLogic PS4000X; Dell EqualLogic PS4000XV)</li>
<li>Dell EqualLogic PS5000E (Dell EqualLogic PS5000X; Dell EqualLogic PS5000XV)</li>
<li>Dell EqualLogic PS5500E</li>
<li>Dell EqualLogic PS6000E (Dell EqualLogic PS6000S; Dell EqualLogic PS6000V; Dell EqualLogic PS6000XV; Dell EqualLogic PS6000XVS)</li>
<li>Dell EqualLogic PS6010E (Dell EqualLogic PS6010S; Dell EqualLogic PS6010X; Dell EqualLogic PS6010XV; Dell EqualLogic PS6010XVS)</li>
<li>Dell EqualLogic PS6500E (Dell EqualLogic PS6500X)</li>
<li>Dell EqualLogic PS6510E (Dell EqualLogic PS6510X)</li>
<li>EqualLogic PS100E</li>
<li>EqualLogic PS200E</li>
<li>EqualLogic PS300E</li>
<li>EqualLogic PS3600X</li>
<li>EqualLogic PS3700X</li>
<li>EqualLogic PS3800XV
<ul>
<li>EqualLogic PS3900XV</li>
</ul>
</li>
<li>EqualLogic PS400E</li>
<li>EqualLogic PS50E</li>
<li>EqualLogic PS70E</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li>EMC
<ul>
<li>FC (vmw_vaaip_cx)
<ul>
<li>EMC CLARiiON CX4-120 (EMC CLARiiON CX4-120 C8/C8X; Dell/EMC CLARiiON CX4-120; Fujitsu FibreCAT CX4-120)</li>
<li>EMC CLARiiON CX4-240 C8/C8X</li>
<li>EMC CLARiiON CX4-480 (EMC CLARiiON CX4-480 C8/C8X; Dell/EMC CLARiiON CX4-480)</li>
<li>EMC CLARiiON CX4-960 (EMC CLARiiON CX4-960 C8/C8X; Dell/EMC CLARiiON CX4-960)</li>
<li>EMC Celerra NS-120</li>
<li>EMC Celerra NS-480</li>
<li>EMC Celerra NS-960</li>
<li>EMC VNX5100</li>
<li>EMC VNX5300</li>
<li>EMC VNX5500</li>
<li>EMC VNX5700</li>
<li>EMC VNX7500</li>
</ul>
</li>
<li>FC/iSCSI/FCoE (VMW_VAAI_SYMM)
<ul>
<li>EMC Symmetrix VMAX</li>
</ul>
</li>
<li>iSCSI (vmw_vaaip_cx)
<ul>
<li>EMC Celerra CNS</li>
<li>EMC Celerra NS-120</li>
<li>EMC Celerra NS-480</li>
<li>EMC Celerra NS-960</li>
<li>EMC CLARiiON CX4-120 C8</li>
<li>EMC CLARiiON CX4-240 C8</li>
<li>EMC CLARiiON CX4-480 (EMC CLARiiON CX4-480 C8)</li>
<li>EMC CLARiiON CX4-960 (EMC CLARiiON CX4-960 C8)</li>
</ul>
</li>
</ul>
</li>
<li>FalconStor</li>
<ul>
<li>FC (unknown)</li>
<ul>
<li>CDP Gateway</li>
<li>CDP SA</li>
<li>CDP VS</li>
<li>CDPx Gateway</li>
<li>IPStor Enterprise</li>
<li>NSS Gateway</li>
<li>NSS SA</li>
<li>NSS VS</li>
</ul>
</ul>
<li>Fujitsu
<ul>
<li>FC (fjt_vaaip_module)
<ul>
<li>Fujitsu Eternus DX410</li>
<li>Fujitsu Eternus DX440</li>
<li>Fujitsu Eternus DX8100</li>
<li>Fujitsu Eternus DX8400</li>
<li>Fujitsu Eternus DX8700</li>
</ul>
</li>
<li>iSCSI (fjt_vaaip_module)
<ul>
<li>Fujitsu Eternus DX410</li>
<li>Fujitsu Eternus DX440</li>
<li>Fujitsu Eternus DX8100</li>
<li>Fujitsu Eternus DX8400</li>
<li>Fujitsu Eternus DX8700</li>
</ul>
</li>
</ul>
</li>
<li>Hitachi
<ul>
<li>FC (vmw_vaaip_hds)
<ul>
<li>Hitachi AMS 2100 (Acer AMS2100; Gateway AMS2100; HDS AMS 2100; Lenovo-HDS AMS2100)</li>
<li>Hitachi AMS 2300 (Acer AMS2300; Gateway AMS2300; HDS AMS 2300; Lenovo-HDS AMS2300)</li>
<li>Hitachi AMS 2500 (HDS AMS 2500)</li>
<li>Acer AS2040; Gateway GS2040</li>
<li>Hitachi AMS 2010</li>
<li>Hitachi BR1600/BR1600E/BR1600S</li>
<li>Hitachi Virtual Storage Platform (Hitachi VP9500; HP StorageWorks P9500)</li>
<li>Nihon-Unisys Sanarena 1910</li>
<li>Nihon-Unisys Sanarena 1930</li>
<li>Nihon-Unisys Sanarena 1970</li>
<li>Nihon-Unisys Sanarena 1990</li>
</ul>
</li>
<li>iSCSI (vmw_vaaip_hds)
<ul>
<li>Hitachi AMS 2010</li>
<li>Hitachi AMS 2100 (HDS AMS 2100; Lenovo-HDS AMS2100)</li>
<li>Hitachi AMS 2300 (HDS AMS 2300; Lenovo-HDS AMS2300)</li>
<li>Hitachi AMS 2500 (HDS AMS 2500)</li>
<li>Hitachi BR1600E</li>
</ul>
<ul>
<li>Nihon-Unisys Sanarena 1930</li>
<li>Nihon-Unisys Sanarena 1970</li>
<li>Nihon-Unisys Sanarena 1990</li>
<li>Hitachi Virtual Storage Platform</li>
</ul>
</li>
</ul>
</li>
<li>HP
<ul>
<li>3PAR
<ul>
<li>FC (3PAR_vaaip_InServ)
<ul>
<li>InServ E200</li>
<li>InServ F-Class</li>
<li>InServ S400</li>
<li>InServ S800</li>
<li>T-Class</li>
</ul>
</li>
<li>iSCSI (3PAR_vaaip_InServ)
<ul>
<li>InServ E200</li>
<li>InServ F-Class</li>
<li>InServ S400</li>
<li>InServ S800</li>
<li>T-Class</li>
</ul>
</li>
</ul>
</li>
<li>P9500</li>
<ul>
<li>FC (hp-vaaip-p9000)</li>
<ul>
<li>HP P9500</li>
</ul>
</ul>
<li>P2000</li>
<ul>
<li>FC/iSCSI (hp-vaaip-p2000)</li>
<ul>
<li>HP MSA P2000</li>
</ul>
</ul>
<li>LeftHand
<ul>
<li>iSCSI (vmw_vaaip_lhn)
<ul>
<li>HP LeftHand P4500</li>
<li>HP LeftHand P4000 VSA</li>
<li>HP LeftHand P4000sb</li>
<li>HP LeftHand P4300 (HP LeftHand P4300 G2)</li>
<li>HP LeftHand P4500 (HP LeftHand P4500 G2)</li>
<li>HP LeftHand P4800</li>
<li>HP ProLiant DL380</li>
<li>Dell 2950</li>
<li>IBM x3650</li>
<li>LeftHand NSM 160</li>
<li>LeftHand NSM 185</li>
<li>LeftHand NSM 2060 (LeftHand NSM 2060 G2)</li>
<li>LeftHand NSM 2120 (LeftHand NSM 2120 G2)</li>
<li>LeftHand NSM 260</li>
<li>LeftHand NSM 320</li>
<li>LeftHand NSM 326</li>
<li>LeftHand NSM 3650</li>
<li>LeftHand NSM 380</li>
<li>LeftHand NSM 4150</li>
<li>LeftHand VSA</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li>IBM
<ul>
<li>FC/iSCSI (IBM_VAAIP_MODULE)
<ul>
<li>IBM XIV</li>
<li>IBM SVC</li>
<li>IBM V7000</li>
<li>Fujitsu VS850</li>
<li>Actifio</li>
</ul>
</li>
</ul>
</li>
<li>NetApp
<ul>
<li>FC (VMW_VAAIP_NETAPP)
<ul>
<li>NetApp N3000 Series</li>
<li>NetApp N5000 Series</li>
<li>NetApp N6000 Series</li>
<li>NetApp N7000 Series</li>
<li>NetApp FAS2000 Series</li>
<li>NetApp FAS3000 Series</li>
<li>NetApp FAS3100 Series</li>
<li>NetApp FAS3200 Series</li>
<li>NetApp FAS6000 Series</li>
<li>NetApp FAS6200 Series</li>
</ul>
</li>
<li>FCoE (VMW_VAAIP_NETAPP)
<ul>
<li>NetApp FAS3000 Series</li>
<li>NetApp FAS3100 Series</li>
<li>NetApp FAS3200 Series</li>
<li>NetApp FAS6000 Series</li>
<li>NetApp FAS6200 Series</li>
</ul>
</li>
</ul>
<ul>
<li>iSCSI (VMW_VAAIP_NETAPP)
<ul>
<li>NetApp N3000 Series</li>
<li>NetApp N5000 Series</li>
<li>NetApp N6000 Series</li>
<li>NetApp N7000 Series</li>
<li>NetApp FAS2000 Series (Fujitsu Eternus NR1000F Series Model F2040)</li>
<li>NetApp FAS3000 Series</li>
<li>NetApp FAS3100 Series (Fujitsu Eternus NR1000F Series Model F3160)</li>
<li>NetApp FAS3200 Series</li>
<li>NetApp FAS6000 Series</li>
<li>NetApp FAS6200 Series</li>
</ul>
</li>
</ul>
</li>
</ul>
<h4>T10 Block Zero Only</h4>
<ul>
<li>Bull
<ul>
<li>FC (vmw_vaaip_t10)
<ul>
<li>Bull Optima2000</li>
</ul>
</li>
<li>iSCSI (vmw_vaaip_t10)
<ul>
<li>Bull Optima2000c</li>
<li>Bull Optima2000i</li>
</ul>
</li>
</ul>
</li>
<li>NEC
<ul>
<li>FC (vmw_vaaip_t10)
<ul>
<li>NEC iStorage D3-30</li>
<li>NEC iStorage D4-30</li>
</ul>
</li>
<li>iSCSI (vmw_vaaip_t10)
<ul>
<li>NEC iStorage D3-30/D3-30i</li>
<li>NEC iStorage D4-30/D4-30i</li>
</ul>
</li>
</ul>
</li>
<li>Fujitsu
<ul>
<li>iSCSI (vmw_vaaip_t10)
<ul>
<li>Fujitsu Eternus VS850</li>
</ul>
</li>
</ul>
</li>
<li>IBM
<ul>
<li>iSCSI (vmw_vaaip_t10)
<ul>
<li>IBM Storwize V7000</li>
<li>IBM SVC</li>
</ul>
</li>
</ul>
</li>
</ul>
<div id="crp_related"><h3>You might also want to read these other posts...</h3><ul><li><a href="http://blog.fosketts.net/2011/03/02/clearance-ipad/"  rel="bookmark" class="crp_title">Great Deals on iPads (for now)</a></li><li><a href="http://blog.fosketts.net/2011/01/24/vmware-esx-fcoe-cna-compatibility-plain-english/"  rel="bookmark" class="crp_title">VMware ESX FCoE CNA Compatibility in Plain English</a></li><li><a href="http://blog.fosketts.net/2009/08/24/mac-os-106-snow-leopard-hands-august-28/"  rel="bookmark" class="crp_title">Mac OS X 10.6 &#8220;Snow Leopard&#8221;: In Our Hands August 28!</a></li><li><a href="http://blog.fosketts.net/2011/05/09/ibm-adds-vaai-support-xiv-svc/"  rel="bookmark" class="crp_title">IBM Adds VAAI Support to XIV and SVC</a></li><li><a href="http://blog.fosketts.net/2011/09/01/falconstor-nss-vmware-vaai/"  rel="bookmark" class="crp_title">FalconStor Brings VAAI Support To Every Storage Array</a></li></ul></div><script src="http://feeds.feedburner.com/~s/sfoskett?i=http://blog.fosketts.net/2011/02/08/vmware-vaai-storage-array-support-plain-english/" type="text/javascript" charset="utf-8"></script><hr />
<p><small>© sfoskett for <a href="http://blog.fosketts.net">Stephen Foskett, Pack Rat</a>, 2011. |
<a href="http://blog.fosketts.net/2011/02/08/vmware-vaai-storage-array-support-plain-english/">VMware VAAI Storage Array Support in Plain English</a>
<br/>
This post was categorized as <a href="http://blog.fosketts.net/category/everything/enterprisestorage/" title="View all posts in Enterprise storage" rel="category tag">Enterprise storage</a>, <a href="http://blog.fosketts.net/category/everything/" title="View all posts in Everything" rel="category tag">Everything</a>, <a href="http://blog.fosketts.net/category/gestaltit/" title="View all posts in Gestalt IT" rel="category tag">Gestalt IT</a>, <a href="http://blog.fosketts.net/category/everything/virtualstorage/" title="View all posts in Virtual Storage" rel="category tag">Virtual Storage</a>. Each of my categories has its own feed if you'd like to filter out or focus on posts like this.<br/>
</small></p>]]></content:encoded>
			<wfw:commentRss>http://blog.fosketts.net/2011/02/08/vmware-vaai-storage-array-support-plain-english/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
	
		<series:name><![CDATA[VMware storage features]]></series:name>
	</item>
		<item>
		<title>How To Automate &#8220;Get/Send Clipboard&#8221; in Mac OS X Screen Sharing</title>
		<link>http://blog.fosketts.net/2010/08/06/automate-get-send-clipboard-mac-os-screen-sharing/</link>
		<comments>http://blog.fosketts.net/2010/08/06/automate-get-send-clipboard-mac-os-screen-sharing/#comments</comments>
		<pubDate>Fri, 06 Aug 2010 15:49:13 +0000</pubDate>
		<dc:creator>Stephen</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[AppleScript]]></category>
		<category><![CDATA[clipboard]]></category>
		<category><![CDATA[OS X]]></category>
		<category><![CDATA[Screen Sharing]]></category>
		<category><![CDATA[scripting]]></category>
		<category><![CDATA[Skype]]></category>
		<category><![CDATA[Speech Recognition]]></category>
		<category><![CDATA[System Preferences]]></category>
		<category><![CDATA[UI Browser]]></category>
		<category><![CDATA[Universal Access]]></category>

		<guid isPermaLink="false">http://blog.fosketts.net/?p=3505</guid>
		<description><![CDATA[I'm a heavy user of Screen Sharing in Mac OS X. When I'm in the office, I sit at a workstation with my trusty IBM Model M keyboard, 27" iMac, Microsoft Wheel Mouse Optical and Apple Magic Trackpad. Off to the side is my mobile environment, the MacBook Pro, open and running, with its display mirrored in a Screen Sharing window on the iMac. At the desk, I do most of my work on the iMac, with the MacBook limited to less-portable applications (Mail, iTunes, and iPhoto) and often displaying a full-screen TweetDeck board. But copying and pasting content between these two environments was a serious multi-click pain until I automated it with AppleScript and Speech. Here's how I did it.]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m a heavy user of Screen Sharing in Mac OS X. When I&#8217;m in the office, I sit at a workstation with my trusty IBM Model M keyboard, 27&#8243; iMac, Microsoft Wheel Mouse Optical and Apple Magic Trackpad. Off to the side is my mobile environment, the MacBook Pro, open and running, with its display mirrored in a Screen Sharing window on the iMac. At the desk, I do most of my work on the iMac, with the MacBook limited to less-portable applications (Mail, iTunes, and iPhoto) and often displaying a full-screen TweetDeck board. But copying and pasting content between these two environments was a serious multi-click pain until I automated it with AppleScript and Speech. Here&#8217;s how I did it.</p>
<blockquote><p><strong>Update</strong>: If you want to do this using a keyboard shortcut instead of speech recognition, see my followup piece, <a href="http://blog.fosketts.net/2010/08/09/assign-keyboard-shortcut-applescript-automator-service/" >How To Assign Keyboard Shortcuts To AppleScript and Automator Actions</a></p></blockquote>
<h3>Separate Clipboards</h3>
<p>Each Mac maintains its own universal clipboard, and each application interacts with this in its own way. Most applications use similar commands (command-c, command-v, etc) and I use these many times an hour, moving text, addresses, pictures and the like between applications.</p>
<p>But this all breaks down when using two Macs at once. The clipboards are not shared across the network (though some third-party applications allow this), setting up a roadblock to productivity. Since I usually have a Screen Sharing session open, I usually use that application&#8217;s &#8220;Get Clipboard&#8221; and &#8220;Send Clipboard&#8221; function to move clips between Macs. But these are buried in the &#8220;Edit&#8221; menu of that one application, forcing me to switch to it, move the pointer to select &#8220;Edit&#8221;, move it again to select the correct item (&#8220;Get&#8221; or &#8220;Send&#8221;), reactivate the original application, and finally do what I want with the clip.</p>
<p>After performing this dance literally hundreds of times a day for months, I decided to try to automate it. First, I thought to bind a keyboard command shortcut to it in System Keyboard Preferences. But this failed miserably &#8211; keyboard shortcuts only work with the active application, and Screen Sharing sends all keystrokes through to the remote machine.</p>
<p>Then I thought of the Mac OS X Speech function. It allows an AppleScript script to be run from any application. If I could script Screen Sharing&#8217;s Edit menu, I&#8217;d have solved about 90% of my issues: I still couldn&#8217;t run the script from within a Screen Sharing session, but I could run it from anywhere else.</p>
<h3>AppleScript and Screen Sharing</h3>
<p>AppleScript is a clever scripting language, allowing most Mac OS X applications to be automated using readable commands. It reminds me somewhat of Microsoft Visual Basic, but is integrated with the operating system. Some applications allow extensive scripting, while others (like Skype) offer a simple command for API access. Then there are those like Screen Sharing that have no AppleScript documentation at all.</p>
<p>Mac OS X comes to the rescue here, allowing AppleScript access to all GUI functions in any application through the &#8220;Universal Access&#8221; Preferences pane, but these aren&#8217;t well-documented. I downloaded the trial version of <a href="http://pfiddlesoft.com/uibrowser/"  target="_blank">UI Browser</a> to discover the proper GUI string to access the &#8220;Send Clipboard&#8221; and &#8220;Edit Clipboard&#8221; functions in Screen Sharing. Amazingly, it works! I now have an AppleScript to trigger these commands.</p>
<p>But the script includes a statement activating Screen Sharing, so it leaves me there when I&#8217;m done rather than the application I was in to begin with. I located <a href="http://forums.macosxhints.com/showpost.php?p=118895&amp;postcount=8"  target="_blank">a method of determining the current running application</a> (a surprisingly-complex one &#8211; where&#8217;s the simple command, Apple?) and added a statement reactivating it at the end. Voila! My script was complete!</p>
<p>I saved two scripts to Speech&#8217;s Speakable Items folder, one for &#8220;get&#8221; and another for &#8220;send&#8221;, and am now able to speak a command to copy items in and out of my remote computer&#8217;s clipboard. Excellent!</p>
<h3>The Recipe</h3>
<p>Here&#8217;s what you have to do to duplicate my success:</p>
<ol>
<li>Select &#8220;Enable access for assistive devices&#8221; in the Universal Access pane of System Preferences</li>
<li>In the &#8220;Speech Recognition&#8221; section of the Speech pane of System Preferences, turn on &#8220;Speakable Items&#8221;</li>
<li>While you&#8217;re there, make sure &#8220;Global speakable items&#8221; is selected under &#8220;Commands&#8221;</li>
<li>Open AppleScript Editor and paste in the following script. Save it as &#8220;~/Library/Speech/Speakable Items/Screen get clip&#8221;
<pre>set front_app to (path to frontmost application as Unicode text)
set AppleScript's text item delimiters to ":"
set front_app to front_app's text items
set AppleScript's text item delimiters to {""} --&gt; restore delimiters to default value
set item_num to (count of front_app) - 1
set app_name to item item_num of front_app
set AppleScript's text item delimiters to "."
set app_name to app_name's text items
set AppleScript's text item delimiters to {""} --&gt; restore delimiters to default value
set MyApp to item 1 of app_name

activate application "Screen Sharing"
tell application "System Events"
	tell application process "Screen Sharing"
		click menu item "Get Clipboard" of menu 1 of menu bar item "Edit" of menu bar 1
	end tell
end tell

activate application MyApp</pre>
</li>
<li>Create another AppleScript containing the following content and save it as &#8220;~/Library/Speech/Speakable Items/Screen send clip&#8221;
<pre>set front_app to (path to frontmost application as Unicode text)
set AppleScript's text item delimiters to ":"
set front_app to front_app's text items
set AppleScript's text item delimiters to {""} --&gt; restore delimiters to default value
set item_num to (count of front_app) - 1
set app_name to item item_num of front_app
set AppleScript's text item delimiters to "."
set app_name to app_name's text items
set AppleScript's text item delimiters to {""} --&gt; restore delimiters to default value
set MyApp to item 1 of app_name

activate application "Screen Sharing"
tell application "System Events"
	tell application process "Screen Sharing"
		click menu item "Send Clipboard" of menu 1 of menu bar item "Edit" of menu bar 1
	end tell
end tell

activate application MyApp</pre>
</li>
<li>Enjoy!</li>
</ol>
<p>This may give you ideas for other AppleScript items. I know it sparked my creativity! Here&#8217;s a bonus AppleScript to set my Skype status to &#8220;Do Not Disturb&#8221;:</p>
<pre>tell application "Skype"
	send command "SET USERSTATUS DND" script name "Set Skype Status Do Not Disturb"
end tell</pre>
<p>Since <a href="http://developer.skype.com/accessories"  target="_blank">Skype has an AppleScript bridge</a> (&#8220;send command&#8221;) to their API, there&#8217;s no need to mess with application switching! I wish more applications exposed their innards like this!</p>
<div id="crp_related"><h3>You might also want to read these other posts...</h3><ul><li><a href="http://blog.fosketts.net/2010/08/09/assign-keyboard-shortcut-applescript-automator-service/"  rel="bookmark" class="crp_title">How To Assign Keyboard Shortcuts To AppleScript and Automator Actions</a></li><li><a href="http://blog.fosketts.net/2008/07/25/quick-and-easy-bluetooth-sharing-between-pc-and-mac/"  rel="bookmark" class="crp_title">Quick and Easy Bluetooth Sharing Between PC and Mac</a></li><li><a href="http://blog.fosketts.net/2010/11/02/burn-data-dvd-mac-os-finder/"  rel="bookmark" class="crp_title">How To Create a Data DVD Using Only the Mac OS X Finder</a></li><li><a href="http://blog.fosketts.net/2011/04/19/mac-photo-booth-flash-delay/"  rel="bookmark" class="crp_title">How To Use Mac Photo Booth With No Flash or Delay</a></li><li><a href="http://blog.fosketts.net/2011/10/31/google-reader-unfriends-internet/"  rel="bookmark" class="crp_title">Google Reader&#8217;s Roach Motel &#8220;Un-Friends&#8221; the Internet</a></li></ul></div><script src="http://feeds.feedburner.com/~s/sfoskett?i=http://blog.fosketts.net/2010/08/06/automate-get-send-clipboard-mac-os-screen-sharing/" type="text/javascript" charset="utf-8"></script><hr />
<p><small>© sfoskett for <a href="http://blog.fosketts.net">Stephen Foskett, Pack Rat</a>, 2010. |
<a href="http://blog.fosketts.net/2010/08/06/automate-get-send-clipboard-mac-os-screen-sharing/">How To Automate &#8220;Get/Send Clipboard&#8221; in Mac OS X Screen Sharing</a>
<br/>
This post was categorized as <a href="http://blog.fosketts.net/category/everything/apple/" title="View all posts in Apple" rel="category tag">Apple</a>, <a href="http://blog.fosketts.net/category/everything/personal/" title="View all posts in Personal" rel="category tag">Personal</a>. Each of my categories has its own feed if you'd like to filter out or focus on posts like this.<br/>
</small></p>]]></content:encoded>
			<wfw:commentRss>http://blog.fosketts.net/2010/08/06/automate-get-send-clipboard-mac-os-screen-sharing/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Zend Simple Cloud API = Freedom!</title>
		<link>http://blog.fosketts.net/2009/09/22/zend-simple-cloud-api/</link>
		<comments>http://blog.fosketts.net/2009/09/22/zend-simple-cloud-api/#comments</comments>
		<pubDate>Tue, 22 Sep 2009 16:01:59 +0000</pubDate>
		<dc:creator>Stephen</dc:creator>
				<category><![CDATA[Enterprise storage]]></category>
		<category><![CDATA[Virtual Storage]]></category>
		<category><![CDATA[Amazon S3]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[cloud computing]]></category>
		<category><![CDATA[cloud storage]]></category>
		<category><![CDATA[Microsoft Azure]]></category>
		<category><![CDATA[Nirvanix]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[Rackspace Cloud Files]]></category>
		<category><![CDATA[Simple Cloud]]></category>
		<category><![CDATA[Zend]]></category>

		<guid isPermaLink="false">http://blog.fosketts.net/?p=2319</guid>
		<description><![CDATA[As I pointed out last week, cloud computing does not need traditional consensus-committee standards, at least not yet. The inherent flexibility and programmability of cloud platforms and applications lends a certain flavor of openness to cloud computing that reduces the requirement for (and thus impact of) standards. Furthermore, the amazing creativity currently being applied to [...]]]></description>
			<content:encoded><![CDATA[<p>As I pointed out last week, <a href="http://blog.fosketts.net/2009/09/16/cloud-services-standards/" >cloud computing does not need traditional consensus-committee standards</a>, at least not yet. The inherent flexibility and programmability of cloud platforms and applications lends a certain flavor of openness to cloud computing that reduces the requirement for (and thus impact of) standards. Furthermore, the amazing creativity currently being applied to cloud is filling the standards gap organically with practical methods to create portability and compatibility between cloud providers. Case in point: Today, <strong>Zend (the folks behind PHP) introduced a cross-platform interface to most major public cloud providers, including Amazon, Microsoft, Rackspace, and Nirvanix</strong>.<span id="more-2319"></span></p>
<p>This new <strong><a href="http://www.simplecloud.org/" >Simple Cloud API</a></strong> is a godsend to PHP developers looking for a simple object-oriented way to access cloud file, document, and queueing services. I&#8217;m not much of a programmer, but I use PHP all the time and am looking forward to adding <strong>simple calls to my code to store and access data wherever it lives, in S3, Azure, Cloud Files, and the Nirvanix SDN</strong>. Most of my PHP work goes into the WordPress blogging platform, and I&#8217;m already imagining cool new plugins that this simple interface makes possible.</p>
<p>But the most telling aspect of this announcement is not what it is but what it is not: Rather than meet with a committee or ask for approval, the fine folks at Zend and others in the PHP community just whipped up the whole thing and launched it. <strong>The fact that Amazon, Rackspace, Microsoft, and Nirvanix offer fully-documented APIs and leverage open protocols like IP and HTTP made the creation of this interface a straightforward matter of coding</strong>. This may not meet the definitions of open and free put forth by the open source and free software community in the last two decades, but it certainly meets the spirit of openness and freedom demanded by today&#8217;s web developers and end users. And isn&#8217;t that what it&#8217;s all about?</p>
<p>Of course, the Zend Simple Cloud API is by no means unique. Indeed, <a href="http://www.cloudloop.com/" >CloudLoop</a>, which launched earlier this month, offers a similar interface to public cloud storage for Java programmers and even included a UNIX-like command line interface. Like Zend, CloudLoop was able to dispense with the politics and implement their open interface using programming skills, API specifications, and technical support forums. It is gratifying to see cloud vendors actively foster and support this kind of creativity, even creating and publishing their own frameworks for languages like Ruby and Python.</p>
<p>These practical interfaces really deliver the goods:</p>
<ul>
<li><strong>Developers and</strong> programmers get <strong>simple, instant access</strong> to all of the major public cloud storage service providers.</li>
<li><strong>End users</strong> of these applications will get a <strong>choice of cloud services</strong> as well as <strong>easy portability</strong> if they decide to switch.</li>
</ul>
<p>This is <strong>true freedom, available today</strong>, and enabled without contentious political battles and long waits for standardization. Another telling aspect: <strong>No one asked for permission from the service providers involved, they just went ahead and did it</strong>. Now that&#8217;s the Internet I love! Who needs standards?</p>
<div id="crp_related"><h3>You might also want to read these other posts...</h3><ul><li><a href="http://blog.fosketts.net/2009/09/16/cloud-services-standards/"  rel="bookmark" class="crp_title">We Don&#8217;t Need Cloud Standards (Yet)</a></li><li><a href="http://blog.fosketts.net/2009/07/01/cloudstuff-stuff-cloud/"  rel="bookmark" class="crp_title">CloudStuff Versus Stuff in the Cloud</a></li><li><a href="http://blog.fosketts.net/2009/05/19/lessons-cloud-computing-conference-expo-prague-2009/"  rel="bookmark" class="crp_title">Lessons From the Cloud Computing Conference and Expo Prague 2009</a></li><li><a href="http://blog.fosketts.net/2009/04/23/cloud-slam-storage-panel/"  rel="bookmark" class="crp_title">Cloud Slam Storage Panel: This Will Be Interesting</a></li><li><a href="http://blog.fosketts.net/2009/03/19/sun-cloud/"  rel="bookmark" class="crp_title">Sun Launches Their Own Cloud, But For Which Market?</a></li></ul></div><script src="http://feeds.feedburner.com/~s/sfoskett?i=http://blog.fosketts.net/2009/09/22/zend-simple-cloud-api/" type="text/javascript" charset="utf-8"></script><hr />
<p><small>© sfoskett for <a href="http://blog.fosketts.net">Stephen Foskett, Pack Rat</a>, 2009. |
<a href="http://blog.fosketts.net/2009/09/22/zend-simple-cloud-api/">Zend Simple Cloud API = Freedom!</a>
<br/>
This post was categorized as <a href="http://blog.fosketts.net/category/everything/enterprisestorage/" title="View all posts in Enterprise storage" rel="category tag">Enterprise storage</a>, <a href="http://blog.fosketts.net/category/everything/virtualstorage/" title="View all posts in Virtual Storage" rel="category tag">Virtual Storage</a>. Each of my categories has its own feed if you'd like to filter out or focus on posts like this.<br/>
</small></p>]]></content:encoded>
			<wfw:commentRss>http://blog.fosketts.net/2009/09/22/zend-simple-cloud-api/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>We Don&#8217;t Need Cloud Standards (Yet)</title>
		<link>http://blog.fosketts.net/2009/09/16/cloud-services-standards/</link>
		<comments>http://blog.fosketts.net/2009/09/16/cloud-services-standards/#comments</comments>
		<pubDate>Wed, 16 Sep 2009 17:03:02 +0000</pubDate>
		<dc:creator>Stephen</dc:creator>
				<category><![CDATA[Computer History]]></category>
		<category><![CDATA[Enterprise storage]]></category>
		<category><![CDATA[Gestalt IT]]></category>
		<category><![CDATA[Virtual Storage]]></category>
		<category><![CDATA[Amazon]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[cloud computing]]></category>
		<category><![CDATA[cloud storage]]></category>
		<category><![CDATA[CloudLoop]]></category>
		<category><![CDATA[EC2]]></category>
		<category><![CDATA[featured]]></category>
		<category><![CDATA[FUD]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[HTTP]]></category>
		<category><![CDATA[NetApp]]></category>
		<category><![CDATA[Nirvanix]]></category>
		<category><![CDATA[Rackspace]]></category>
		<category><![CDATA[REST]]></category>
		<category><![CDATA[RightScale]]></category>
		<category><![CDATA[S3]]></category>
		<category><![CDATA[SNIA]]></category>
		<category><![CDATA[Terremark]]></category>
		<category><![CDATA[Yahoo]]></category>

		<guid isPermaLink="false">http://blog.fosketts.net/?p=2312</guid>
		<description><![CDATA[Championing "open" and calling for standards has become the first stalling action by late-movers in technology spaces. They see opportunity passing by and try to hold back progress and FUD the market by yelling about proprietary solutions, vendor lock-in, and a lack of standards. Many well-intentioned IT folks follow along: After all, who doesn't want openness, standardization, and interoperability?]]></description>
			<content:encoded><![CDATA[<p>Championing &#8220;open&#8221; and calling for standards has become the first stalling action by late-movers in technology spaces. They see opportunity passing by and try to hold back progress and FUD the market by yelling about proprietary solutions, vendor lock-in, and a lack of standards. Many well-intentioned IT folks follow along: After all, who doesn&#8217;t want openness, standardization, and interoperability?</p>
<p>But cloud services are different.<span id="more-2312"></span> Seriously! <strong>Cloud services don&#8217;t need standards</strong> because:</p>
<ol>
<li><strong>Cloud services are still rapidly evolving</strong> &#8211; No one knows how they will look in a year, let alone a decade, and a premature standard will be worthless. Similarly, it&#8217;s not at all clear what use cases will eventually win out, and <strong>usage should drive interfaces</strong>, not the other way around.</li>
<li><strong>Cloud services are many and varied</strong> &#8211; It&#8217;s incredibly hard to come up with a reasonably-complete standard programming API or management platform when each vendor&#8217;s offering is radically different. <strong>Standards must follow the 80/20 rule</strong>, but today&#8217;s cloud offerings are only about 20% similar.</li>
<li><strong>(Real) cloud systems are open already</strong> &#8211; The whole point of the public cloud is to leverage existing open standards for access (IP/HTTP) and any worthwhile service already has a freely-usable REST-like API. Cloud services are engineered to be programmable and open, so <strong>the only lock-in is in how you use the cloud</strong>.</li>
</ol>
<p>We can&#8217;t even agree on terminology at this point. Is data storage as a service <a href="http://www.snia.org/tech_activities/publicreview/CDMI_Spec_v08.pdf"  target="_blank">DaaS</a> (as SNIA says) or <a href="http://communities.netapp.com/people/garcia/blog/tags/staas"  target="_blank">STaaS</a> (as NetApp says)? How do you define public, private, and hybrid cloud? And what is cloud anyway? Cloud computing is <a href="http://blog.gardeviance.org/2009/09/cloud-computing-standards-war.html"  target="_blank">not a war</a>, it&#8217;s a <a href="http://www.rationalsurvivability.com/blog/?p=1316"  target="_blank">fantastically exciting race</a> to deliver value!</p>
<h3>Open for Business</h3>
<p>I&#8217;d like to return for a moment to that last point: <strong>The key element I&#8217;ve seen in most interesting cloudy products is programmability</strong>. Service providers publish API documents outlining the inputs, processing, and outputs for their systems and developers and end users create applications that leverage these. The best of these APIs use the concept of REST, delivering services through extremely simple and self-contained HTTP calls. This barely even rises to the level of software coding (and thus isn&#8217;t a true API) and is the hallmark of the cloud.</p>
<p><strong>These systems are wide open</strong>: You can explore their interfaces, discovering new ways to use the them that were never intended. The same process accompanies all Internet systems, from RSS and Atom to Yahoo Finance. Just as one can rapidly migrate from Yahoo to Google by <a rel="nofollow" href="http://computerprogramming.suite101.com/article.cfm/google_yahoo_finance_and_rebol_programming"  target="_blank">substituting a few URLs and parameters</a>, so too can one move between cloud platforms.</p>
<p>Note that certain cloud systems lend themselves more to this kind of mobility. Once cannot move virtual machines from Amazon EC2 to Rackspace or Terremark because the underlying hypervisor technology is different. But even here companies like <a href="http://www.rightscale.com/"  target="_blank">RightScale</a> are stepping in to enable mobility.</p>
<p>When it comes to cloud storage services, <strong>the major players&#8217; interfaces are open enough that migrating data in and out is simply a matter of performance</strong>: Read from this one, write to that one, and wait until the process is done. I am not a programmer and yet I was able to port an application from S3 to Nirvanix in just a few hours using only the respective API documentation. Interfaces like <a href="http://www.cloudloop.com/"  target="_blank">CloudLoop</a> can also be leveraged to ease the movement of data.</p>
<h3>Standards When?</h3>
<p>Cloud services will eventually settle down and be standardized. I expect a workable cross-platform API for RESTful cloud storage within 24 months, for example. And one expects that the management of cloud compute instances will pass through a consistent and stable interface in that same timeframe. But these will develop as a natural part of the evolution of the systems themselves, not through some artificial &#8220;build it and they will come&#8221; standardization process.</p>
<p>There is nothing wrong with big companies sending their representatives to SNIA and DMTF meetings to talk about standardization. In fact, this is a great way to discuss ideas and begin to orient the industry. But the time for standards has not yet come, and users of cloud services have no need to wait for them. In fact, waiting for a standard will just prolong the maturation of cloud services, since <strong>real-world applications are the external pressure that forces evolutionary selection</strong>. Amazon would never have created their virtual private cloud (VPC) capability without customer input, and they will never perfect this capability if they rely only on pundits, bloggers, and product marketers.</p>
<p>Even when standards do appear, they will not eliminate per-solution APIs. Cloud service providers will continue to explore new concepts, and these will appear first in &#8220;proprietary&#8221; interfaces. Perhaps they will use entirely unique calls, or perhaps they will leverage reserved or unassigned sections of the standard, but innovation will continue. Witness the radical changes in HTML versions to date, the additions to CSS, and the wide world of browser plugins.</p>
<p>So we don&#8217;t need cloud standards yet. They will come, whether artificially pushed by committees or evolving through use, but <strong>only useful standards will survive</strong>. Isn&#8217;t that just how it should be?</p>
<blockquote><p>Note: I am employed by <a href="http://www.nirvanix.com/"  target="_blank">Nirvanix</a>, a cloud managed storage service provider, providing independent cloud strategy advice as Director of Consulting. Although this article was not created for my employer and is not intended to reflect their views, my perceptions are obviously colored by my daily work.</p>
</blockquote>
<div id="crp_related"><h3>You might also want to read these other posts...</h3><ul><li><a href="http://blog.fosketts.net/2009/09/22/zend-simple-cloud-api/"  rel="bookmark" class="crp_title">Zend Simple Cloud API = Freedom!</a></li><li><a href="http://blog.fosketts.net/2009/07/01/cloudstuff-stuff-cloud/"  rel="bookmark" class="crp_title">CloudStuff Versus Stuff in the Cloud</a></li><li><a href="http://blog.fosketts.net/2009/05/19/lessons-cloud-computing-conference-expo-prague-2009/"  rel="bookmark" class="crp_title">Lessons From the Cloud Computing Conference and Expo Prague 2009</a></li><li><a href="http://blog.fosketts.net/2009/03/19/sun-cloud/"  rel="bookmark" class="crp_title">Sun Launches Their Own Cloud, But For Which Market?</a></li><li><a href="http://blog.fosketts.net/2009/04/23/cloud-slam-storage-panel/"  rel="bookmark" class="crp_title">Cloud Slam Storage Panel: This Will Be Interesting</a></li></ul></div><script src="http://feeds.feedburner.com/~s/sfoskett?i=http://blog.fosketts.net/2009/09/16/cloud-services-standards/" type="text/javascript" charset="utf-8"></script><hr />
<p><small>© sfoskett for <a href="http://blog.fosketts.net">Stephen Foskett, Pack Rat</a>, 2009. |
<a href="http://blog.fosketts.net/2009/09/16/cloud-services-standards/">We Don&#8217;t Need Cloud Standards (Yet)</a>
<br/>
This post was categorized as <a href="http://blog.fosketts.net/category/everything/computerhistory/" title="View all posts in Computer History" rel="category tag">Computer History</a>, <a href="http://blog.fosketts.net/category/everything/enterprisestorage/" title="View all posts in Enterprise storage" rel="category tag">Enterprise storage</a>, <a href="http://blog.fosketts.net/category/gestaltit/" title="View all posts in Gestalt IT" rel="category tag">Gestalt IT</a>, <a href="http://blog.fosketts.net/category/everything/virtualstorage/" title="View all posts in Virtual Storage" rel="category tag">Virtual Storage</a>. Each of my categories has its own feed if you'd like to filter out or focus on posts like this.<br/>
</small></p>]]></content:encoded>
			<wfw:commentRss>http://blog.fosketts.net/2009/09/16/cloud-services-standards/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>CloudStuff Versus Stuff in the Cloud</title>
		<link>http://blog.fosketts.net/2009/07/01/cloudstuff-stuff-cloud/</link>
		<comments>http://blog.fosketts.net/2009/07/01/cloudstuff-stuff-cloud/#comments</comments>
		<pubDate>Wed, 01 Jul 2009 21:12:17 +0000</pubDate>
		<dc:creator>Stephen</dc:creator>
				<category><![CDATA[Computer History]]></category>
		<category><![CDATA[Enterprise storage]]></category>
		<category><![CDATA[Personal]]></category>
		<category><![CDATA[Virtual Storage]]></category>
		<category><![CDATA[Amazon]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[App Engine]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[Barry Burke]]></category>
		<category><![CDATA[cloud compu]]></category>
		<category><![CDATA[cloud storage]]></category>
		<category><![CDATA[CloudCamp]]></category>
		<category><![CDATA[CloudNAS]]></category>
		<category><![CDATA[EBS]]></category>
		<category><![CDATA[EC2]]></category>
		<category><![CDATA[EMC]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Jungle Disk]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Mosso]]></category>
		<category><![CDATA[Nirvanix]]></category>
		<category><![CDATA[Rackspace]]></category>
		<category><![CDATA[Slicehost]]></category>
		<category><![CDATA[Xen]]></category>

		<guid isPermaLink="false">http://blog.fosketts.net/?p=2134</guid>
		<description><![CDATA[This world of cloud computing sure can seem cloudy. Last night at CloudCamp Columbus, I led a session outlining the incredible differences between the diverse offerings all called cloud storage. How can companies like Amazon, Nirvanix, Rackspace, EMC, and the rest use the same name for such vastly different products? Check out these detailed posts [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.fosketts.net/wp-content/uploads/2009/06/logo_cloudcamp.png" ><img style=' float: right; padding: 4px; margin: 0 0 2px 7px;'  class="alignright size-full wp-image-2053" title="logo_cloudcamp" src="http://blog.fosketts.net/wp-content/uploads/2009/06/logo_cloudcamp.png" alt="logo_cloudcamp" width="308" height="70" /></a>This world of cloud computing sure can seem cloudy. Last night at CloudCamp Columbus, I led a session outlining <strong>the incredible differences between the diverse offerings all called cloud storage</strong>. How can companies like Amazon, Nirvanix, Rackspace, EMC, and the rest use the same name for such vastly different products?<span id="more-2134"></span></p>
<blockquote><p>Check out these detailed posts on cloud storage I wrote for my other blog, <a href="http://developer.nirvanix.com/blogs/strategies/default.aspx"  target="_blank">Enterprise Storage Strategies</a>:</p>
<ul>
<li><a href="http://developer.nirvanix.com/blogs/strategies/archive/2009/06/29/cloud-storage-storage-in-the-cloud-and-cloudy-storage-systems.aspx" >Cloud Storage, Storage in the Cloud, and Cloudy Storage Systems</a></li>
<li><a href="http://developer.nirvanix.com/blogs/strategies/archive/2009/06/19/what-makes-cloud-storage-different-from-traditional-san-and-nas.aspx" >What Makes Cloud Storage Different from Traditional SAN and NAS?</a></li>
</ul>
</blockquote>
<p>Eventually, it dawned on me: <strong>There&#8217;s a big difference between real cloudstuff and plain old stuff in the cloud!</strong></p>
<p>Lots of cloud computing offerings are <strong>startlingly conventional</strong>. They&#8217;re plain-jane IT infrastructure just like we all have today: Virtual servers, storage, and databases. Strip away the management API and self-service model and Amazon <a rel="nofollow" href="http://aws.amazon.com/ec2/"  target="_blank">EC2</a> and <a rel="nofollow" href="http://aws.amazon.com/ebs/"  target="_blank">EBS</a> looks an awful lot like the Xen-based virtual server infrastructure you might find at any old IT shop. The same goes for Rackspace&#8217;s <a href="http://www.rackspacecloud.com/cloud_hosting_products/servers"  target="_blank">Mosso Cloud Servers</a>: They&#8217;re extremely similar to Rackspace&#8217;s <a href="http://www.slicehost.com/"  target="_blank">Slicehost virtual private servers</a>!</p>
<p>This isn&#8217;t all bad, of course. As I discussed with EMC&#8217;s <a rel="nofollow" href="http://thestorageanarchist.typepad.com/"  target="_blank">Barry Burke</a> last week, <strong>you can theoretically run your ERP application on EC2</strong> without major gyrations. Try that with <a rel="nofollow" href="http://www.microsoft.com/azure/default.mspx"  target="_blank">Microsoft Azure</a> or <a rel="nofollow" href="http://code.google.com/appengine/"  target="_blank">Google App Engine</a>! And the management layers, especially those from companies like <a href="http://www.rightscale.com/"  target="_blank">RightScale</a>, turn these run-of-the-mill parts into something really extraordinary! VMware&#8217;s vCloud concept really hammers home this evolution-not-revolution mindset.</p>
<p><strong>Real cloudstuff is completely different</strong>. Comparing a Xen instance running Linux on some disk (a-la EC2) to a programmable platform like Azure is problematic. Just about the only thing they have in common (apart from the cloud name) is the fact that they&#8217;re hosted on multi-tenant servers and offered to the public on a pay-per-usage model. Cloudstuff is the IT revolution that application developers have dreamed of!</p>
<p>Of course, <strong>the problem with whole-cloth reinvention is that it&#8217;s slow to take hold</strong>. Although net-new apps can be built to take advantage of full-on cloud infrastructure today, it will literally be a decade before the corporate IT applications we all rely on will run there. The early adopters will be companies like Microsoft and Google, who have a vested interest in seeing the concept succeed and the development muscle to make it happen.</p>
<p>Then there are <strong>the bridges between today&#8217;s world and this cloudstuff future</strong>. Consider applications like <a href="http://www.nirvanix.com/products-services/standard-based-access/index.aspx"  target="_blank">Nirvanix CloudNAS</a> and <a href="http://www.jungledisk.com/"  target="_blank">Jungle Disk</a>: They hide the complexity of API-driven cloud storage behind the familiar face of file server or backup application. Once the data is loaded, cloud-aware applications can access it. <strong>This is where the magic happens!</strong></p>
<div id="crp_related"><h3>You might also want to read these other posts...</h3><ul><li><a href="http://blog.fosketts.net/2009/03/19/sun-cloud/"  rel="bookmark" class="crp_title">Sun Launches Their Own Cloud, But For Which Market?</a></li><li><a href="http://blog.fosketts.net/2009/09/22/zend-simple-cloud-api/"  rel="bookmark" class="crp_title">Zend Simple Cloud API = Freedom!</a></li><li><a href="http://blog.fosketts.net/2009/04/23/enterprise-storage-strategies-blog/"  rel="bookmark" class="crp_title">Introducing the Enterprise Storage Strategies Blog</a></li><li><a href="http://blog.fosketts.net/2009/07/24/boston-folks-cloudcamp/"  rel="bookmark" class="crp_title">Boston Folks: Come to CloudCamp!</a></li><li><a href="http://blog.fosketts.net/2010/02/01/commvault-cloud-storage-seat-adult-table/"  rel="bookmark" class="crp_title">CommVault Gives Cloud Storage A Seat At The Adult Table</a></li></ul></div><script src="http://feeds.feedburner.com/~s/sfoskett?i=http://blog.fosketts.net/2009/07/01/cloudstuff-stuff-cloud/" type="text/javascript" charset="utf-8"></script><hr />
<p><small>© sfoskett for <a href="http://blog.fosketts.net">Stephen Foskett, Pack Rat</a>, 2009. |
<a href="http://blog.fosketts.net/2009/07/01/cloudstuff-stuff-cloud/">CloudStuff Versus Stuff in the Cloud</a>
<br/>
This post was categorized as <a href="http://blog.fosketts.net/category/everything/computerhistory/" title="View all posts in Computer History" rel="category tag">Computer History</a>, <a href="http://blog.fosketts.net/category/everything/enterprisestorage/" title="View all posts in Enterprise storage" rel="category tag">Enterprise storage</a>, <a href="http://blog.fosketts.net/category/everything/personal/" title="View all posts in Personal" rel="category tag">Personal</a>, <a href="http://blog.fosketts.net/category/everything/virtualstorage/" title="View all posts in Virtual Storage" rel="category tag">Virtual Storage</a>. Each of my categories has its own feed if you'd like to filter out or focus on posts like this.<br/>
</small></p>]]></content:encoded>
			<wfw:commentRss>http://blog.fosketts.net/2009/07/01/cloudstuff-stuff-cloud/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Sun Launches Their Own Cloud, But For Which Market?</title>
		<link>http://blog.fosketts.net/2009/03/19/sun-cloud/</link>
		<comments>http://blog.fosketts.net/2009/03/19/sun-cloud/#comments</comments>
		<pubDate>Thu, 19 Mar 2009 14:43:34 +0000</pubDate>
		<dc:creator>Stephen</dc:creator>
				<category><![CDATA[Enterprise storage]]></category>
		<category><![CDATA[Gestalt IT]]></category>
		<category><![CDATA[Virtual Storage]]></category>
		<category><![CDATA[Amazon]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[AWS]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[EC2]]></category>
		<category><![CDATA[EMC]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Hyper-V]]></category>
		<category><![CDATA[Jungle Disk]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Mosso]]></category>
		<category><![CDATA[Nirvanix]]></category>
		<category><![CDATA[Rackspace]]></category>
		<category><![CDATA[strategy]]></category>
		<category><![CDATA[Sun]]></category>
		<category><![CDATA[VDC]]></category>
		<category><![CDATA[VirtualBox]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[WebDAV]]></category>

		<guid isPermaLink="false">http://blog.fosketts.net/?p=1579</guid>
		<description><![CDATA[While the bulk of Sun-related news this week relates to reported talks of a buyout by IBM, the company took a break from negotiations to introduce their own cloud computing and storage infrastructure, challenging Amazon, Google, Rackspace, and perhaps VMware, Microsoft, and Nirvanix.]]></description>
			<content:encoded><![CDATA[<div id="attachment_1580" class="wp-caption alignright" style="width: 228px;  border: 1px solid #dddddd; background-color: #f3f3f3; padding-top: 4px; margin: 10px; text-align:center; float: right;"><a href="http://blog.fosketts.net/wp-content/uploads/2009/03/sun-cloud.jpg" ><img class="size-medium wp-image-1580 " title="sun-cloud" src="http://blog.fosketts.net/wp-content/uploads/2009/03/sun-cloud-272x300.jpg" alt="Sun is getting into the cloud services business, but which market is their target?" width="218" height="240" /></a><p style=' padding: 0 4px 5px; margin: 0;'  class="wp-caption-text">Sun is getting into the cloud services business, but which market is their target?</p></div>
<p>While the bulk of Sun-related news this week relates to reported talks of a <a rel="nofollow" href="http://online.wsj.com/article/SB123742081606578475.html?mod=googlenews_wsj"  target="_blank">buyout by IBM</a>, the company took a break from negotiations to introduce their own <a href="http://www.infoworld.com/article/09/03/17/Sun_enters_the_cloud_1.html"  target="_blank">cloud computing and storage infrastructure</a>, challenging Amazon, Google, Rackspace, and perhaps VMware, Microsoft, and Nirvanix.</p>
<p>Sun is leveraging the assets they <a href="http://gigaom.com/2009/01/08/for-sun-q-layer-is-a-smart-buy/"  target="_blank">acquired</a> from <a href="http://www.sun.com/software/q-layer/"  target="_blank">Q-layer</a> earlier this year on top of OpenSolaris, MySQL, ZFS, and just about everything else in their arsenal to offer <strong>their own virtual data center (VDC) strategy</strong>. The Sun Cloud will be a private (inside the firewall) environment offering mobility of virtual machines. Q-layer had partnerships with both VMware and Microsoft and functioned with Windows, OpenSolaris, and Linux, suggesting that this will be quite a full-featured offering. Suddenly Sun&#8217;s free <a href="http://www.sun.com/third-party/global/amazon/"  target="_blank">OpenSolaris offering</a> on Amazon EC2 makes a lot more sense &#8211; it provides a gateway to take virtual computing business from the Bezos team!</p>
<p><span id="more-1579"></span></p>
<p>One very nifty angle Sun is taking is <a href="http://blogs.sun.com/jonathan/entry/unified_computing"  target="_blank">enabling VirtualBox system images</a> to be saved to (and presumably run in) their cloud. I wonder about monetization, since VirtualBox is more of a desktop virtualization system than VMware ESX and Microsoft Hyper-V, but the prospect of clicking &#8220;Upload to Cloud&#8221; is intriguing! OpenOffice will also allow cloud storage, a foil to Google Apps.</p>
<p>The Sun Cloud also includes a <strong>managed storage service</strong>. Sun apparently has three storage protocols: A proprietary Sun Cloud Storage API, WebDAV, and an object API likely leveraging Amazon&#8217;s AWS. The company claims that they are API-compatible with AWS, allowing applications written with Amazon in mind to be easily ported to their cloud storage service.</p>
<p>One key point to consider with all of this cloud talk, however, is how prepared each company is to support enterprise computing needs. Long-term viability depends on paying customers, and only the largest systems can attract enough end-user nickels and dimes to survive. Enterprise solutions are where the real money is, and questions remain about how prepared companies like Amazon, Google, and Rackspace are to support the needs of corporate users.</p>
<p>There are really <strong>three cloud markets</strong>: Shared clouds for small developers and enterprise customers and private cloud systems. <a rel="nofollow" href="http://aws.amazon.com/ec2/"  target="_blank">Amazon</a> was strong from the start with the little guys, Web 2.0 startups and end-user services like <a href="http://www.jungledisk.com/"  target="_blank">Jungle Disk</a>, and <a href="http://www.rackspace.com/solutions/cloud_hosting/index.php"  target="_blank">Rackspace/Mosso</a> and <a rel="nofollow" href="http://code.google.com/appengine/"  target="_blank">Google</a> are challenging them in this space. Sun&#8217;s focus on AWS compatibility and VirtualBox suggests that they plan to play in this sandbox.</p>
<p>But <strong>the enterprise cloud is another matter entirely</strong>. <a href="http://www.nirvanix.com/"  target="_blank">Nirvanix</a> stands strong in shared managed storage services, racking up <a href="http://www.socaltech.com/nirvanix_gets_win_in_arizona/s-0020507.html"  target="_blank">win</a> after <a href="http://searchdisasterrecovery.techtarget.com/news/article/0,289142,sid190_gci1350630,00.html"  target="_blank">win</a> with big customers. <a href="http://www.emc.com/products/detail/software/atmos.htm"  target="_blank">EMC</a>, <a href="http://www.vmware.com/technology/virtual-datacenter-os/"  target="_blank">VMware</a>, <a rel="nofollow" href="http://www.microsoft.com/azure/default.mspx"  target="_blank">Microsoft</a> and others are positioning themselves as private alternatives in this space. Will <a href="http://www.sun.com/solutions/cloudcomputing/index.jsp"  target="_blank">Sun</a> try to compete here, too? They are certainly talking about private clouds and the virtual data center, but there is a serious risk that they will lose focus trying to take on too many roles, and enterprise users won&#8217;t tolerate poor pre- and post-sales support! </p>
<div id="crp_related"><h3>You might also want to read these other posts...</h3><ul><li><a href="http://blog.fosketts.net/2009/07/01/cloudstuff-stuff-cloud/"  rel="bookmark" class="crp_title">CloudStuff Versus Stuff in the Cloud</a></li><li><a href="http://blog.fosketts.net/2009/09/22/zend-simple-cloud-api/"  rel="bookmark" class="crp_title">Zend Simple Cloud API = Freedom!</a></li><li><a href="http://blog.fosketts.net/2010/01/12/gdrive-finally-launched/"  rel="bookmark" class="crp_title">Is GDrive Finally Being Launched?</a></li><li><a href="http://blog.fosketts.net/2009/05/19/lessons-cloud-computing-conference-expo-prague-2009/"  rel="bookmark" class="crp_title">Lessons From the Cloud Computing Conference and Expo Prague 2009</a></li><li><a href="http://blog.fosketts.net/2009/09/16/cloud-services-standards/"  rel="bookmark" class="crp_title">We Don&#8217;t Need Cloud Standards (Yet)</a></li></ul></div><script src="http://feeds.feedburner.com/~s/sfoskett?i=http://blog.fosketts.net/2009/03/19/sun-cloud/" type="text/javascript" charset="utf-8"></script><hr />
<p><small>© sfoskett for <a href="http://blog.fosketts.net">Stephen Foskett, Pack Rat</a>, 2009. |
<a href="http://blog.fosketts.net/2009/03/19/sun-cloud/">Sun Launches Their Own Cloud, But For Which Market?</a>
<br/>
This post was categorized as <a href="http://blog.fosketts.net/category/everything/enterprisestorage/" title="View all posts in Enterprise storage" rel="category tag">Enterprise storage</a>, <a href="http://blog.fosketts.net/category/gestaltit/" title="View all posts in Gestalt IT" rel="category tag">Gestalt IT</a>, <a href="http://blog.fosketts.net/category/everything/virtualstorage/" title="View all posts in Virtual Storage" rel="category tag">Virtual Storage</a>. Each of my categories has its own feed if you'd like to filter out or focus on posts like this.<br/>
</small></p>]]></content:encoded>
			<wfw:commentRss>http://blog.fosketts.net/2009/03/19/sun-cloud/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Symantec&#8217;s Thin API: The Plot Thickens</title>
		<link>http://blog.fosketts.net/2008/10/24/symantec-thin-api/</link>
		<comments>http://blog.fosketts.net/2008/10/24/symantec-thin-api/#comments</comments>
		<pubDate>Fri, 24 Oct 2008 14:16:49 +0000</pubDate>
		<dc:creator>Stephen</dc:creator>
				<category><![CDATA[Enterprise storage]]></category>
		<category><![CDATA[Virtual Storage]]></category>
		<category><![CDATA[3PAR]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[data growth]]></category>
		<category><![CDATA[data management]]></category>
		<category><![CDATA[file system]]></category>
		<category><![CDATA[HDS]]></category>
		<category><![CDATA[HP]]></category>
		<category><![CDATA[I/O deduplication]]></category>
		<category><![CDATA[SmartMove]]></category>
		<category><![CDATA[Storage Foundation]]></category>
		<category><![CDATA[storage management]]></category>
		<category><![CDATA[Symantec]]></category>
		<category><![CDATA[thin provisioning]]></category>
		<category><![CDATA[Thin Reclamation]]></category>
		<category><![CDATA[utilization]]></category>
		<category><![CDATA[Veritas Storage Foundation]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[volume manager]]></category>

		<guid isPermaLink="false">http://blog.fosketts.net/?p=933</guid>
		<description><![CDATA[Last week, I lauded Symantec for introducing an API in Storage Foundation which will interact with the thin storage capabilities of supported arrays. Since then, I&#8217;ve learned more about this capability, and I am writing this update to share that knowledge. As I noted last week, the press release was a bit hard to follow and [...]]]></description>
			<content:encoded><![CDATA[<p>Last week, <a href="http://blog.fosketts.net/2008/10/16/symantecs-thin-api-step-direction/"  target="_self">I lauded Symantec for introducing an API in Storage Foundation</a> which will interact with the thin storage capabilities of supported arrays. Since then, I&#8217;ve learned more about this capability, and I am writing this update to share that knowledge. As I noted last week, the press release was a bit hard to follow and comprehend (and <a href="http://www.theregister.co.uk/2008/10/20/3par_symantec_help/"  target="_blank">not just for me</a>), and one of my initial assumptions about the API turned out to be wrong. I also received a few comments from interested folks pointing out some more pros and cons of this technology.</p>
<p>First, let&#8217;s clarify just which products and capabilities Symantec is offering here:</p>
<ul>
<li>Veritas Storage Foundation version 5.0MP3 for <strong>Unix/Linux</strong> includes <strong>SmartMove</strong> and the <strong>Thin Reclamation API</strong></li>
<li>Veritas Storage Foundation for <strong>Windows</strong> 5.0 only includes <strong>SmartMove</strong> at this point, but it will be updated to include Thin Reclamation at some point in the coming year</li>
</ul>
<p>Although there is no real information on Symantec&#8217;s web site about all this yet, Symantec&#8217;s director of Storage Management and High Availability, Sean Derrington, assures me that their software is available now. Although no compatible arrays are in end-user hands, 3PAR will update their T-Class firmware to support the API shortly, and HDS and HP are on the way as well.<span id="more-933"></span></p>
<h3 class="post-subhead">Thin Aware Software</h3>
<p>Next, contrary to what I inferred from the announcement, <strong>there is no native thin provisioning capability</strong> in the file system or volume manager. So the first item in my list is right out. However, the volume manager is now &#8220;thin aware&#8221;, which means that it will communicate up to the file system and down to the array to coordinate more effective use of space.</p>
<p>When the volume manager is used with <strong>Veritas File System (VxFS)</strong> on UNIX or <strong>NTFS</strong> on Windows Server 2003 or 2008, it will automatically keep track of deleted files and will pass this information down the stack to the array. This is a major piece of functionality to add, especially to NTFS, &#8220;hole punching&#8221; (<a href="http://blogs.netapp.com/shadeofblue/2008/10/hole-punching-f.html"  target="_blank">like NetApp</a>) to maximize thin provisioning.</p>
<p>The Storage Foundation tools have also been updated to properly report on thin provisioned volumes. For example, the following screenshot shows three disk devices where encl1 supports thin reclamation and encl0 does not.</p>
<pre><span style="font-family: 'Lucida Grande'; line-height: 19px; white-space: normal;">#</span> vxdisk list
DEVICE        TYPE   DISK          GROUP         STATUS
encl0_0       auto   encl0_0       mydg online   thin
encl1_0       auto   encl1_0       mydg online   thinrclm
encl1_1       auto   ecnl1_1       mydg online   thinrclm</pre>
<h3 class="post-subhead">Thin Reclamation API</h3>
<p>The Veritas Thin Reclamation API allows the Storage Foundation volume manager and file systems to communicate with <strong>thin-capable arrays</strong> when data is deleted on thin-ified LUNs, maintaining their thin-ness as you go. When a file is deleted, the file system will communicate to the volume manager that that space is no longer needed. When the server administrator runs the &#8220;vxdisk reclaim&#8221; or &#8220;fsadm –R&#8221; commands, the volume manager will communicate this information to the array (using SCSI commands) that any vacated disk blocks can now be reclaimed. Symantec expects folks to set up a cron job to reclaim space, or perhaps just run it when they see the need.</p>
<p>This is brilliant stuff, and ought to make thin provisioning shine in terms of array utilization. In an environment of thin-enabled Veritas volumes and supported storage arrays, the amount of space used on an array will be awfully close to the amount of space used in the file systems. This is a massive win <strong>- a capacity gain of on the order of 50%-70%</strong> in an average environment!</p>
<blockquote><p>For more on this topic, see my recent post on <a href="http://blog.fosketts.net/2008/10/01/storage-utilization-waterfall-raw-usable/"  target="_self">storage utilization</a></p>
</blockquote>
<p>If the storage array fully supports Symantec&#8217;s API, the tools will also report physically allocated storage behind thin and thin_reclaim devices.</p>
<pre># vxdisk –o thin list
DANAME        DISK SIZE(Mb)        PHYS_ALLOC(Mb)       DISK GROUP TYPE
encl0_0       2000                 50 mydg              thin
encl1_0       200                  50 mydg              thinrclm
encl1_1       500                  500 mydg             thinrclm</pre>
<h3 class="post-subhead">SmartMove</h3>
<p>SmartMove is Symantec&#8217;s new capability for online migration from &#8220;thick&#8221; to thin LUNs. It is included in Storage Foundation for Unix/Linux and Windows and works with <strong>any thin storage array</strong>, not just those that support the API. This is basically a tweak to the old storage migration support we have all known and relied on in Veritas Storage Foundation for over a decade, except that it&#8217;s <strong>smart enough to not request blocks that it won&#8217;t use</strong>. One could theoretically &#8220;SmartMove&#8221; a volume regularly to reclaim space without using the API at all, but those commands are sure a lot simpler.</p>
<p>Note that <strong>SmartMove speeds up migration too, even for thick volumes</strong>! When you use a SmartMove-enabled version of Storage Foundation to move a volume, it will only send the blocks that have changed over the wire. This reminds me a little of VMware&#8217;s new I/O deduplication capability talked about at VMworld, but it&#8217;s focused only on migrations, not other I/O situations.</p>
<blockquote><p>For more on this topic, see my recent post on <a href="http://blog.fosketts.net/2008/09/19/what-vmware-vdc-os-vstorage/"  target="_self">VMware vStorage</a></p>
</blockquote>
<h3 class="post-subhead">The Plot Thickens</h3>
<p>So I was wrong about one item, but the other two remain true. Is Symantec&#8217;s new capability a winner? I give it a silver medal &#8211; it&#8217;s good stuff, but some issues remain.</p>
<ol>
<li>My primary concern remains &#8211; <strong>thin provisioning does nothing to address the lack of storage management</strong> that is so prevalent. It enables greater utilization of capacity, but does nothing to control how that capacity is used. This isn&#8217;t a beef with Symantec&#8217;s Veritas Storage Foundation or 3PAR or HDS or EMC or anyone in the thin industry, really. Instead, it is a wake-up call to all of the storage organizations out there who have <a href="http://blog.fosketts.net/2007/07/24/sailing-the-titanic-why-we-need-ilm-and-then-some/" >filesystems full of uncontrolled junk</a>!</li>
<li>My second concern is the <strong>lack of capacity management</strong>. Thin provisioning is a lie, promising more capacity than is available. This might be acceptable in certain controlled circumstances like operating system or application volumes, but telling end users that they have plenty of available space is <a href="http://blog.fosketts.net/2007/08/16/a-seat-at-the-table/" >a recipe for disaster</a>. Storage use is like air &#8211; it expands to fill all available volume. Without capacity management, your thin volumes will be &#8220;overdrawn&#8221; and your storage &#8220;account&#8221; will be bankrupt.</li>
<li>Then there is the issue of proprietary APIs versus standards. Let me say right away that <strong>I always support standards over proprietary technology</strong>. But, at the same time, given the choice between nothing and something, I&#8217;ll take the proprietary API. Thin provisioning is a good idea with poor implementation. This API helps to make it useful in the real world, and having a market leader like Symantec behind it makes it all the more relevant. I certainly hope the entire storage industry will come up with a standard thin API, and when that happens I hope Symantec will support it. Until then, at least we have something.</li>
</ol>
<p>I will be writing more about thin provisioning in the coming weeks. Until then, I continue to applaud Symantec, 3PAR, HDS, and HP for their work in making this technology somewhat more practical. Now how about VMware, Microsoft, Sun, and the Linux guys <a rel="nofollow" href="http://storagebod.typepad.com/storagebods_blog/2008/10/thin-provisioning---saviour-of-the-universe.html"  target="_blank">get some thin technology going</a>, too?</p>
<blockquote><p>See my posts on <a href="http://gestaltit.com/author/stephen/"  target="_blank">Gestalt IT</a> for similar <a href="http://gestaltit.com"  target="_blank">enterprise IT infrastructure commentary</a></p>
</blockquote>
<div id="crp_related"><h3>You might also want to read these other posts...</h3><ul><li><a href="http://blog.fosketts.net/2008/10/16/symantecs-thin-api-step-direction/"  rel="bookmark" class="crp_title">Symantec&#8217;s Thin API Is A Step In The Right Direction</a></li><li><a href="http://blog.fosketts.net/2011/01/06/bridge-veritas-thin-provisioning-api/"  rel="bookmark" class="crp_title">The Bridge: Veritas Thin (Provisioning) API</a></li><li><a href="http://blog.fosketts.net/2007/07/30/how-thin-are-you/"  rel="bookmark" class="crp_title">How Thin Are You?</a></li><li><a href="http://blog.fosketts.net/2007/07/23/brocade-adds-thin-provisioning/"  rel="bookmark" class="crp_title">Brocade Adds Thin Provisioning</a></li><li><a href="http://blog.fosketts.net/2008/09/02/3pars-thin-un-provisioning/"  rel="bookmark" class="crp_title">3PAR&#8217;s Thin Un-Provisioning is Slightly Less Bad</a></li></ul></div><script src="http://feeds.feedburner.com/~s/sfoskett?i=http://blog.fosketts.net/2008/10/24/symantec-thin-api/" type="text/javascript" charset="utf-8"></script><hr />
<p><small>© sfoskett for <a href="http://blog.fosketts.net">Stephen Foskett, Pack Rat</a>, 2008. |
<a href="http://blog.fosketts.net/2008/10/24/symantec-thin-api/">Symantec&#8217;s Thin API: The Plot Thickens</a>
<br/>
This post was categorized as <a href="http://blog.fosketts.net/category/everything/enterprisestorage/" title="View all posts in Enterprise storage" rel="category tag">Enterprise storage</a>, <a href="http://blog.fosketts.net/category/everything/virtualstorage/" title="View all posts in Virtual Storage" rel="category tag">Virtual Storage</a>. Each of my categories has its own feed if you'd like to filter out or focus on posts like this.<br/>
</small></p>]]></content:encoded>
			<wfw:commentRss>http://blog.fosketts.net/2008/10/24/symantec-thin-api/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

