<?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>IT 2.0</title>
	<atom:link href="http://it20.info/feed/" rel="self" type="application/rss+xml" />
	<link>http://it20.info</link>
	<description>Next Generation IT Infrastructures</description>
	<lastBuildDate>Fri, 12 Apr 2013 14:48:43 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Liquid Data Center</title>
		<link>http://it20.info/2013/03/liquid-data-center/</link>
		<comments>http://it20.info/2013/03/liquid-data-center/#comments</comments>
		<pubDate>Mon, 18 Mar 2013 14:17:20 +0000</pubDate>
		<dc:creator>Massimo</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://it20.info/?p=641</guid>
		<description><![CDATA[<p align="justify">Having worked for about 3 years with vCloud Director I have to admit that the networking subsystem is the one that takes more time to digest. Part of this is because it is fairly complex rich. Part of it is because VMware has not done a great job at trying to expose that richness <span style="color:#777"> . . . &#8594; Read More: <a href="http://it20.info/2013/03/liquid-data-center/">Liquid Data Center</a></span>]]></description>
				<content:encoded><![CDATA[<p align="justify">Having worked for about 3 years with vCloud Director I have to admit that the networking subsystem is the one that takes more time to digest. Part of this is because it is fairly <span style="text-decoration: line-through;">complex</span> rich. Part of it is because VMware has not done a great job at trying to expose that <i>richness</i> in a simple way to the cloud consumer.</p>
<p align="justify">I kept saying for years that vCD should have had more visual support and network layout diagrams in the UI to make it easier to understand and digest that <i>richness</i>. When I sit down with partners and customers to discuss the technology I don&#8217;t show the vCD UI.</p>
<p align="justify">I rather prefer to use a whiteboard and draw diagrams that often look like, logically, the old good vSphere maps. Do you remember them? How nice.</p>
<p><img alt="" src="http://www.it20.info/misc/pictures/liquiddatacenter1.jpg" width="544" height="416" border="0" /></p>
<p align="justify">As part of new responsabilities I am taking inside VMware, I am trying to get a bit deeper on the API side of this cloud thing.</p>
<p align="justify">I thought it could have been a good exercise to try to implement a sort of &#8220;vCD maps&#8221; tool. For the records I end up calling it LiquidDC, more on this later.</p>
<p align="justify">A few weeks ago I sat down with my partner in crime <a href="http://it.linkedin.com/in/andreasiviero">Andrea Siviero</a> to build something for real. This was mostly a learning exercise for me on how to code a web application leveraging the vCD APIs. The majority of the coding was done by Andrea. Credit goes where credit is due.</p>
<p align="justify"><b>The technical background </b></p>
<p align="justify">A few weeks ago VMware released a <a href="http://labs.vmware.com/flings">fling</a> called <a href="http://labs.vmware.com/flings/silverlining">Silverlining</a>. That fling contains a few things. In particular it contains a (limited) JavaScript SDK for vCloud Director and a brand new consumer UI for vCloud Director.</p>
<p align="justify">So we leveraged the SDK along with some other open source libraries such as JQuerymobile, JQuery and VivaGraph. The figure below illustrates the packaging of Silverlining and how we leveraged it to build the LiquidDC utility package.</p>
<p><img alt="" src="http://www.it20.info/misc/pictures/liquiddatacenter2.jpg" width="557" height="423" border="0" /></p>
<p align="justify">We essentially took the overall structure of Silverlining (in particular the JavaScript SDK), complemented it with additional libraries, got rid entirely of the Silverlining UI portal and built from scratch our own new UI.</p>
<p align="justify">The end result is a brand new HTML5/JavaScript application.</p>
<p align="justify"><b>What LiquidDC does</b></p>
<p align="justify">LiquidDC allows you to connect to a vCloud Director 5.1 tenant and, as an output, it will generate a graphical layout of the network subsystem (and more). The utility allows the user to enable and disable the visualization of certain relationships. We have implemented the following relationships:</p>
<ul>
<li>
<p align="justify">VMs to vApps</p>
</li>
<li>
<p align="justify">VMs to Organization Networks</p>
</li>
<li>
<p align="justify">Networks to Edge Gateways</p>
</li>
</ul>
<p align="justify">LiquidDC will also visualize the relationship of Organization Networks and Edge Gateways with External Networks.</p>
<p align="justify">Let&#8217;s take, for example, my <a href="http://it20.info/2011/01/my-cloud-consumer-experience-episode-1-the-on-boarding/">IT20 vCD organization hosted at Stratogen</a>. If I look at it from the vCD UI, I can depict my organization has one Edge Gateway called <i> Routed Network</i>. Note the name may be misleading as it&#8217;s not really a &#8220;network&#8221; strictly speaking, but rather a gateway where routed networks connect to.</p>
<p><img alt="" src="http://www.it20.info/misc/pictures/liquiddatacenter3.jpg" width="627" height="182" border="0" /></p>
<p align="justify">Note this Edge has 6 L2 networks connected to it. You can check how many of them are outbound connections to External Networks by looking at the Properties of the Edge.</p>
<p align="justify">You can check how many of them are networks available inside the virtual data center by clicking on the <i>Org VDC Networks</i> tab:</p>
<p><img alt="" src="http://www.it20.info/misc/pictures/liquiddatacenter4.jpg" width="743" height="291" border="0" /></p>
<p align="justify">To add confusion, one of the Organization Networks is called <i>Routed Network</i>, just like the Edge Gateway. In a particular scenario like this it is very difficult to not get confused looking at the UI.</p>
<p align="justify">I can conclude that my Edge Gateway (again, called <i>Routed Network</i>) has 5 Routed Organization Networks connected to it. The 6th Edge vNIC (shown above) connects to an External Network (in this case it represents the Internet) which is the interface that connects the Edge Gateway to the outside world.</p>
<p align="justify">We are not done yet. There is also an additional network inside my vDC that isn&#8217;t connected to anything. It&#8217;s the Isolated Network. VMs connected to this network can only talk to each others, but not go anywhere else.</p>
<p align="justify">Last but not least, as if the confusion was not enough, there is also a Direct Connect Network available in my vDC that represents direct access to the External Network (Internet). Essentially Stratogen entitled the IT20 organization to connect VMs directly on the Internet segment without having to go through the Edge Gateway. Note that if two organization do this they will end up with VMs on the same L2 segment.</p>
<p align="justify">I have to say this is very far from being intuitive for someone that isn&#8217;t experienced with vCD . And it isn&#8217;t very intuitive for me either, to be very honest. Not to mention the troubles when you need to describe this (for training, demo or PoC purposes) to someone that isn&#8217;t very much into the parlance vCD uses. This is when a whiteboard becomes very handy.</p>
<p align="justify">Enter LiquidDC!</p>
<p align="justify">Below is a screenshot of how the same <span style="text-decoration: line-through;">complex</span> rich networking plumbing described above renders in LiquidDC. Note that the VMs to vApps relationship is set to off by default to simplify the first view.</p>
<p><img alt="" src="http://www.it20.info/misc/pictures/liquiddatacenter5.jpg" width="741" height="461" border="0" /></p>
<p align="justify">It is now a lot easier to describe to a vCloud Director novice user what he/she can do with the platform., isn&#8217;t it?</p>
<p align="justify">The tool is also capable of showing, in a similar graphical layout, the relationships between catalogs and vApp templates in those catalogs. In the picture below you can see an organization private catalog with one template and a cloud public catalog with a fairly big set of templates.</p>
<p><img alt="" src="http://www.it20.info/misc/pictures/liquiddatacenter6.jpg" width="741" height="461" border="0" /></p>
<p align="justify">Note that when you click on an object a list of details appears on the right hand side. This is, at the moment, a raw list of attributes (associated to the object) that we get from the REST APIs. We haven&#8217;t spent too much time to properly parse, select and format those details. They are pretty raw. The vApp template doesn&#8217;t have a lot of these details but if you click on other objects the details are a lot richer than this. See the demo below.</p>
<p align="justify">Another cool thing is the <i>Search Object</i> field where a user can search dynamically for a string match against the details mentioned above. In the picture above, for example, I have searched in the catalog layout view for &#8220;wordpress&#8221; and LiquidDC is dynamically highlighting (with a red circle) the vApp template that contains that particular string.</p>
<p align="justify">The details pane and the search capability are available in the network layout view as well. Imagine, for example, being able to search for all networks that have a default gateway that matches &#8220;192.168&#8243;. Very powerful.</p>
<p align="justify"><b>Hybrid comes true</b></p>
<p align="justify">We often hear hybrid cloud being defined as the possibility to move workloads seamlessly from private to public and viceversa.</p>
<p align="justify">That&#8217;s a key characteristic of a hybrid cloud implementation but it&#8217;s not the only angle to look at the matter.</p>
<p align="justify">To me, hybrid cloud also means the ability to use the same tools and know-how to manage platforms and infrastructures regardless of where they are hosted (on-premises or off-premises).</p>
<p align="justify">And by that I don&#8217;t mean having to implement a <a href="http://it20.info/2012/02/the-abc-of-lock-in/">monster overlay software that may cost 2M$ and 2 years to get deployed</a>. By that I rather mean being able to manage raw dispersed infrastructures, public or private, using and reusing the very same single <span style="text-decoration: underline;">native</span> API call, the very same <span style="text-decoration: underline;"> native</span> script, the very same <span style="text-decoration: underline;">native</span> command line.</p>
<p align="justify">That&#8217;s the interesting part of LiquidDC. You can connect to the real production <a href="http://www.stratogen.com/products/vmware-hosting.html">Stratogen cloud</a> as demonstrate above, or you can also choose any other of the 200+ <a href="http://vcloud.vmware.com/vcloud-ecosystem">vCloud Powered or vCloud Datacenter</a> partners based on characteristics like for example:</p>
<ul>
<li>
<p align="justify">Geographic location</p>
</li>
<li>
<p align="justify">Service level</p>
</li>
<li>
<p align="justify">Network configuration requirements</p>
</li>
<li>
<p align="justify">Catalog content</p>
</li>
<li>
<p align="justify">Particular add-on services</p>
</li>
<li>
<p align="justify">Pricing</p>
</li>
</ul>
<p align="justify">In addition to that you can obviously connect LiquidDC to your local private cloud. I have for example used the tool to visualize the network layout of my IT20 organization hosted at my local private cloud (a lab in the office). As you can see in the picture below the end-point is 172.16.100.205.</p>
<p><img alt="" src="http://www.it20.info/misc/pictures/liquiddatacenter7.jpg" width="741" height="461" border="0" /></p>
<p align="justify">Not enough?</p>
<p align="justify">I have also used LiquidDC to connect to the <a href="https://vcloudservice.vmware.com/starteval">vCloud Evaluation Service</a>. Note I don&#8217;t have control over the name of my organization and one (2215) was automatically generated for me when I enrolled <a href="http://www.vmware.com/company/news/releases/vmw-vcloud-evaluation-081512.html"> last year</a> .</p>
<p><img alt="" src="http://www.it20.info/misc/pictures/liquiddatacenter8.jpg" width="741" height="461" border="0" /></p>
<p align="justify">In order to find the vCloud API end-point of the evaluation service, you have to login into the custom portal and, from there, open the standard vCD UI. There you can see what the URL is. I also had to create (self-service) a new organization administrator account to be able to connect with the tool (the default <span style="text-decoration: underline;">admin</span> user won&#8217;t let me connect directly, based on the quick test I did).</p>
<p align="justify">Enough? No, not enough.</p>
<p align="justify">Even more interesting, I was able to connect LiquidDC to one of the zones of the newly announced <a href="http://www.vmware.com/company/news/releases/vmw-corp-strategy-031313.html"> VMware vCloud Hybrid Service</a> (currently in limited beta). This is not the same thing as the vCloud Evaluation Service mentioned above. Note I had to obfuscate the end-point of this service as it&#8217;s not publicly available at the moment.</p>
<p><img alt="" src="http://www.it20.info/misc/pictures/liquiddatacenter9.jpg" width="741" height="461" border="0" /></p>
<p align="justify">I think this is pretty cool and, if nothing it&#8217;s been an interesting exercise.</p>
<p align="justify">The funny thing is that it wouldn&#8217;t take too much (all relative) to improve LiquidDC to show more than one single organization in one single cloud in the same UI. Perhaps with VPN relationships as well?</p>
<p align="justify">Something like this.</p>
<p><img alt="" src="http://www.it20.info/misc/pictures/liquiddatacenter10.jpg" width="692" height="451" border="0" /></p>
<p>Isn&#8217;t this the single &#8220;pain&#8221; of glass everyone would love to have? And it&#8217;s only roughly roughly 400 lines of JavaScript code (without comments)! It&#8217;s not a <a href="http://it20.info/2012/03/the-frankencloud/">Frankencloud</a> by any means!</p>
<p align="justify"><b>LiquidDC use cases</b></p>
<p align="justify">So what would you use LiquidDC for? As I said and Andrea have developed the tool as a coding exercise. However I see a few practical use cases for it. Some are listed below.</p>
<p align="justify">- LiquidDC may be a great training and demo tool to illustrate the <span style="text-decoration: line-through;">complexity</span> richness of the vCloud Networking subsystem. Instead of getting on a whiteboard and draw all possible networking configurations nuances in front of someone that doesn&#8217;t know vCD one could create the plumbing of an environment including External Networks, Edge Gateways, Organization Networks (Direct Connected, Routed and Isolated) and eventually connect dumb VMs to those networks. LiquidDC can then visualize real-time the layout of that network topology which is far easier to &#8220;get&#8221; compared to the out of the box vCD UI experience.</p>
<p align="justify">- LiquidDC may facilitate basic operations for small customers with small vDCs hosted in public clouds or private clouds. Navigating through the vCD UI may require dozens of clicks to get to the object you need to manipulate or get a particular information from. LiquidDC has what I refer to as a great &#8220;time-to-object&#8221; (at least compared to the native vCD UI). The search capability is very powerful and can help a lot in this respect.</p>
<p align="justify">- LiquidDC could serve as a basis for private cloud administrators and public SP that would like to provide this add-on service to their tenants. If I stretch my imagination a bit I can see SPs taking this code, <span style="text-decoration: underline;">making it better and more stable</span> and hosting it in their facilities hard coding their end-points. This would allow them to give their tenants an alternative view to browse their organizations and this could be a differentiated service for them.</p>
<p align="justify"><b>LiquidDC deployment scenarios </b></p>
<p align="justify">The fun didn&#8217;t end with writing the code.</p>
<p align="justify">As I said this is a traditional HTML/JavaScript application. For good or bad.</p>
<p align="justify">In order to make this whole exercise even more interesting, we decided to distribute it in a couple of ways. A <a href="http://liquiddc.cloudfoundry.com/">hosted version</a> and an <a href="https://github.com/mreferre/LiquidDC1.0">on-premises version</a>.</p>
<p><img alt="" src="http://www.it20.info/misc/pictures/liquiddatacenter11.jpg" width="559" height="422" border="0" /></p>
<p align="justify">Did you know you can upload an HTML/JavaScript application to <a href="http://cloudfoundry.com/">CloudFoundry</a> and host it there? I didn&#8217;t think this was possible but <a href="https://twitter.com/andypiper">Andy Piper</a>, one of my fellow colleagues at VMware, <a href="http://andypiper.co.uk/2012/08/21/a-simple-website-on-cloud-foundry/"> documented</a> a way to do just that.</p>
<p align="justify">So LiquidDC is, right now, up and running on CloudFoundry at <a href="http://liquiddc.cloudfoundry.com/"> liquiddc.cloudfoundry.com</a>! Make sure you read below the instructions on how to use it (RTFM!).</p>
<p align="justify">I and Andrea are also going to make it available <a href="https://github.com/mreferre/LiquidDC1.0">on GitHub hopefully soon</a>. I just need to clean up the code a bit and remove all the embarrassing comments in it. In reality I&#8217;d like to document as much as possible the source code so that you know what we were doing and hopefully make it easier for you to modify it if you want to. I&#8217;ll update this post when the code is available for download.</p>
<p align="justify">Finally, we did not spend time to package this tool so that it could be installed on the vCD cells. Silverlining does come with such a setup utility though. You may try to install Silverlining on vCD and manually change the files (essentially replacing the Silverlining portal with the LiquidDC code). This is really just a after thought I had while writing this blog post. It would need to be vetted.</p>
<p align="justify"><b>Instructions and Limitations</b></p>
<p align="justify">Being this a JavaScript application all the cross-domain calls limitations apply. Since this is somehow a derivate of Silverlining ,which has the same limitations, you can use the tricks that William Lam already <a href="http://www.virtuallyghetto.com/2013/02/how-to-run-silverlining-fling-without.html"> documented</a>.</p>
<p align="justify">At a minimum you&#8217;ll need to open your browser with security disabled.</p>
<p align="justify">Optionally, if the cloud you are connecting to is using self-signed certificates, you need to accept self-signed certificates in a browser window (very likely situations for demo and PoC environments).</p>
<p align="justify">A few known gotchas to take into account.</p>
<ul>
<li>
<p align="justify">We have noticed weird behaviors when you have vApps and VMs that have failed to deploy in the organization you are trying to connect to</p>
</li>
<li>
<p align="justify">It&#8217;s always a good practice to reload the application in the browser whenever you try to re-connect (either to the same organization or to a different organization)</p>
</li>
<li>
<p align="justify">VMs that are not connected to any Organization Network will render in the graphic as if connected to a dumb non existent network called &#8220;none&#8221;</p>
</li>
<li>
<p align="justify">VMs that are connected to a private vApp Network will render in the graphic as if connected to a dumb non existent network called &#8220;none&#8221;</p>
</li>
<li>
<p align="justify">VMs that have more than one vNIC will render with only one vNIC</p>
</li>
<li>
<p align="justify">I have primarily used and tested LiquidDC with Chrome for Mac with the proper flag to disable web security. I haven&#8217;t tested other browsers / client platforms.</p>
</li>
</ul>
<p align="justify">These hold true for LiquidDC version 0.9.8.5 (the latest available at the time of this writing).</p>
<p align="justify">The controls and exception management in the application is&#8230; non existent. All in all this tool has gone through very limited testing. And it&#8217;s been tested against a very limited number of vCD use cases so we are certainly not considering a lot of exceptions.</p>
<p align="justify">I have created a short 4 minutes video that will allow you to see how it works end-to-end, just in case you have problems connecting to your cloud but yet you are curious to see it in action.</p>
<p align="justify">If nothing, at least you&#8217;ll appreciate why we called it &#8220;<i>liquid</i>&#8220;!</p>
<p><span class='embed-youtube' style='text-align:center; display: block;'><iframe class='youtube-player' type='text/html' width='640' height='390' src='http://www.youtube.com/embed/H9ImOucZIF4?version=3&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;showinfo=1&#038;iv_load_policy=1&#038;wmode=transparent' frameborder='0'></iframe></span></p>
<p align="justify">Massimo.</p>
<p align="justify"><span style="color: #ff0000;">Update (April 12th): the open source code has been posted on GitHub and can be downloaded</span> <a href="https://github.com/mreferre/LiquidDC1.0">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://it20.info/2013/03/liquid-data-center/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>A Tail of Wrong Assumptions That Lead to Wrong Conclusions</title>
		<link>http://it20.info/2013/03/a-tail-of-wrong-assumptions-that-lead-to-wrong-conclusions/</link>
		<comments>http://it20.info/2013/03/a-tail-of-wrong-assumptions-that-lead-to-wrong-conclusions/#comments</comments>
		<pubDate>Wed, 06 Mar 2013 17:17:51 +0000</pubDate>
		<dc:creator>Massimo</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://it20.info/?p=635</guid>
		<description><![CDATA[<p align="justify">Yesterday morning I woke up and found myself being mentioned in one of Randy Bias&#8217; blog posts on the Amazon Vs VMware battle.</p> <p align="justify">As I was reading thorough the article I found hard to disagree with what Randy was saying. I am not referring specifically to his conclusions (more on this later) but <span style="color:#777"> . . . &#8594; Read More: <a href="http://it20.info/2013/03/a-tail-of-wrong-assumptions-that-lead-to-wrong-conclusions/">A Tail of Wrong Assumptions That Lead to Wrong Conclusions</a></span>]]></description>
				<content:encoded><![CDATA[<p align="justify">Yesterday morning I woke up and found myself being mentioned in one of <a href="http://www.cloudscaling.com/blog/cloud-computing/vmware-vs-amazon-round-two-fight-vmw-conceding-impotence/">Randy Bias&#8217; blog posts</a> on the Amazon Vs VMware battle.</p>
<p align="justify">As I was reading thorough the article I found hard to disagree with what Randy was saying. I am not referring specifically to his conclusions (more on this later) but rather to the general sense of the blog post in terms of efficiency of scale and stuff like that.</p>
<p align="justify">But as I went through it I found the caveat.</p>
<p align="justify">&#8220;<i>..they [VMware] can see that enterprise virtualization clouds are like the ASP model and have a very short shelf life. Enterprises need a different kind of cloud. An elastic cloud. Unfortunately, VMware’s key technologies don’t allow you to build an elastic cloud based on VMware..</i>&#8220;</p>
<p align="justify">No, Randy, I am sorry. I think there is a typo. You should have said &#8220;<i><span style="text-decoration: underline;">a very small subset of</span> Enterprises need a different kind of cloud. An elastic cloud</i>&#8220;.</p>
<p align="justify">As per the &#8220;<i>virtualization clouds&#8230; have a very short shelf life</i>&#8220;&#8230; let me remind you that 1B+$ isn&#8217;t just how much Amazon makes out of AWS. 1B+$ (roughly) is how much IBM makes out of the AS/400 (or whatever it is called 40 years later). Yes, a platform that was &#8220;dead&#8221; 10 years ago yet makes more money than AWS.</p>
<p align="justify">IBM has just <a href="http://allthingsd.com/20130304/ibm-makes-a-big-bet-on-openstack-in-the-cloud/">announced a (yet another) new cloud platform based on OpenStack</a> but keeps its balance in order by selling mainframes (and related services and software). As we already discussed many times on twitter, we agree on pretty much everything&#8230; we just either have a different time scale or live on different planets.</p>
<p align="justify">Sorry to rain on the party Randy, but OpenStack doesn&#8217;t pay the bills as of yet. It may pay your bills and Mirantis&#8217; bills though, because there is a place for everyone on this planet and everyone can create his own niche. This niche will grow for sure, no doubt, but no one single technology will rule them all.</p>
<p align="justify">You live by &#8220;what&#8217;s cool&#8221; today. That is nice and I think you have a great and fun job. The real life is different though. 95% of these Enterprise customers you mention can&#8217;t afford that.</p>
<p align="justify">I don&#8217;t want to repeat myself but I have already discussed this in the <span style="color: #ff0000;"> <a href="http://it20.info/2012/09/cloud-and-the-three-it-geographies-silicon-valley-us-and-rest-of-the-world/"> Cloud and the three IT geographies</a></span> theory last year. I feel like we keep saying the same things over and over and over. I am wondering if these posts (mine and yours) are useful at all at this point.</p>
<p align="justify">This isn&#8217;t to say OpenStack isn&#8217;t a fit. I believe it will be successful and will find its place in the IT landscape. However picturing the world like OpenStack has won and VMware has lost sounds more like a marketing statement than a reality check.</p>
<p align="justify">Boris Renski <a href="http://www.mirantis.com/why-mirantis/openstack-technology/comparing-vmware-and-openstack/"> puts it under the proper perspective</a>:</p>
<p align="justify"><i>The OpenStack view of the world involves starting from scratch. It is the philosophy where one says “let us forget about all those existing enterprise applications and automate the infrastructure in a way that carries no legacy dependencies”</i></p>
<p align="justify">That is so true. This is a picture I used in my <a href="http://it20.info/2012/02/the-cloud-magic-rectangle-tm/">Cloud Magic Rectangle</a> to describe the transition to cloud:</p>
<p><img style="border: 0px none;" alt="" src="http://www.it20.info/misc/pictures/A-tail-of-wrong-assumptions-that-lead-to-wrong-conclusions1.JPG" width="841" height="283" border="0" /></p>
<p align="justify">
<p align="justify">The (true) cloud is all about applications that are designed to fit an (existing) infrastructure. This is how companies using AWS have built their applications.</p>
<p align="justify">There may be a very tiny number of Enterprise that are adopting (or will adopt shortly) this mantra. The majority of them, which I usually describe as being 95% (gut feeling), can&#8217;t afford to do what Boris is suggesting. All they want to do is automate application deployments on both x86 and Unix and update not less than 37 legacy CMDBs. Yeah &#8230; an elastic cloud, go figure.</p>
<p align="justify">The only problem you had when you talked to the VMware executives is that they didn&#8217;t give you visibility the RFPs these Enterprise customers keep feeding the vendors with (and will keep feeding the vendors with for the foreseeable future).</p>
<p align="justify">Oh, ironically I&#8217;ve just got off an internal thread where people were discussing that vCD brings too much advanced stuff on the table that these (95% of) Enterprise customers have problems digesting.</p>
<p align="justify">So much for &#8220;this is just virtualization 2.0 type of clouds&#8221;.</p>
<p align="justify">Let me open a bit of my kimono here and share with you a slide (included in a large deck) I built last year.</p>
<p align="justify">Disclaimer: this is a personal slide and not a VMware slide.</p>
<p><img style="border: 0px none;" alt="" src="http://www.it20.info/misc/pictures/A-tail-of-wrong-assumptions-that-lead-to-wrong-conclusions2.JPG" width="839" height="701" border="0" /></p>
<p align="justify">
<p align="justify">The &#8220;IT Automation&#8221; cloud is the term I used in the deck to describe what these 95% of Enterprise customers are after. Which is definitely not cloud by any means.</p>
<p align="justify">Try to go there and sell OpenStack to these customers. Try to go there and tell them they need to start from scratch. Yeah good luck. And no, this isn&#8217;t an exception, trust me.</p>
<p align="justify">I am pretty sure you are working with a lot of these Enterprise customers. I think you are making your fair amount of money with them consulting on OpenStack. However I am not discussing the 200K$ they are giving you. I am debating the 1B$ cheque they sign for all the other vendors selling other technologies. Yes 1B$ &gt;&gt; 200K$. It&#8217;s math.</p>
<p align="justify">Don&#8217;t get me wrong. As I said, customers that benefit from OpenStack exist and will grow in number.</p>
<p align="justify">However the solution cannot be, for a vendor, to move the entire estate of a company to capture those workloads by forgetting about all the other existing workloads. I am sensitive to the innovator&#8217;s dilemma but I have always interpreted it as <i> &#8220;how can you capture opportunities that go beyond your comfort zone?&#8221;</i> Vs. <i>&#8220;how quickly can you throw away what benefits your existing customers to jump onto the next cool thing?&#8221;</i>.</p>
<p align="justify">So the question I have had in my head for the last 2 years is.. can VMware adapt what it has today to capture these new and additional opportunities? Or does VMware need to build something new?</p>
<p align="justify">I can&#8217;t possibly think that the answer to this dilemma is:</p>
<ul>
<li>
<p align="justify">Throw everything away but ESXi</p>
</li>
<li>
<p align="justify">Use OpenStack on top</p>
</li>
<li>
<p align="justify">Give 200M$ to Cloudscaling for consulting</p>
</li>
</ul>
<p align="justify">Let&#8217;s be serious.</p>
<p align="justify">I also think that you have been too generous to underline the challenges VMware has when you listed the 4 roadblocks we have to open the gate to support new workloads. I am quoting:</p>
<ol>
<li>
<p align="justify"><i>VMware best practices, hardware compatibility lists, and reference architectures all focus on legacy scale-up, gold-plated approaches that needlessly increase costs.</i></p>
</li>
<li>
<p align="justify"><i>The VMW end-user license agreement (EULA) disallows the use of any other technology for managing their hypervisor (ESX/ESXi), particularly for hosting providers. You must deploy vCenter, vSphere, and vCloud, and the like.</i></p>
</li>
<li>
<p align="justify"><i>VMW’s current business model and revenue stream is dependent on selling the more expensive enterprise licenses that focus on technology irrelevant to an elastic cloud such as DRS, HA, and similar.</i></p>
</li>
<li>
<p align="justify"><i>The vCloud API is too focused on enterprise virtualization use cases (e.g. the whole vApp mess).</i></p>
</li>
</ol>
<p align="justify">I don&#8217;t think #1 is such a big deal. As we move towards a more software defined world the hardware dependencies and characteristics will become less relevant. Take VMware <a href="http://it20.info/2012/09/vmware-distributed-storage-this-is-where-the-cloud-world-collapses/"> Distributed Storage</a> for example. It is by the way ironic you claim that VMware architectures are driven by expensive enterprise hardware while (some of) VMware hardware partners feel and complain they are being commoditized by (some of) the VMware software features.</p>
<p align="justify">#2 and #3 are somewhat interlocked. I believe that if VMware was to find a way to make 6B$ a year by giving away ESXi and use OpenStack I am sure the executive team would be interested in that. Imagine how much we could save on R&amp;D! Suggestions are welcome. There is also this little detail discussed above that without vCenter, vSphere and vCloud VMware won&#8217;t be able to deliver what the customers deploying the VMware stack are getting (and OpenStack couldn&#8217;t deliver with the <a href="http://it20.info/2012/12/vcloud-openstack-pets-and-cattle/">cattle model</a>).</p>
<p align="justify">#4 I don&#8217;t necessarily disagree that vApps may be a pain sometimes (euphemism being abused). However I always try to look at the glass half full. I see vApps as suitable for those Enterprise customers that are looking at a gradual move from Paleolithic IT to a more service oriented experience. Admittedly it&#8217;s not the AWS experience though, for good or bad.</p>
<p align="justify">So if we fix #1 (or the perception thereof), #4 and make vCloud work without DRS and HA (per #3)&#8230; do we have an elastic cloud? Deal! Where do I sign?</p>
<p align="justify">There are many other wrong assumptions in Randy&#8217;s blog post that were naturally leading to the conclusion that VMware is toast: &#8220;As Massimo Re Ferrè of the VMware vCloud team has said before<i>&#8230;it is possible to build a less expensive VMware-based cloud. The cost of the hypervisor licensing itself is not the problem. The problem is that a less expensive VMware cloud has none of the advanced capabilities desired by enterprise customers looking to outsource..</i>&#8220;.</p>
<p align="justify">I don&#8217;t want to start a big argument on this but.. what would these &#8220;advanced capabilities&#8221; VMware-based clouds do not have that OpenStack has? Last time I checked an OpenStack based cloud I could barely start and stop a VM and that was pretty much it. So what would these &#8220;advanced features&#8221; be? An object storage? An EBS like service? A shared and secured multitenant flat layer 2 network?</p>
<p align="justify">I believe VMware will get there eventually but&#8230;. no Randy, today the majority of the Enterprise customers you are referring to don&#8217;t need those things. They like having a SAN, update a CMDB (actually more than one) and are just not ready to adopt (massively) network virtualization.</p>
<p align="justify">While vCloud Director implements a &#8220;leaning backward&#8221; <a href="http://it20.info/2012/12/vcloud-openstack-pets-and-cattle/">pets model</a>&#8230; yet it is years ahead of its time given the cloud maturity level many of these Enterprise customers are at. Let alone the <a href="http://it20.info/2012/12/vcloud-openstack-pets-and-cattle/">cattle model</a> OpenStack implements.</p>
<p align="justify">While Randy pictures the VMware cloud stack as a technology of the past, for many of these Enterprise customers the VMware cloud stack (and the Software Defined Data Center concept in general) is what they see as an end-state.</p>
<p align="justify">So Randy, let&#8217;s put sensationalism aside for a moment (and I know there have been many on all sides lately, sadly) and let&#8217;s work towards educating the industry that there isn&#8217;t going to be a one stack that rules them all.</p>
<p align="justify">And while we have been talking about VMware, OpenStack and AWS in the context of this post as well as yours&#8230; it must be noticed that vendors like Oracle, Microsoft, IBM, CA and BMC aren&#8217;t going to disappear overnight. And, to be honest, based on my very own experience I am seeing them more in the accounts that I have been working with than I see OpenStack. Sure there may be a 4 nodes OpenStack / vCloud cluster under some geek&#8217;s desk but guess who gets the 100M$ cheque at the end of the year? Yeah, that&#8217;s right.</p>
<p align="justify">Massimo.</p>
]]></content:encoded>
			<wfw:commentRss>http://it20.info/2013/03/a-tail-of-wrong-assumptions-that-lead-to-wrong-conclusions/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>The Cost of Building Clouds</title>
		<link>http://it20.info/2013/02/the-cost-of-building-clouds/</link>
		<comments>http://it20.info/2013/02/the-cost-of-building-clouds/#comments</comments>
		<pubDate>Wed, 06 Feb 2013 16:54:51 +0000</pubDate>
		<dc:creator>Massimo</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://it20.info/?p=625</guid>
		<description><![CDATA[<p style="text-align: justify;" align="justify">Last week I posted an article on the VMware vCloud corporate blog (re-posted here). That article talks about the extensibility of the core vCloud platform to use features that are not natively exposed. While the use case is centered around vShield App, the extensibility framework really provides infinite possibilities.</p> <p style="text-align: justify;" <span style="color:#777"> . . . &#8594; Read More: <a href="http://it20.info/2013/02/the-cost-of-building-clouds/">The Cost of Building Clouds</a></span>]]></description>
				<content:encoded><![CDATA[<p style="text-align: justify;" align="justify">Last week I posted an <a href="http://blogs.vmware.com/vcloud/2013/01/vcloud-director-meets-vshield-app.html">article on the VMware vCloud corporate blog</a> (re-posted <a href="http://it20.info/2013/02/vcloud-director-meets-vshield-app-2/">here</a>). That article talks about the extensibility of the core vCloud platform to use features that are not natively exposed. While the use case is centered around vShield App, the extensibility framework really provides infinite possibilities.</p>
<p style="text-align: justify;" align="justify">I am very excited about this because it really demonstrates how the <i>core</i> can be <i>extended</i>. While VMware customers and partners cannot modify the core itself, they can indeed extend it. At what cost though? This is what I&#8217;d like to touch on below.</p>
<p style="text-align: justify;" align="justify"><b>Background</b></p>
<p style="text-align: justify;" align="justify">Before even thinking about building a cloud, you need to answer a very simple question: &#8220;how much do I want to pay for it?&#8221;</p>
<p style="text-align: justify;" align="justify">This, usually, has a couple of dimensions:</p>
<ul style="text-align: justify;">
<li>
<p align="justify">How much does the software (Cloud Management Platform) cost?</p>
</li>
<li>
<p align="justify">How much does the labor cost? And is this cost one-shot or recurring?</p>
</li>
</ul>
<p style="text-align: justify;" align="justify">Let&#8217;s make a step back (another one). There are really three viable philosophies when you want to build a cloud (public, private, whatever):</p>
<p style="text-align: justify;"><img alt="" src="http://www.it20.info/misc/pictures/TheCostOfBuildingClouds1.jpg" width="681" height="274" border="0" /></p>
<p style="text-align: justify;" align="justify">The <span style="color: #ff0000;"><b>red</b></span> part is labor cost.</p>
<p style="text-align: justify;" align="justify">The <span style="color: #0000ff;"><b>blue</b></span> part is software cost (assuming there is a cost)</p>
<p style="text-align: justify;" align="justify">Let&#8217;s be crisp: the first model (build-your-own) is for Amazon, Google, Microsoft, Rackspace. Anyone else?</p>
<p style="text-align: justify;" align="justify">Oh yes, perhaps this model is for (a few) other SPs or Enterprise customers that are trying to re-invent the wheel. They will, inevitably, undertake a gigantic and expensive migration project to move to the second model when they realize the mistake they made.</p>
<p style="text-align: justify;" align="justify">The second model (core / extended) is for big SPs and Enterprise customers that want to start with a solid existing software foundation on top of which building their own customized solution.</p>
<p style="text-align: justify;" align="justify">The third model is for all the other SPs and Enterprise customers that prefer to have an out of the box solution without any sort of customization and extension.</p>
<p style="text-align: justify;" align="justify"><b>What do you mean by <i>out-of-the-box</i> and what do you mean by <i>customized/extended</i>? </b></p>
<p style="text-align: justify;" align="justify">In the context of this blog post, when I say <span style="color: #0000ff;"><i>out-of-the-box</i></span> I mean the experience you&#8217;ll get by taking a piece of (CMP) software and setting it up with a set of Next-Next-Next-Done wizards.</p>
<p style="text-align: justify;" align="justify">Done. Nothing more, nothing less. While there is obviously a labor cost associated to do this, for the sake of this discussion we will round it to 0 and we will assume it&#8217;s just all software cost (assuming there is a cost associated to the CMP software).</p>
<p style="text-align: justify;" align="justify">When I say <span style="color: #0000ff;"><i>customized/extended</i></span> I typically mean any of the following (for example):</p>
<ul style="text-align: justify;">
<li>
<p align="justify">I want to (or must) develop a web UI</p>
</li>
<li>
<p align="justify">I want to (or must) change a default web UI shipping with the core</p>
</li>
<li>
<p align="justify">I want to (or must) develop new APIs extending the core behavior</p>
</li>
<li>
<p align="justify">I want to (or must) change core APIs behavior</p>
</li>
<li>
<p align="justify">I want to (or must) change the core of the product</p>
</li>
<li>
<p align="justify">I want to (or must) develop workflows running on top of an orchestrator</p>
</li>
<li>
<p align="justify">I want to (or must) develop brand new scripts</p>
</li>
<li>
<p align="justify">I want to (or must) edit scripts shipping with the core software</p>
</li>
</ul>
<p style="text-align: justify;" align="justify">This list should ideally include anything you can think of that sits between the out-of-the-box setup (see above) and &#8220;your&#8221; target solution.</p>
<p style="text-align: justify;" align="justify">Depending on what you want to (or must) do to implement &#8220;your&#8221; solution, the ratio between the red and blue part may change vastly (e.g. 80-20 or 20-80).</p>
<p style="text-align: justify;" align="justify"><b>Where does VMware vCloud Director fits into all this? </b></p>
<p style="text-align: justify;" align="justify">VMware vCloud Director can be used to implement both the second and the third models I described above. Three years ago vCD was more of a black-box that wasn&#8217;t very easy to extend, customize or integrate. These days, with the introduction of new features such as notifications, blocking tasks, API extensions, metadata tagging and, in general, with a heavy use of orchestration technologies, you can really customize and extend vCloud Director beyond the default out-of-the-box behavior. The exciting extensions we discussed in the blog post I linked at the beginning is a good example of this.</p>
<p style="text-align: justify;" align="justify">Sure enough there are a number of things you cannot do because you can&#8217;t modify the core (closed source). Some open source CMPs will even allow you to modify the core (for good or bad).</p>
<p style="text-align: justify;" align="justify"><b>So what&#8217;s the problem?</b></p>
<p style="text-align: justify;" align="justify">The (potential) problem here is the maintainability of the solution overall. When you deploy a software in an out-of-the-box model, the vendor is essentially responsible for working out all of the hurdles associated to moving from one version of the stack to the next version of the stack. To the point where, ideally, a vendor should be able to provide an upgrade button that allows the Enterprise customer or the SP to upgrade the stack transparently (again, without the <b><span style="color: #ff0000;">red</span></b> part mentioned above).</p>
<p style="text-align: justify;" align="justify">Let&#8217;s go back to the very exciting use case I have mentioned at the beginning of this blog post. If you read that post  you&#8217;ve noticed that the fundamental components of the architecture are vCenter Orchestrator and vShield Manager. Essentially a set of workflows hosted in vCO that call the vShield Manager APIs (when appropriately triggered by vCD blocking-tasks).</p>
<p style="text-align: justify;" align="justify">Warning: <a href="http://communities.vmware.com/docs/DOC-20431">this is what could happen to your workflows moving from one version of vCO to the next version of vCO</a>:</p>
<p style="text-align: justify;" align="justify"><img style="border: 0px none;" alt="" src="http://www.it20.info/misc/pictures/TheCostOfBuildingClouds2.jpg" width="894" height="158" border="0" /></p>
<p style="text-align: justify;" align="justify">A couple of (potential) problems:</p>
<ul style="text-align: justify;">
<li>
<p align="justify">Your workflows may (potentially) break moving from one version of vCO to the next one</p>
</li>
<li>
<p align="justify">Elevating all modules comprising the stack to the next version may be subject to a lot of dependencies</p>
</li>
</ul>
<p style="text-align: justify;" align="justify">The reference to the vCD 5.1 plugin requiring vCO 5.1 (vCO 4.x is not supported) reminded me of a slide I built some 10 years ago whose title was <i><b>&#8220;HW/SW stack version dependencies (i.e. Nightmare)&#8221;</b></i>:</p>
<p style="text-align: justify;" align="justify"><img alt="" src="http://www.it20.info/misc/pictures/TheCostOfBuildingClouds3.jpg" width="656" height="522" border="0" /></p>
<p style="text-align: justify;" align="justify">While this discussion has nothing to do with hardware, imagine the dependencies nightmare you need to deal with in a stack comprised by so many moving parts: &#8220;you have to upgrade product A but product B only works with the old version of product C which however requires to be upgraded to be able to talk to the new version of product A&#8221;. Well, if you have been in IT for more than 2 weeks you know what I am talking about.</p>
<p style="text-align: justify;" align="justify">Even without customizing / extending (by developing workflows) there is enough complexity here to keep you busy for months when you need to upgrade your stack.</p>
<p style="text-align: justify;" align="justify">But we are digressing. Back to the vCD / vShield App integration we were discussing at the beginning, this is what the <a href="http://www.vmware.com/pdf/vshield_51_api.pdf">vShield 5.1 API Programming Guide</a> says about vShield API compatibility:</p>
<p style="text-align: justify;" align="justify"><img alt="" src="http://www.it20.info/misc/pictures/TheCostOfBuildingClouds4.jpg" width="886" height="257" border="0" /></p>
<p style="text-align: justify;" align="justify">This is similar to the warning above for the compatibility of vCO workflows.</p>
<p style="text-align: justify;" align="justify">In essence what&#8217;s happening here is that, as the core moves to the next release, the labor part will have to be adjusted to cope with the new core:</p>
<p style="text-align: justify;" align="justify"><img alt="" src="http://www.it20.info/misc/pictures/TheCostOfBuildingClouds5.jpg" width="726" height="274" border="0" /></p>
<p style="text-align: justify;" align="justify">And this means a lot more work. In particular:</p>
<ul style="text-align: justify;">
<li>
<p align="justify">existing scripts and workflows will need to be adapted to the new APIs and objects (assuming they have changed)</p>
</li>
<li>
<p align="justify">features implemented in the extensions need to be transitioned and delivered through the core (assuming the core has implemented the feature)</p>
</li>
</ul>
<p style="text-align: justify;" align="justify">As you can see, this is not just about the cost of developing and maintaining the customization/extension, but it&#8217;s also a rather challenging operational nightmare. I am not talking about a PoC. I am talking about a production environment at scale.</p>
<p style="text-align: justify;" align="justify"><b>Could this be any worse than this?</b></p>
<p style="text-align: justify;" align="justify">It sounds hard given what we saw above. However, yes it could be worse than that. From at least a couple of angles.</p>
<p style="text-align: justify;" align="justify">The more sophisticated &#8220;your&#8221; solution is, the more dependencies you create, the more expensive it becomes to maintain those customizations and extensions. Last year I talked about the <a href="http://it20.info/2012/03/the-frankencloud/"> Frankencloud</a> and <a href="http://it20.info/2012/02/the-abc-of-lock-in/">the ABC of lock-in</a>. If it costs 2 years and 2M$ to create a Frankencloud, it will cost you another 4M$ over 3 years to maintain it (the <span style="color: #ff0000;"> <b>red</b></span> part of the puzzle).</p>
<p style="text-align: justify;" align="justify">Even worse than that, you may want to (<span style="text-decoration: underline;">or must</span>) customize the core of a CMP software. I have always wondered what it takes to upgrade to a new release of an open source software when you took the previous release and heavily customized it. Oh well.</p>
<p style="text-align: justify;" align="justify">In general, while you may be getting the impression that I am picturing the vCloud platform as a mess to deal with, it is fair to say that the vCloud platform is still a couple of orders of magnitude easier to deal with compared to ANY other CMP software out there as of January 2013.</p>
<p style="text-align: justify;" align="justify"><b>I am confused. What&#8217;s the message here Massimo?</b></p>
<p style="text-align: justify;" align="justify">This post is not meant to scare you. I am not advising against customizing or extending things (either outside of the core or inside of the core). This post is more to create awareness that doing so doesn&#8217;t come free of charge.</p>
<p style="text-align: justify;" align="justify">And, more importantly, this post is to remind that customizations and extensions do not only have a one time development effort (and cost). Rather, they have a recurring customization tax you need to take into account when you lay out your strategy to build a cloud. Regardless of the CMP you are using.</p>
<p style="text-align: justify;" align="justify">Everyone loves the idea of extending and customizing stuff. No one really talk about the cost associated to actually doing that (at scale, in production, not in a PoC).</p>
<p style="text-align: justify;" align="justify">Again, this isn&#8217;t to stop you from doing so. However I hope it helps to create the best balance between the <span style="color: #ff0000;"><b>red</b></span> and the <span style="color: #0000ff;"><b>blue</b></span> parts. I&#8217;d like to avoid you finding this out by surprise 2 years (and 2M$) later.</p>
<p style="text-align: justify;" align="justify">For the Google and Amazon of the world this is a no brainer, to the point that they obviously built everything from scratch. How about you? How about the remaining 99.99% of the world population? What should your <span style="color: #ff0000;"><b>red</b></span> Vs. <b><span style="color: #0000ff;">blue</span></b> balance look like?</p>
<p style="text-align: justify;" align="justify">Adapting your needs to an existing shipping software Vs. adapting an existing shipping software to your needs. That is the problem.</p>
<p style="text-align: justify;" align="justify">I don&#8217;t have an answer for that, sorry, but hopefully the discussion above may help you take a more educated decision.</p>
<p style="text-align: justify;" align="justify">Massimo.</p>
]]></content:encoded>
			<wfw:commentRss>http://it20.info/2013/02/the-cost-of-building-clouds/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>vCloud Director Meets vShield App</title>
		<link>http://it20.info/2013/02/vcloud-director-meets-vshield-app-2/</link>
		<comments>http://it20.info/2013/02/vcloud-director-meets-vshield-app-2/#comments</comments>
		<pubDate>Tue, 05 Feb 2013 13:33:58 +0000</pubDate>
		<dc:creator>Massimo</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://it20.info/?p=622</guid>
		<description><![CDATA[<p align="justify"> This article was originally posted on the VMware vCloud corporate blog. I am re-posting here for the convenience of the readers of my personal blog.</p> <p align="justify">By: Massimo Re Ferre’ (Staff Systems Engineer – Global CoE) and Joe Sarabia (Sr. Consultant – Global CoE)</p> <p>Background</p> <p>In the last few years I have seen <span style="color:#777"> . . . &#8594; Read More: <a href="http://it20.info/2013/02/vcloud-director-meets-vshield-app-2/">vCloud Director Meets vShield App</a></span>]]></description>
				<content:encoded><![CDATA[<p align="justify"><a href="http://blogs.vmware.com/vcloud/2013/01/vcloud-director-meets-vshield-app.html"> This article</a> was originally posted on the <a href="http://blogs.vmware.com/vcloud/">VMware vCloud corporate blog</a>. I am re-posting here for the convenience of the readers of my personal blog.</p>
<p align="justify">By: <a href="http://twitter.com/mreferre">Massimo Re Ferre’</a> (Staff Systems Engineer – Global CoE) and <a href="http://twitter.com/joesarabia">Joe Sarabia</a> (Sr. Consultant – Global CoE)</p>
<p><b>Background</b></p>
<p>In the last few years I have seen a rise of interest for vCloud Director use cases where multiple virtual machines (in a vApp or across vApps) can share a single Layer 2 network and yet be secured, at the vNIC level.</p>
<p>The good news is that VMware vCloud Network and Security App (formerly vShield App) does exactly that. The bad news is that vShield App is not yet consumable in self-service by a vCloud Director tenant.</p>
<p>The following is a slide I presented at VMworld 2011 (in session CIM2231):</p>
<p align="justify"><img style="border: 0px none;" alt="" src="http://www.it20.info/misc/pictures/vCloudDirectorMeetsvShieldApp1.jpg" width="778" height="586" border="0" /></p>
<p align="justify">As you can see, I pointed out that these <i>security groups</i> (aka <i>trusted zones</i> or <i>enclaves</i>) could be configured by the vShield Admin but not by the tenant.</p>
<p>This is what the out of the box vCloud Director experience allows you to consume from a network and security perspective:</p>
<p><img style="border: 0px none;" alt="" src="http://www.it20.info/misc/pictures/vCloudDirectorMeetsvShieldApp2.jpg" width="778" height="586" border="0" /></p>
<p align="justify">Note: this was based on vCloud Director 1.5. With vCloud Director 5.1 the Load Balancing services are now exposed via the vCD UI/APIs as well.</p>
<p><b>Previous workarounds</b></p>
<p>In the VMworld presentation I offered a couple of solutions to work around the limitation of vCloud Director not exposing vShield App functionalities for tenant consumption.</p>
<p>The first one is what I referred to as “Managed Services”:</p>
<p><img style="border: 0px none;" alt="" src="http://www.it20.info/misc/pictures/vCloudDirectorMeetsvShieldApp3.jpg" width="778" height="586" border="0" /></p>
<p align="justify">In essence a tenant would need to open a ticket with the cloud service provider (private or public) and ask them to put the proper tenant’s VMs inside the proper security groups – easy to implement, as it doesn’t require any development or customization, but not very “cloudy”.</p>
<p>The second solution I offered is what I referred to as “Self-service with customization”:</p>
<p><img style="border: 0px none;" alt="" src="http://www.it20.info/misc/pictures/vCloudDirectorMeetsvShieldApp4.jpg" width="778" height="586" border="0" /></p>
<p align="justify">A good option if you are using a custom portal (where you can dispatch API calls to both vCD and vShield Manager) but not all cloud service providers want to develop a custom portal, so it may not be a viable workaround for many of customers and partners.</p>
<p>Fast forward a couple of years.</p>
<p><b>A better solution</b></p>
<p>With the introduction of vCloud Director Notifications and Blocking Tasks in vCloud Director 1.5, the fact that vCO is becoming more and more core to how you build a VMware based IaaS cloud and the introduction of new functionalities in vCloud Director 5.1, such as API extensions and Metadata tagging, new scenarios and possibilities are arising.</p>
<p>Particularly in this post I am going to focus on the Metadata tagging scenario.</p>
<p>In vCloud Director 5.1 almost all objects (including obviously VMs) can be tagged with a key/value mechanism. For example you can say that a MySQL VM is tagged with the value DATABASE in the key SECURITYGROUP:</p>
<p><img style="border: 0px none;" alt="" src="http://www.it20.info/misc/pictures/vCloudDirectorMeetsvShieldApp5.jpg" width="778" height="586" border="0" /></p>
<p align="justify">This opens up a huge amount of opportunities in the context of consuming a vShield App from within vCloud. Joe Sarabia and I brainstormed a bit around this a few days ago and he decided to go ahead and build a small prototype to demonstrate this. More on this later.</p>
<p>Before we jump into this prototype, I need to share a bit more context around what Joe implemented.</p>
<p>This is a graphical representation of the new scenario with a high level flow.</p>
<p><img style="border: 0px none;" alt="" src="http://www.it20.info/misc/pictures/vCloudDirectorMeetsvShieldApp6.jpg" width="778" height="586" border="0" /></p>
<p align="justify">At the (very) high level this is what happens.</p>
<ul>
<li>
<p align="justify">A VM is tagged with a particular key/value pair</p>
</li>
<li>
<p align="justify">At Power-on a blocking task is used to stop the (Power-on) operation and call out to the AMQP bus</p>
</li>
<li>
<p align="justify">vCenter Orchestrator receives and reads the message on the AMQP bus</p>
</li>
<li>
<p align="justify">vCenter Orchestrator parses the message and matches the VM tag with a vShield App security group</p>
</li>
<li>
<p align="justify">vCenter Orchestrator runs a workflow against vShield Manager to put the VM into the proper vShield App security group</p>
</li>
</ul>
<p align="justify">Please note that the nature of this small prototype is such that security groups are pre-created and rules defining (blocked and allowed) traffic are pre-configured.</p>
<p>In essence, with the logic Joe prototyped, you can consume an existing <i> security plumbing</i>, but you cannot modify it. The idea could be that these settings can be managed through tickets with the cloud service provider, but the placement of those VMs in the proper security group is dynamic and automatic (policy based according to the tagging).</p>
<p>You can go as far as you want with this. You can create enough logic inside vCO so that, if the metadata value doesn’t match an existing security group, the security group gets created (along with some default rules perhaps).</p>
<p>Or alternatively the cloud administrator could leverage an existing service portal where the user can create, delete, update security groups and associate traffic rules for later consumption via vCD.</p>
<p>It can be as <span style="text-decoration: line-through;">complex</span> rich as you want.</p>
<p align="justify"><b>Use cases</b></p>
<p>There are many use cases where this may be useful. Right now, in vCloud Director, the only way to segment traffic and protect workloads is via the Edge Gateway.</p>
<p>This is all good but the moment you have a lot of <i>microsegments</i> to deal with, you end up burning a lot of Layer 2 networks. Not to mention that an Edge Gateway, as of today, supports up to 10 networks.</p>
<p>This is when a mechanism that allows you to create micro security zones on a single Layer2 network becomes very handy. Imagine a vCD virtual datacenter (aka Organization vDC) with a single Edge gateway that maps to an External Network (Internet or Corporate Network) and to a private Routed Organization Network. On top of this Org Network you can create dozens of those security enclaves without creating other Layer2 connected to the Edge.</p>
<p>So far we (Joe and I) have primarily thought about microsegmenting a Routed or Internal Organization Network. We haven’t thought the details about microsegmenting an Organization Network configured as a Direct Connect to an External Network (note the prototype Joe built tactically use an External Network because it was easier for him to demo that setup).</p>
<p>This would in turns allow different tenants to share the same External Network by being able to have a native external address (no NAT or static routing through the Edge) and still be protected by means of these vShield App security groups. This requires a bit of additional thinking because sharing a Layer2 among different tenants may have deeper implications if not properly planned. Microsegmenting a private Routed or Internal Organization Network has less implications and security exposures.</p>
<p align="justify"><b>vShield Plugin</b></p>
<p>Those of you familiar with vCenter Orchestrator may have spotted that Joe has used the REST APIs plugin to connect to vShield Manager. I would like to say we have done this to demonstrate vCO can connect and orchestrate pretty much everything, but the reality is we have to do so because, at the time of this writing, a vCloud Network and Security plugin for vCO is not yet available.</p>
<p>This makes things a bit more time consuming because there are no native workflows and actions available to interact with the vCNS API. Instead, you have to build these yourself by parsing and building XML and using things like the HTTP-REST plug-in to generate workflows.</p>
<p align="justify"><b>The potential consumption model for these extensions<br />
</b><br />
This is where things become interesting and “architecturally elegant”.</p>
<p>An advanced (DevOps?) vCloud consumer at run-time could use these tags that, when building a 3-tier application, can set the proper security characteristics on a per VM basis.</p>
<p>Alternatively these tags could be assigned to a vApp by a cloud administrator or catalog administrator so that a less smart vCloud consumer could deploy the vApp from a catalog and inherit the security settings (tags) pre-defined in the vApp template in vCD.</p>
<p>Even more interesting, now a higher-level tool like vCloud Automation Center can leverage this infrastructure security plumbing and set those metadata tags when a blueprint gets deployed on vCD.</p>
<p>The beauty of this is that you don’t have to create 1:1 integrations across all products in the stack. You can implement extensions or policy enforcements at the vCD level so that both a vCD consumer and a consumer above vCD (like vCAC) can benefit from it. No need to re-invent the wheel at each layer.</p>
<p align="justify"><b>Flexibility (and openness)</b></p>
<p>We intended to document this as a reference framework and architecture on how to use metadata tags to enforce policies on the platform. There are customers that are, for example, exploring the applicability of this framework to enforce affinity and anti-affinity VMs placement policies on vSphere.</p>
<p>Others are thinking about describing backup policies to VMs based on these metadata (eg a VM with BACKUP=GOLD is backed up every night while a VM with a BACKUP=BRONZE is backed up every week). Of course this framework, as is, does not take into account the restore process, only the backup policy description and enforcement, re: how data needs to be protected.</p>
<p>This is also open enough to leverage third party security mechanisms. We have documented and Joe prototyped an integration with RabbitMQ, vCenter Orchestrator, vShield Manager and vShield App but nothing would stop you from using your technology of choice to cover any of these specific areas. Did I say “open”? Really?</p>
<p>Last but not least this is a great example of how cloud service providers could extend the vCloud platform without compromising compatibility with the core. This metadata approach can be enabled in any given cloud, thus allowing a user to tag VMs to get them protected (as an additional non standard service). Nothing would stop the same tenant to deploy the same vApp in another vCloud-based cloud even if the new target doesn’t have these metadata security enforcements (essentially he could still tag the VMs, but that would have no effect).</p>
<p>This feature enables freedom to move for the tenant, while also allowing the cloud administrator to extend the core features and differentiate.</p>
<p align="justify"><b>Conclusions</b></p>
<p>This is, in my opinion, a great example of the extensibility and richness of the platform. Note we have only discussed here the metadata tagging approach, which is geared towards policy-based enforcement at deployment time. We haven’t talked about the vCloud API extension approach, which opens up an even broader and richer set of capabilities. This could cover many other use cases (for example how you can manipulate security groups and how you can restore VMs backed up based on metadata tagging using a vCloud API call).</p>
<p>The use case we described here (vCD and vShield App integration) may end up being built-in into the core vCloud Suite one day. The other 10 million use cases that can be implemented with this framework may not.</p>
<p>And finally, below is short demonstration of the prototype Joe built:</p>
<p><span class='embed-youtube' style='text-align:center; display: block;'><iframe class='youtube-player' type='text/html' width='640' height='390' src='http://www.youtube.com/embed/gz8OrZ1ETVk?version=3&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;showinfo=1&#038;iv_load_policy=1&#038;wmode=transparent' frameborder='0'></iframe></span></p>
<p>Massimo.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://it20.info/2013/02/vcloud-director-meets-vshield-app-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Backup and Restore of vCloud Director Consumer Workloads</title>
		<link>http://it20.info/2013/01/backup-and-restore-of-vcloud-director-consumer-workloads/</link>
		<comments>http://it20.info/2013/01/backup-and-restore-of-vcloud-director-consumer-workloads/#comments</comments>
		<pubDate>Thu, 31 Jan 2013 13:35:18 +0000</pubDate>
		<dc:creator>Massimo</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://it20.info/?p=612</guid>
		<description><![CDATA[<p align="justify">Backup and restore (of consumer workloads) in a vCloud Director environment is a hot topic. When you deal with Pets (Vs. Cattle) it is important that you take care of your little lovely friends workloads. Part of the effort of taking care of them includes backing them up regularly and, more importantly, restoring them <span style="color:#777"> . . . &#8594; Read More: <a href="http://it20.info/2013/01/backup-and-restore-of-vcloud-director-consumer-workloads/">Backup and Restore of vCloud Director Consumer Workloads</a></span>]]></description>
				<content:encoded><![CDATA[<p align="justify">Backup and restore (of consumer workloads) in a vCloud Director environment is a hot topic. When you deal with <a href="http://it20.info/2012/12/vcloud-openstack-pets-and-cattle/">Pets (Vs. Cattle)</a> it is important that you take care of your <span style="text-decoration: line-through;">little lovely friends</span> workloads. Part of the effort of taking care of them includes backing them up regularly and, more importantly,  restoring them when needed.</p>
<p align="justify">This industry has achieved a high level of maturity in terms of best practices (and tooling) for backing up and restoring workloads running on vSphere virtual infrastructures. As we introduced an additional layer on top of vSphere (vCD) we broke, so to speak, some of the tools and many of the best practices. Even more challenging, we introduced concepts that didn&#8217;t exist before in a virtualization scenario (cloud providers and cloud consumers).</p>
<p align="justify">People tend to always give a crisp yes / no when faced with the question &#8220;can you backup/restore workloads running in vCloud Director&#8221;? I think the matter is more complex than that. It really boils down to what you want to do (more on this later).</p>
<p align="justify">I was tasked (I actually volunteered) to double click on this. Admittedly I started this effort with a short minded view that was (on the line of) &#8220;let&#8217;s find out which backup and restore tools integrate with vCloud Director&#8221;. As I started to lay out the content it became very clear that I was trying to find out the micro-details without having clear the potential macro-architectures and big picture. I started to lay out the context and I thought that making it public would help gathering more feedbacks and getting valuable inputs on how to proceed. What you will see next is (more or less) part of the content I am working on. It goes without saying that this are the informal rants of a single cloud architect. This is not a VMware paper (as is) and you shouldn&#8217;t refer it as such when pointing to this blog post.</p>
<p align="justify"><b> <span style="font-size: large;">Introduction to the vCloud Director Storage Layout</span></b></p>
<p align="justify">The figure below shows a high level view of the vCloud Director storage architecture.</p>
<p><img style="border: 0px none;" alt="" src="http://www.it20.info/misc/pictures/BackupandRestoreofvCloudDirectorconsumerworkloads1.jpg" width="672" height="447" border="0" /></p>
<p align="justify">There are a lot of considerations missing in the picture above in terms of how the storage stack is constructed in vCloud Director 5.1 (for example Storage Profiles, Provider vDCs, vSphere clusters, etc.) but there is enough information to describe the backup and restore process (and associated challenges).</p>
<p align="justify">First of all one can depict the multi-tenancy nature of vCloud Director where a single datastore/LUN (and host, for that matter) can be securely shared among different tenants (aka organizations).</p>
<p align="justify">vCloud Director presents a certain amount of (abstracted) storage to the tenant as a property of the organization vDC (aka Org vDC) the tenant has been assigned to. The tenant can consume that storage by creating VM disks as a property of a VM. The tenant does not care where that abstracted pool of storage resources are coming from.</p>
<p align="justify">Another important thing to notice in this simplified diagram is the fact that different actors can access the same resources at different levels. For example:</p>
<ul>
<li>
<p align="justify">A tenant can access and can manipulate resources in its organization vDC whereas a cloud administrator can manipulate all resources across all tenants</p>
</li>
<li>
<p align="justify">A tenant can access a file on the VM file system by means of a Guest OS operation whereas a cloud administrator can access the same file mounting the VMDK at the ESXi host level</p>
</li>
<li>
<p align="justify">A tenant can perform limited manipulation on VMDK files via the vCloud APIs (e.g. independent disks, new in vCD 5.1) whereas the cloud administrator can fully manipulate them using traditional vSphere mechanisms</p>
</li>
</ul>
<p align="justify"><b> <span style="font-size: large;">Infrastructure Visibility</span></b></p>
<p align="justify">This parameter, later used to characterize backup and recovery solutions, describes the level of access a given individual may have in a vCloud Director stack.</p>
<p align="justify">vCD uses a role-based model to assign proper rights to users. In the context of this document we will divide the cloud world in two macro roles: providers and consumers.</p>
<p align="justify">In vCD language, they are the cloud administrator and the organization administrator.</p>
<p align="justify"><b>Note: </b>We will consider roles like vApp user and vApp author being a subset of the organization administrator role and, as such, with a slightly limited visibility compared to the latter. We will just consider the organization administrator as the cloud consumer.</p>
<p align="justify">We introduce here two key concepts in cloud operations. These may be relevant in general for cloud but they are indeed very relevant for vCD cloud deployments.</p>
<p align="justify">These concepts are above-water visibility and below-water visibility. The water line alluded here is the line that separates cloud tenants from cloud administrators.</p>
<p align="justify">It is important for cloud administrator and cloud consumers to pay attention to this parameter (visibility) because that determines whether a given backup solution they are (respectively) building or consuming is available out of the box without customizations and on any vCloud Director deployment available.</p>
<p><b>“Above-water” Visibility </b></p>
<p align="justify">With above-water visibility (or consumer space) we refer to all of those operations that can be performed by a vCD tenant (specifically by an organization administrator) with an out of the box vCD. The emphasis here is on vanilla and out of the box.</p>
<p align="justify">These are all standard operations that any vCD tenant can perform regardless of the vCloud Director implementation (private or public that is).</p>
<p align="justify">This is a list of operations that, for example, an organization administrator can do above-water:</p>
<ul>
<li>
<p align="justify">Creating a “backup server” inside the tenant to backup locally the files (inside the OS) of the production VMs</p>
</li>
<li>
<p align="justify">Manually copying vApps either in the same PvDC or in different PvDCs</p>
</li>
<li>
<p align="justify">Programmatically copying vApps either in the same PvDC or in different PvDCs</p>
</li>
<li>
<p align="justify">Leveraging independent disks to attach / detach VMDK files to stateless VMs</p>
</li>
<li>
<p align="justify">Leveraging independent disks (through attach / detach) to create Guest OS mirrors of production VMs.</p>
</li>
</ul>
<p align="justify">Many of these approaches are usually typical of “design for fail” cloud models and don’t usually fly very well with customers with an Enterprise mind set.</p>
<p align="justify">Also, a missing out of the box object storage service in vCD limits the above-water backup and recovery use cases. An alternative workaround would be to setup a proxy inside the tenant that can backup to a third party public object storage service.</p>
<p align="justify">For example an object storage can be configured as a target in some traditional backup and restore tools or some third party public object storage services provide appliances (aka storage gateways) that can act as a proxy between a private set of servers and the public object storage service.</p>
<p align="justify">All of the above is considered above-water since this is something the tenant can implement without any interaction with the cloud provider and, more importantly, without any particular vCloud Director customization or extension.</p>
<p align="justify">This applies to any vCloud Director based cloud instance.</p>
<p><b>“Below-water” Visibility </b></p>
<p align="justify">Describing below water visibility (or provider space) is fairly easy because it is, essentially, full visibility into the cloud stack. This is only available to the cloud administrator and, assuming the vCloud Director administrator is also the administrator of the infrastructure underpinning it (which is often the case), this includes visibility into a variety of tools and layers including, obviously, vCenter Servers.</p>
<p align="justify">The cloud administrator is the owner of the entire stack and can perform any operation at any level in the stack. This is obviously true within the boundaries of what it is supported by the integration of the various products in the vCloud Suite.</p>
<p align="justify">There are for example tasks that, while the cloud administrator can perform at a lower level, are not supported as they may break the layers above. Some of these tasks, for example, include (source: <a href="http://www.vmware.com/cloud-computing/cloud-architecture/vcat-toolkit.html">vCAT</a> 3.0.2):</p>
<ul>
<li>
<p align="justify">Editing virtual machine properties</p>
</li>
<li>
<p align="justify">Renaming virtual machine</p>
</li>
<li>
<p align="justify">Disabling DRS</p>
</li>
<li>
<p align="justify">Deleting or renaming resource pools</p>
</li>
<li>
<p align="justify">Changing networking properties</p>
</li>
<li>
<p align="justify">Renaming datastores</p>
</li>
<li>
<p align="justify">Changing or renaming folders.</p>
</li>
</ul>
<p align="justify">In the context of backup and recovery of consumer workloads, operating at this level of the stack requires careful planning by the cloud administrator.</p>
<p align="justify">This is a list of operations that, for example, a cloud administrator can theoretically do below-water:</p>
<ul>
<li>
<p align="justify">Backing up / restoring files inside tenants via VMware VADP</p>
</li>
<li>
<p align="justify">Backing up / restoring VMDKs inside tenants via VMware VADP</p>
</li>
<li>
<p align="justify">Backing up / restoring VMs inside tenants via VMware VADP</p>
</li>
<li>
<p align="justify">Backing up / restoring vCloud vApps inside tenants via VMware VADP</p>
</li>
<li>
<p align="justify">Other objects manipulation aimed at saving the state of those objects using vCenter administration level of access.</p>
</li>
</ul>
<p align="justify">Some of the operations above, particularly the restore of vCloud objects, require particular attention and best practices.</p>
<p align="justify"> Most vCloud implementations will vary below-water. This is true for many other operations but it is certainly true for backup and recovery operations. While there is a set of basic core functionalities a cloud admin can perform using VMware tools at this layer, most implementations will be complemented by peculiar backup and restore software products and, perhaps, particular configurations of the same backup and restore software products.</p>
<p align="justify">So while we consider the above-water zone to be consistent and standard across all vCloud Director deployments, we anticipate the below-water zone to be specific and peculiar for every deployment.</p>
<p align="justify"><b> <span style="font-size: large;">Backup and Restore levels</span></b></p>
<p align="justify">This is the second parameter that we will use later to characterize and segment backup and recovery solutions.</p>
<p align="justify">This is straightforward and describes the “what” in the backup and restore equation. What objects do tenants need to backup (and be able to restore)?</p>
<p align="justify">These objects and levels are discussed below in this section. The following picture summarizes them graphically.</p>
<p><img style="border: 0px none;" alt="" src="http://www.it20.info/misc/pictures/BackupandRestoreofvCloudDirectorconsumerworkloads2.jpg" width="562" height="409" border="0" /></p>
<p align="justify"><b>File Level</b></p>
<p align="justify">This is the most atomic thing in the cloud consumer space that the tenant may want and can backup (and restore). It can’t get more granular than that. There isn’t a lot to say about it. A file inside a Guest OS file system is just a file.</p>
<p align="justify"><b>Disk Level</b></p>
<p align="justify">This refers to the VMDK file associated to a given VM. It’s fair to see the VMDK as the drive of the VM. Note that by backing up the VMDK you are essentially backing up the entire state on disk of that Guest OS. In Microsoft Windows parlance, it’s like backing up the entire c:\ drive.<br />
The relationship between the VMDK and the files discussed above is 1:many.</p>
<p align="justify"><b>VM level </b></p>
<p align="justify">This object includes the VMDK content as well the metadata describing the virtual machine. A VM is really the collection of the content of the (virtual) disk as well as surrounding data that describes the characteristic of the VM (number of vCPUs, amount of memory, number of vNICs, etc.). This information is saved in the vmx file (which sits next to the VMDK file, in the same folder).<br />
The relationship between the VM and the VMDK can be 1:many (limits apply, albeit it is often 1:1).</p>
<p align="justify"><b>vApp level</b></p>
<p align="justify">This object describes the service (or the workload). A vApp is usually referred to as a collection of VMs but there are more to it than that. A vApp includes information such as vApp Networks (and associated network and security levels), VMs start and stop order, etc.<br />
vCD vApp metadata and vCD VMs metadata are also part of the properties of the vApps.<br />
The relationship between the vApp and the VM can be 1:many (limits apply)</p>
<p align="justify"><b> <span style="font-size: large;">Managed Service Vs. Self Service</span></b></p>
<p align="justify">This is the last parameter that we will use to characterize a backup and restore solution for vCloud Director consumer workloads.</p>
<p align="justify">At first this may sound like a duplicate of the above-water and below-water segmentation but it is not.</p>
<p align="justify">The infrastructure visibility parameter speaks more to the implementation of the cloud environment and the out of the box capabilities.</p>
<p align="justify">This segmentation speaks more to the operational aspect of performing backup and recovery of consumer workloads.</p>
<p align="justify">While it would be easy to mapping the above-water concept with self-service and mapping the below-water concept to managed services the reality may be more complex.</p>
<p align="justify">For example a given cloud service provider may offer managed services using above-water capabilities.</p>
<p align="justify">Or, even more interesting, a cloud consumer could experience a self-service experience using below-water capabilities (by means of third party portals or API extensions that the cloud administrator can expose to the tenant and that are not available out of the box with a vanilla vCloud Director setup).</p>
<p align="justify"><b>Cloud Provider Managed Service </b></p>
<p align="justify">This is the scenario where the cloud administrator owns the operational aspects of backing up (regularly) and restoring (on a need basis) consumer workloads on behalf of the cloud consumer.</p>
<p align="justify">This is true regardless of:</p>
<ul>
<li>
<p align="justify">Whether the cloud administrator uses an above-water (less likely) or a below-water (more-likely) strategy</p>
</li>
<li>
<p align="justify">What level of backup and restore is required (file, disk, VM or vApp)</p>
</li>
</ul>
<p align="justify">In this scenario the cloud administrator usually have a set of policies in place to backup the consumer workloads (depending on the agreed SLAs) and the cloud administrator personnel perform the restore. Depending on the contract in place this could happen without consumer interaction or the consumer, by opening a ticket with the cloud service provider, could trigger the restore.<br />
In this scenario the self-service aspect of cloud is not leveraged and exploited.</p>
<p align="justify"><b>Cloud Consumer Self Service </b></p>
<p align="justify">In this scenario the tenant is fully in control of the backup and restore operations.</p>
<p align="justify">This is true regardless of:</p>
<ul>
<li>
<p align="justify">Whether the cloud consumer uses an above-water or a below-water strategy</p>
</li>
<li>
<p align="justify">What level of backup and restore is required (file, disk, VM or vApp)</p>
</li>
</ul>
<p align="justify">There is typically no interaction between the cloud administrator and the tenant and every backup and restore operational aspect is available to the cloud consumer.</p>
<p align="justify">Note the nature of backup operations may vary depending on the implementation details.</p>
<p align="justify">For example in an above-water backup and restore strategy the tenants are responsible for building and consuming their own solution.</p>
<p align="justify">However, when a tenant is consuming, in self-service, a below-water solution implemented by the cloud service provider, backup operations may be driven by:</p>
<ul>
<li>
<p align="justify">Pre-defined policies (e.g. all vApps placed in a given virtual datacenter will have a pre-defined backup policy)</p>
</li>
<li>
<p align="justify">Self-service policies (e.g. the tenant can interactively assign vApps to particular policies interacting with the cloud via third party service portals or API extensions)</p>
</li>
</ul>
<p align="justify"><b> <span style="font-size: large;">Backup and Restore: Solutions Characterization</span></b></p>
<p align="justify">Why is this important? Ideally every backup and restore solution we will discuss in the context of this document can be characterized by this triplet we have defined:</p>
<ul>
<li>
<p align="justify">Where? (above-water or below-water)</p>
</li>
<li>
<p align="justify">What? (files, disks, VMs or vApps)</p>
</li>
<li>
<p align="justify">Who? (tenant self-service or provider managed services)</p>
</li>
</ul>
<p align="justify">The triplet above isn’t useful to describe the inner technical details of any backup and restore product. However it is very useful to describe the outer characteristics of any backup and restore solution.</p>
<p align="justify">Ideally, before talking about the actual implementation, cloud architects should be able to characterize a solution by the where / what / who parameters.</p>
<p align="justify">This is true for architects building clouds (e.g. “our vCloud Director based backup and restore strategy will allow tenants to restore VMs and vApps by opening a ticket with us. We will then leverage some of our below-water features not exposed to the tenants”).</p>
<p align="justify">Similarly, architects consuming clouds should be able to query potential cloud service providers about their backup and restore services using this framework (e.g. “we are looking for a vCloud Director based service that would allow us to restore files, disks and VMs in self-service leveraging below-water features”).</p>
<p align="justify">Note that, for the most part, the infrastructure visibility aspect (below-water, above-water) isn’t usually something a consumer may want to call out as a “requirement”. Ideally the consumer would always want something to be “above-water” because that means the solution could be implemented on any vCD based cloud should they choose another cloud provider. However, the reason for which a tenant may specifically ask for a below-water functionality is because they have enough know-how of the vCloud stack to require a particular and more efficient solution than what a tenant may be able to achieve above-water.</p>
<p align="justify">In summary, we have been introducing the concept of above-water and below-water.</p>
<p><img alt="" src="http://www.it20.info/misc/pictures/BackupandRestoreofvCloudDirectorconsumerworkloads3.jpg" width="662" height="424" border="0" /></p>
<p align="justify">We have then introduced the list of objects that could be a target for backup and restore operations.</p>
<p><img alt="" src="http://www.it20.info/misc/pictures/BackupandRestoreofvCloudDirectorconsumerworkloads4.jpg" width="662" height="424" border="0" /></p>
<p align="justify">Last but not least we have introduced the notion of self-service and managed services.</p>
<p align="justify">The following picture represents a self-service solution.</p>
<p><img alt="" src="http://www.it20.info/misc/pictures/BackupandRestoreofvCloudDirectorconsumerworkloads5.jpg" width="662" height="424" border="0" /></p>
<p align="justify">The following picture represents a managed services solution.</p>
<p><img alt="" src="http://www.it20.info/misc/pictures/BackupandRestoreofvCloudDirectorconsumerworkloads6.jpg" width="662" height="424" border="0" /></p>
<p align="justify">
<p align="justify">That&#8217;s all (I can disclose). This is the framework I have been working on lately. As often happens to me, I can&#8217;t tackle a very simple problem without having to put it into the bigger picture to contextualize it. Sorry about that.</p>
<p align="justify">While I do understand that many people are interested in &#8220;does backup product xyz talk to the vCloud APIs&#8221;, I fear a simple yes or no doesn&#8217;t cut it and doesn&#8217;t put those people in a position to build a proper backup and restore solution for their vCloud Director based cloud.</p>
<p align="justify">Now, the next challenge is how to lay out (in a meaningful way) the research and unstructured work I have been doing to double click on actual solutions. What I have in mind right now (subject to change) is to describe in greater details a certain number of solutions and architectures (4? 6? 10?) that could be considered most common and best practices and characterize each of them with the <i>where</i> / <i>what</i> / <i>who</i> framework I discussed above.</p>
<p align="justify">This would let VMware customers and partners come up with their own additional solutions / combinations that they could characterize with the same framework. Just a thought at the moment.</p>
<p align="justify">Any comment or feedback that you may have, I am all ears.</p>
<p align="justify">Massimo.</p>
]]></content:encoded>
			<wfw:commentRss>http://it20.info/2013/01/backup-and-restore-of-vcloud-director-consumer-workloads/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>AWS: a Space Shuttle to Go Shopping?</title>
		<link>http://it20.info/2012/12/aws-a-space-shuttle-to-go-shopping/</link>
		<comments>http://it20.info/2012/12/aws-a-space-shuttle-to-go-shopping/#comments</comments>
		<pubDate>Tue, 18 Dec 2012 17:20:07 +0000</pubDate>
		<dc:creator>Massimo</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://it20.info/?p=601</guid>
		<description><![CDATA[<p align="justify">I apologize for the catchy title (I need to drive clicks, somehow). The title of this blog post should have been &#8220;considerations on some interesting AWS (Amazon Web Services) usage data I came across&#8221;. Not very catchy.</p> <p align="justify">A few weeks ago I saw a study done by The Big Data Group re the <span style="color:#777"> . . . &#8594; Read More: <a href="http://it20.info/2012/12/aws-a-space-shuttle-to-go-shopping/">AWS: a Space Shuttle to Go Shopping?</a></span>]]></description>
				<content:encoded><![CDATA[<p align="justify">I apologize for the catchy title (I need to drive clicks, somehow). The title of this blog post should have been &#8220;considerations on some interesting AWS (Amazon Web Services) usage data I came across&#8221;. Not very catchy.</p>
<p align="justify">A few weeks ago I saw <a href="http://www.slideshare.net/bigdatalandscape/big-data-trends-cloud-cost-benchmark-study"> a study done by The Big Data Group re the above</a>. I found this extremely interesting. I am not sure how much this analysis is representative of the total AWS usage but it does cover 250.000 instances which is roughly one quarter of the total instances  running on AWS, rumors say. <a href="http://huanliu.wordpress.com/2012/03/13/amazon-data-center-size/">For others</a>, 250.000 instances could be as much as half of the entire AWS cloud. All in all, I thought this analysis from The Big Data Group must be somewhat realistic.</p>
<p align="justify">When I think about AWS I usually think about:</p>
<ul>
<li>
<p align="justify">Cloud != Virtualization</p>
</li>
<li>
<p align="justify">PAYG (aka PayGo)</p>
</li>
<li>
<p align="justify">Resources Consumption Optimization</p>
</li>
<li>
<p align="justify">&#8220;Infinite&#8221; Scalability and Elasticity</p>
</li>
</ul>
<p align="justify">Among other things.</p>
<p align="justify">As I read through that analysis, it sort of dismantled a lot of myths I had about Amazon Web Services (usage patterns). Let&#8217;s go through them.</p>
<p align="justify"><strong>Cloud != Virtualization</strong></p>
<p align="justify">This is a common theme. A lot of people claim compute virtualization (i.e. virtual machines) playing just a niche role in what a (IaaS) cloud delivers. I can&#8217;t disagree but it is interesting to notice that&#8230;</p>
<p align="justify"><img src="http://www.it20.info/misc/pictures/AWS-aSpaceShuttletoGoShopping1.JPG" alt="" width="757" height="570" border="0" /></p>
<p align="justify">64% of all dollars spent on AWS are for <span style="text-decoration: line-through;">virtual machines</span> instances (with 7% on EBS which you may or may not see as part of the instance).</p>
<p align="justify">26% on another awesome and very successful AWS service (S3). Interestingly the remaining 3% (peanuts) for RDS makes it the total 100% spending. Not sure what that means. Are all the other 20+ services generating negligible revenue?  Weird. If true, so much for &#8220;cloud is not virtualization&#8221;.</p>
<p align="justify"><strong>Pay As You Go (PAYG or PayGo)</strong></p>
<p align="justify">Another huge value of AWS, no doubt. And that&#8217;s why I was floored when I read that&#8230;</p>
<p align="justify"><img src="http://www.it20.info/misc/pictures/AWS-aSpaceShuttletoGoShopping2.JPG" alt="" width="757" height="570" border="0" /></p>
<p align="justify">I guess people are realizing that, if you use these stuff 24/7/365 (in other words not for development), your costs are going up to the roof in a true PAYG  pricing framework. 94% of those 250.000 instances should have been reserved to save money. Wow. So much for &#8220;pay for only what you use and forget about planning&#8221;.</p>
<p align="justify"><strong>Resource Consumption Optimization</strong></p>
<p align="justify">This is (or should be) a direct consequence of the above (PAYG). I was puzzled to read that&#8230;</p>
<p align="justify"><em>&#8220;Many instances are underutilized. Significant storage goes unattached&#8221;.</em> (slide #4 of <a href="http://www.slideshare.net/bigdatalandscape/big-data-trends-cloud-cost-benchmark-study"> The Big Data Group analysis</a>).</p>
<p align="justify">And again&#8230;</p>
<p align="justify"><em>&#8220;Medium instances are only about 12% utilized while small instances are just under 17% utilized&#8221; (slide #9 </em>of <a href="http://www.slideshare.net/bigdatalandscape/big-data-trends-cloud-cost-benchmark-study"> The Big Data Group analysis</a><em>) </em></p>
<p align="justify">Wow. Did you say cloud? This sounds like IT pre-virtualization. You remember all those &#8220;your physical servers are only used 10% on average so you should virtualize them&#8221;.  So much for &#8220;resources consumption optimization in the cloud&#8221;.</p>
<p align="justify"><strong>&#8220;Infinite&#8221; Scalability and Elasticity</strong></p>
<p align="justify">I have once heard <a href="https://twitter.com/intent/favorite?tweet_id=225668345771466752">Adrian Cockroft defining cloud scalability as being able to instantiate 1000 VMs with 64GBs of memory</a> in one operation. No one can beat Amazon here. Period.</p>
<p align="justify">Having that said, how popular and pervasive is this requirement? I found pretty interesting to read the break down of those 250 organizations in the analysis and how they are segmented in terms of instances deployed&#8230;</p>
<p align="justify"><img src="http://www.it20.info/misc/pictures/AWS-aSpaceShuttletoGoShopping3.JPG" alt="" width="757" height="570" border="0" /></p>
<p align="justify">By Adrian&#8217;s metric, only 1% of Amazon users should really care about cloud scalability and elasticity. Even assuming that all these customers need to deploy those instances in one click (yeah sure), 44% of them will only need up to 10 per month and 89% of them only need below 100 per month. I will make a bold statement and I&#8217;ll say 9 customers out of 10 are consuming peanuts in the cloud. So much for &#8220;cloud is all about infinite scaling&#8221;.</p>
<p align="justify"><strong>My Interpretation of the above (your mileage may vary)</strong></p>
<ul>
<li>
<p align="justify">There are a lot of users that are using AWS as an off-premise traditional virtual infrastructure to spin up (few) VMs.</p>
</li>
<li>
<p align="justify">Unknown to me whether the above is because doing so through IT is slow (consumers = non-IT People) or because they have chosen to extend (or not to have) local IT (consumers = traditional IT people).</p>
</li>
<li>
<p align="justify">Consumers go to AWS because it&#8217;s easy to start a VM, not because AWS has 30+ additional services they can leverage. Surely some do but the bulk doesn&#8217;t seem to.</p>
</li>
<li>
<p align="justify">Infinite cloud scalability is an interesting academic topic. The clouderati could spend a week-end discussing this on Twitter. However this topic is irrelevant for some 99.x % of <a href="http://it20.info/2012/09/cloud-and-the-three-it-geographies-silicon-valley-us-and-rest-of-the-world/">real customers out there</a>.</p>
</li>
<li>
<p align="justify">250.000 instances consumed by 250 organization 89% of which run between 1 and 100 instances: can&#8217;t bother to do the math to find the formula right now but my instinct says that there are (very) few of those 250 organizations (amazon.com, Netflix, etc) consuming an insane portion of the AWS cloud while the majority of the other customers are consuming &#8220;peanuts&#8221;.</p>
</li>
<li>
<p align="justify">(Warning: bold / stretched statement coming) From the above perspective, AWS sounds more like a colo outsourced &#8220;virtualized datacenter&#8221; for a handful of big organizations and with thousands of small customers consuming &#8220;the remaining&#8221;.</p>
</li>
<li>
<p align="justify">(Warning: speculation not backed by data coming) Big customers are probably using all the AWS services richness and <a href="http://it20.info/2011/04/tcp-clouds-udp-clouds-design-for-fail-and-aws/">are designing applications properly for AWS</a>. The remaining of the customers (majority) seems to be spinning up a few instances (it&#8217;s so easy) and praying for the best.</p>
</li>
</ul>
<p align="justify">And this leads me to the tedious design-for-fail discussion. I am not going to bore you with this one again, no worries. This concept ties back to the <a href="http://it20.info/2012/12/vcloud-openstack-pets-and-cattle/">Pets and Cattle concept</a> (AWS implements a cloud model that is suited for cattle).</p>
<p align="justify">The only question I have after reading this analysis (assuming it is representative of real usage) is&#8230; do traditional Enterprise customers and SMBs approaching and consuming AWS know what they are doing? <a href="https://forums.aws.amazon.com/thread.jspa?threadID=65649&amp;tstart=0">How many of these situations do we have out there?</a> Back to the title of this post: you can indeed use a space shuttle to go shopping if you want to, however it is important that you know how to drive and park it downtown.</p>
<p align="justify">On a more serious note and question, how many of these &#8220;remaining&#8221; customers are using AWS because &#8220;<em>it&#8217;s scalable, elastic, PayGo, optimized&#8221;</em>&#8230; and how many are using AWS because <em>&#8220;oh, is there anything else?!?&#8221;</em>?</p>
<p align="justify">I am really just wondering.</p>
<p align="justify">Massimo.</p>
]]></content:encoded>
			<wfw:commentRss>http://it20.info/2012/12/aws-a-space-shuttle-to-go-shopping/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>vCloud, OpenStack, Pets and Cattle</title>
		<link>http://it20.info/2012/12/vcloud-openstack-pets-and-cattle/</link>
		<comments>http://it20.info/2012/12/vcloud-openstack-pets-and-cattle/#comments</comments>
		<pubDate>Wed, 05 Dec 2012 16:03:33 +0000</pubDate>
		<dc:creator>Massimo</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://it20.info/?p=595</guid>
		<description><![CDATA[<p align="justify">I keep bumping into discussions where people try to compare vCloud (Director) and OpenStack. The last one that caught my attention was an email from a colleague that went like:</p> <p align="justify">&#8220;We are in a competitive situation with OpenStack. Customer is currently using Amazon EC2&#8230;.. They are looking at moving from Amazon to VMware <span style="color:#777"> . . . &#8594; Read More: <a href="http://it20.info/2012/12/vcloud-openstack-pets-and-cattle/">vCloud, OpenStack, Pets and Cattle</a></span>]]></description>
				<content:encoded><![CDATA[<p align="justify">I keep bumping into discussions where people try to compare vCloud (Director) and OpenStack. The last one that caught my attention was an email from a colleague that went like:</p>
<p align="justify"><em>&#8220;We are in a competitive situation with OpenStack. Customer is currently using Amazon EC2&#8230;..  They are looking at moving from Amazon to VMware due to outages killing revenue for their customers. They are also looking at moving to OpenStack internally&#8221;</em>.</p>
<p align="justify">I am not sure if this customer intends to deploy vCloud Director and OpenStack side by side. If that&#8217;s the case I think there may be (potentially) good reasons.</p>
<p align="justify">If this customer is trying to figure out whether to use one OR the other&#8230;I *think* chances are that either they misunderstood what vCloud Director does or they misunderstood what OpenStack does. May be I&#8217;m missing something but, to me, it&#8217;s like comparing apples to oranges. And note that, by that, I am not suggesting apples are better than oranges or viceversa. They are different <span style="text-decoration: line-through;">fruits</span> tools with different flavors.</p>
<p align="justify">I&#8217;ll try to be brief (yeah, sure).</p>
<p align="justify">OpenStack can be seen as an open source incarnation of the Amazon (AWS) cloud model. vCloud Director is a similar software (albeit not open source) that implements a different cloud model. Those software can be used to build either public or private clouds.</p>
<p align="justify">Tangentially, please make sure you understand that <a href="http://blogs.gartner.com/lydia_leong/2012/11/30/having-cloud-enabled-technology-having-a-cloud/"> Having cloud-enabled technology != Having a cloud</a>. It is indeed fairly important as <a href="https://twitter.com/cloudpundit">Lydia</a> points out.</p>
<p align="justify">The AWS / OpenStack model can be seen as a forward leaning model whereas vCloud Director can be seen as a backward leaning model. The former model aim at creating a brand new experience in how applications are engineered, developed and operated. The latter model aim at creating a cloud-like experience for workloads that have been engineered and developed in a more traditional &#8220;enterprise&#8221; way.</p>
<p align="justify">I discussed these different models in the past in a couple of blog posts. The first one is <a href="http://it20.info/2011/04/tcp-clouds-udp-clouds-design-for-fail-and-aws/"> TCP-clouds, UDP-clouds, “design for fail” and AWS</a> and the second one is <a href="http://it20.info/2012/02/the-cloud-magic-rectangle-tm/">The Cloud Magic Rectangle ™</a>. It must also be said that <em>forward</em> and <em>backward</em> leaning are very subjective concepts as I have tried to argue in another blog post: <a href="http://it20.info/2012/09/cloud-and-the-three-it-geographies-silicon-valley-us-and-rest-of-the-world/"> Cloud and the Three IT Geographies (Silicon Valley, US and Rest of the World)</a>.</p>
<p align="justify">While I tried to keep those discussions at the very high level, those are still very IT oriented discussions, including the examples and the parallels I used to describe the different cloud models (e.g.. UDP Vs TCP).</p>
<p align="justify">That&#8217;s why I was floored when <a href="http://www.slideshare.net/gmccance/cern-data-centre-evolution">Gavin McCance from CERN</a> turned this into something that is a lot easier to understand with an awesome non-IT parallel:</p>
<p><img style="border: 0px none;" src="http://www.it20.info/misc/pictures/vCloudOpenStackPetsandCattle1.JPG" alt="" width="689" height="520" border="0" /></p>
<p align="justify">He nailed it. Before you evaluate whether you want to use vCloud Director or OpenStack (or any other tool), you first need to understand whether you are dealing with &#8220;pets&#8221; or &#8220;cattle&#8221;. Once the cloud provider understands what type of service must be made available to cloud consumers, the choice of the tool becomes natural. If you have to deal with pets then vCloud Director (or similar technologies) is the natural choice; if you have to deal with cattle then OpenStack (or similar technologies) is the natural choice.</p>
<p align="justify">That is why I smile when I incidentally bump into CSPs wannabe that are trying to implement OpenStack advertising that they don&#8217;t use a SAN (but rather local storage) &#8220;<em>because that&#8217;s how you do things in the cloud</em>&#8220;. Then they claim to be <em>resilient</em> because they have redundant power supplies, redundant network cards and disks configured in Raid5 on those standalone servers. This is, IMHO, a typical example of an organization that needed to implement a cloud model to look after &#8220;pets&#8221;&#8230;. and ended up to chose the wrong tool (in this particular case).</p>
<p align="justify">So how do you know if you are dealing with pets or cattle? The blog posts I linked above will give you a good idea of where to draw the line between one model and the other. If you don&#8217;t have time to read them (or if you just couldn&#8217;t bother) there is a shortcut, and it&#8217;s a fairly quick one. Question: can I come in into your datacenter and, in the middle of the very critical business hours, randomly kill 10 of your critical instances while you smoke a cigarette outside?</p>
<p align="justify">If the answer is yes, because what I want to do would go unnoticed, you are dealing with cattle.</p>
<p align="justify">If the answer is no, because what I want to do would create a major turbulence in your end-user experience, you are dealing with pets.</p>
<p align="justify">Assuming you now have clear the difference between the two models, you can choose the proper technology to build the cloud you need.</p>
<p align="justify">No-brainer, no overlap.  Two tools for two models.</p>
<p align="justify">Massimo.</p>
]]></content:encoded>
			<wfw:commentRss>http://it20.info/2012/12/vcloud-openstack-pets-and-cattle/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>VMware, Openstack, Nicira and the T Theory</title>
		<link>http://it20.info/2012/11/vmware-openstack-nicira-and-the-t-theory/</link>
		<comments>http://it20.info/2012/11/vmware-openstack-nicira-and-the-t-theory/#comments</comments>
		<pubDate>Thu, 15 Nov 2012 17:28:25 +0000</pubDate>
		<dc:creator>Massimo</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://it20.info/?p=589</guid>
		<description><![CDATA[<p align="justify">There has been some turmoil lately in the industry when VMware announced that wanted to join the OpenStack community. In the last few days Martin Casado (Nicira co-founder and now Chief Network Architect at VMware) was quoted in a few interviews for the plans VMware has to integrate, evolve and position the Nicira technology. <span style="color:#777"> . . . &#8594; Read More: <a href="http://it20.info/2012/11/vmware-openstack-nicira-and-the-t-theory/">VMware, Openstack, Nicira and the T Theory</a></span>]]></description>
				<content:encoded><![CDATA[<p align="justify">There has been some <a href="http://www.mirantis.com/blog/openstack-accepting-vmware-was-a-mistake/"> turmoil lately in the industry when VMware announced that wanted to join the OpenStack community</a>. In the last few days Martin Casado (Nicira co-founder and now Chief Network Architect at VMware) was quoted in a few interviews for the plans VMware has to integrate, evolve and position the Nicira technology. You can read more about it <a href="http://searchnetworking.techtarget.com/news/2240171009/Martin-Casado-on-the-future-of-VMware-Nicira-technology"> here</a> and <a href="http://searchnetworking.techtarget.com/news/2240171008/Martin-Casado-on-OpenStack-Quantum-and-whats-next-in-cloud-networking"> here.</a></p>
<p align="justify">I guess we can summarize the bulk of those interviews in the following quote from one of the articles: <em>&#8220;Specifically, Casado says we can expect a hypervisor-agnostic network virtualization platform that could be marketed as an independent product.&#8221;</em></p>
<p align="justify">This obviously brings up the tedious topic of&#8230; <em><strong>can a platform vendor really become platform agnostic?</strong></em> More on this later.</p>
<p align="justify">This goes back to a Nicira slide I built a few months, before VMware bought Nicira. This is the slide I am referring to:</p>
<p align="justify"><img src="http://www.it20.info/misc/pictures/VMwareOpenstackNiciraandtheTtheory1.jpg" alt="" width="738" height="560" border="0" /></p>
<p align="justify">Note <a href="http://it20.info/2012/02/will-we-need-a-c-for-nicira-god-forbid/">I was using that slide for a slightly different argument</a> (which, in turns, was going back to my <a href="http://it20.info/2012/02/the-abc-of-lock-in/">ABC of Lock-In</a> theory). However what this picture was (implicitly) conveying is that, in order to be in a particular spot of the infrastructure, you do need to be agnostic to the stuff that surrounds you.</p>
<p align="justify">vSphere, in the context of a server hypervisor, is agnostic to the hardware and to the Guest OS it supports. Similarly, the Nicira NVP needs to be agnostic to the hardware and hypervisors it supports. Or, to steal Martin&#8217;s specific way to put it: <a href="http://searchnetworking.techtarget.com/news/2240171009/Martin-Casado-on-the-future-of-VMware-Nicira-technology"> &#8220;&#8230;networking is the one thing that you can&#8217;t be a unilateralist with. The network touches everything. It&#8217;s the network.&#8221;</a></p>
<p align="justify">By the way, in the slide above, you can picture vCloud Director, OpenStack (or whatever) instead of vSphere, Xen, KVM (or whatever). Same concept.</p>
<p align="justify">Now, let&#8217;s go back to the original question: <em><strong>can a platform vendor (e.g. VMware) really become platform (e.g. vSphere and vCloud) agnostic?</strong></em></p>
<p align="justify">Well, after having introduced the theory of <a href="http://it20.info/2012/02/the-abc-of-lock-in/">The ABC of Lock-In</a> and <a href="http://it20.info/2012/02/the-cloud-magic-rectangle-tm/">The Cloud Magic Rectangle</a> I am introducing today, in this post, the theory of the T (or the T theory).</p>
<p align="justify">The theory is really very simple and it goes like: <em><strong>it depends where the money flow</strong></em>.</p>
<p align="justify">This is how I picture in my head a vendor with a (traditional) <em>platform</em> play and a (new) <em>cross platform</em> play:</p>
<p align="justify"><img src="http://www.it20.info/misc/pictures/VMwareOpenstackNiciraandtheTtheory2.jpg" alt="" width="600" height="455" border="0" /></p>
<p align="justify">The T theory continues by saying: <strong>if the vendor is able to make the money in the cross platform play, then the same vendor is willing to concede third party platforms more love (for lack of a better IT word). On the other hand, if the vendor is not able to monetize on the cross platform play, then the same vendor is NOT willing to concede third party platforms more love (and will try to drive and funnel their customers towards the platform play where they can still make money).</strong></p>
<p align="justify">Let&#8217;s try to make three examples of the T theory.</p>
<p align="justify"><img src="http://www.it20.info/misc/pictures/VMwareOpenstackNiciraandtheTtheory3.jpg" alt="" width="600" height="455" border="0" /></p>
<p align="justify"><img src="http://www.it20.info/misc/pictures/VMwareOpenstackNiciraandtheTtheory4.jpg" alt="" width="600" height="455" border="0" /></p>
<p align="justify"><img src="http://www.it20.info/misc/pictures/VMwareOpenstackNiciraandtheTtheory5.jpg" alt="" width="600" height="455" border="0" /></p>
<p align="justify">Did the cross platform play work for IBM? I would say so. IBM is making a lot more profits on the Tivoli product line than it is making on AIX (the mainframe is a tricky story) so they got well past this dilemma of potentially compromising their own platform play by having a cross platform play.</p>
<p align="justify">Will the cross platform play work for VMware? Who knows. What we know is that VMware said that there are (a lot of) money to be made in that space though. This doesn&#8217;t mean that VMware will push to compromise the platform business with this strategy. However this does tell that, if VMware is able to make money on the cross platform play, potentially compromising the platform play (by working with third parties platform plays) will be worth it. You can go a step ahead and make a parallel between Nicira NVP and DynamicOps but let&#8217;s not complicate the discussion too much as there are different nuances there.</p>
<p align="justify">Will the cross platform play work for Microsoft? Who knows. What we know is that Microsoft is giving away that piece, arguable a core technology of the data center of the future,  for free. Admittedly I don&#8217;t have an MBA but to me this means either one of two things: they will try to move people to the platform (where they are still making money) or they are going to charge for that piece (if they want to be in the true platform agnostic business).</p>
<p align="justify">At least this is what the T theory says. I realize, however, there are gray areas in it. I am not going to call out all possible nuances to avoid boring you more than I have done already.</p>
<p align="justify">Massimo.</p>
]]></content:encoded>
			<wfw:commentRss>http://it20.info/2012/11/vmware-openstack-nicira-and-the-t-theory/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>vCloud Director 5.1(.1) Changes in Resource Entitlements (Updated)</title>
		<link>http://it20.info/2012/10/vcloud-director-5-1-1-changes-in-resource-entitlements/</link>
		<comments>http://it20.info/2012/10/vcloud-director-5-1-1-changes-in-resource-entitlements/#comments</comments>
		<pubDate>Wed, 31 Oct 2012 09:45:30 +0000</pubDate>
		<dc:creator>Massimo</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://it20.info/?p=577</guid>
		<description><![CDATA[<p align="justify">vCloud Director 5.1 has introduced a fair amount of new functionalities. One of those is a change in the resource allocation models. I have tried to capture those changes from vCloud Director 1.5 to 5.1 in a couple of tables. For those of you that are new to vCloud Director it may be a <span style="color:#777"> . . . &#8594; Read More: <a href="http://it20.info/2012/10/vcloud-director-5-1-1-changes-in-resource-entitlements/">vCloud Director 5.1(.1) Changes in Resource Entitlements (Updated)</a></span>]]></description>
				<content:encoded><![CDATA[<p align="justify">vCloud Director 5.1 has introduced a fair amount of new functionalities. One of those is a change in the resource allocation models. I have tried to capture those changes from vCloud Director 1.5 to 5.1 in a couple of tables. For those of you that are new to vCloud Director it may be a good idea to get a background and a complete explanation of how the various resource allocation models work. <a href="http://www.vmware.com/files/pdf/techpaper/vCloud_Director_Resource_Allocation-USLET.pdf"> This whitepaper on vCloud Director 1.5</a> is a good source of information. Oh, at the end of this doc I added an <em>allocation model selection criteria section</em> (sort of) to try to make sense of all this <span style="text-decoration: line-through;">complexity</span> richness.</p>
<p align="justify">Kidding aside, it will sound complex, but this is the &#8220;tax&#8221; you need to pay for being able to provide (as a cloud provider) and consume (as a cloud consumer) <a href="http://it20.info/2010/11/virtualization-sandbox-vs-cloud-sandbox-from-an-end-user-perspective/"> virtual data centers instead of virtual machines</a>. After all, flying a Boeing 747 is inherently more difficult than driving a Fiat Panda but it really boils down to where you need to go in the end.</p>
<p align="justify">This is a summary of how the three models work with vCloud Director 1.5</p>
<p><img style="border: 0px none;" src="http://www.it20.info/misc/pictures/vCD5.1.1ChangesinResourceEntitlements1.jpg" alt="" width="715" height="455" border="0" /></p>
<p align="justify">This is a summary of how the three models work now with vCloud Director 5.1. The yellow cells represent the changes from the previous version of the stack.</p>
<p><img style="border: 0px none;" src="http://www.it20.info/misc/pictures/vCD5.1.1ChangesinResourceEntitlements2.jpg" alt="" width="715" height="455" border="0" /></p>
<p align="justify">So let&#8217;s start with the easy part. No change at all for the <em><strong>Reservation Pool </strong></em>model. Easy. Done.</p>
<p align="justify">There is only one small change in the <em><strong>PAYG </strong></em> model. Now the cloud administrator can create an Org vDC that is capped not only by the # of VMs but also by CPU and memory resources limits. This is cool because many customers (and Service Providers) liked the PAYG model but they needed to cap the tenant with something that was more sophisticated than the mere absolute numbers of VMs. vCloud Director 5.1 now delivers that capability to cap the tenant on a resources consumption basis. This is of course an optional and additional parameter that doesn&#8217;t change the original PAYG model behavior in vCloud Director 1.5.</p>
<p align="justify">As you can see most of the changes (and dramas) come with the <em><strong>Allocation Pool </strong></em>model. This has generated some reactions from our customers (and Service Providers). More on this later.</p>
<p align="justify"><strong>Change or not to change, that is the problem</strong></p>
<p align="justify">The vast number of changes have been introduced to support elasticity for the Allocation Pool model. For those of you new to this concept, VMware defines an Org vDC <em>elastic</em> when it can draw resources from all clusters that comprise a Provider vDC. Alternatively, when the Org vDC can only draw resources from the primary (or only) cluster in the Provider vDC it is defined, guess what, <em>non elastic</em>.</p>
<p align="justify">In an elastic Org vDC scenario, every time vCloud Director deploys or deletes a VM, it increases or decreases the size of the Resource Pools (from now on RPs) dynamically. And it can do this across different clusters so that the sum of all of those RPs dedicated to the tenant is reconciled at the vCloud Director level which now owns admission control for all of those VMs.</p>
<p align="justify">The good news is that, in vCloud Director 5.1, Org vDCs created with the Allocation Pool model are elastic. The bad news is that this requires some changes in the behavior of this model.</p>
<p align="justify">With vCloud Director 1.5, admission control and resource governance for the Allocation Pool model was delegated largely (but yet not completely) to vSphere. The drawback was that vCloud Director had to pre-create upfront a RP that mapped statically the characteristics of the Org vDC the cloud administrator was creating. And the only way to do this was to create a single, fixed size RP in the primary cluster of the Provider vDC. In other words: no elasticity.</p>
<p align="justify">What effect does this have on VMs deployed with vCloud Director 1.5 in an Org vDC created with the Allocation Pool model? vCloud Director 1.5 would set a reservation and limit on the VM being deployed based on the % of guaranteed capacity defined when the cloud administrator created the Org vDC. For example,  if I have a 10GB of memory Org vDC with 50% guaranteed capacity and I deploy a 4GB VM, vCloud Director will set a 4GB limit on the VM and a 2GB reservation (50% of 4GB).</p>
<p align="justify">However, the way vCloud Director 1.5 managed CPU resources was a total different story. vCloud Director 1.5 didn&#8217;t set any reservation / limit value on the vCPU deployed in the Org vDC created with the Allocation Pool model. The cloud consumer could deploy infinite vCPUs (well, ok..) and all of them would fight for the capacity of the fixed size RP backing the Org vDC.</p>
<p align="justify">vCloud Director 5.1 moves this on-the-fly resource manipulation at the RP level rather than at the VM level. This allows vCloud Director to treat RPs as dynamic entities (without having to create them upfront with a fixed size) and spread those RPs across many cluster.</p>
<p align="justify">Wait a moment, it&#8217;s easy to move that memory manipulation from the VMs to the RPs. There is still one piece missing though: how can vCloud Director implement the same RP dynamism with CPU resources? How can vCloud Director 5.1 expand and shrink CPU capacity in the RPs as VMs are deployed and deleted? Enter the <em> vCPU speed</em> parameter.</p>
<p align="justify">This new parameter available in the Allocation model wizard in vCloud Director 5.1 allows the system to apply limits and reservations for the CPU subsystem at the RP level. Let&#8217;s take this example: a cloud administrator sets a vCPU speed of 2Ghz when creating an Org vDC. The Org vDC has 10GHz worth of CPU capacity with a 50% guarantee. The result of this is that, when the user deploys a VM with one vCPU, the system will increment the limit of the RP (or one of the RPs in an elastic Org vDC scenario) of 2Ghz and will increment the reservation of  the RP of 1Ghz.</p>
<p align="justify">That&#8217;s how vCloud Director 5.1 achieves CPU elasticity and dynamicity with the Allocation Pool model through the vCPU speed parameter.</p>
<p align="justify">This is all good but customers and Service Providers started to provide feedbacks. Essentially it boils down to two things:</p>
<ul>
<li>
<p align="justify">if you set a vCPU value too high you&#8217;ll end up deploying a limited number of VMs / vCPUs before the system will reach the CPU resources cap of your Org vDC. In the example above (10Ghz allocated, 50% reserved, vCPU=2Ghz) it would be 5 vCPUs.</p>
</li>
<li>
<p align="justify">if you set a vCPU value too low you&#8217;ll workaround the problem above but you will experience low performance initially for the first VMs you deploy. In fact, at steady state, all the many VMs will compete for the same &#8220;big&#8221; capacity in the Org vDC, but initially that capacity will be very limited as it gets incremented from 0 as VMs are added.</p>
</li>
</ul>
<p align="justify">If, for example, the vCPU speed is set at 200Mhz, the first three VMs will deploy in a RP that has a 600Mhz limit (200Mhz x3) and a 300Mhz reservation (50% of 600Mhz). Even if these three VMs will peak at different times (which is likely) each of their individual vCPUs won&#8217;t be able to use all the nominal capacity of the Org vDC (10Ghz). As the VMs being deployed increase, the perceived behavior will get closer and closer to what it was with vCloud Director 1.5 (that is all vCPUs fighting for a big bucket of resources).</p>
<p align="justify">Ironically the &#8220;problem&#8221; mentioned in the first bullet above existed already for the memory subsystem with vCloud Director 1.5. In other words the cloud consumer couldn&#8217;t oversubscribe memory. As cloud consumers added VMs, those VMs memory reservations and limits would count against the RP reservation and limit backing the Org vDC up to a point where the system would refuse to deploy more VMs. Apparently the consensus seems to be that this is ok for memory but it&#8217;s not ok for CPU. For the CPU subsystems it appears that setting a hard and predictable limit on number of vCPUs that can be deployed by a tenant is not acceptable. And all this regardless of the fact that those &#8220;infinite&#8221; vCPUs were deployed in a bucket that had limited and finite capacity anyway. Not sure how much of technical and how much of psychological there is in this discussion.</p>
<p align="justify">For example, I think this CPU enforcement is a good way to set an average &#8220;vCPU to core&#8221; ratio so that the tenant doesn&#8217;t deploy a number of vCPUs that highly exceed the ratio that that the cloud administrator has determined to be the most optimal. Consider the example below that I am stealing from an internal discussion (not my wording but I like the way it is explained):</p>
<p align="justify"><em>Assume that a tenant wants to purchase 100 GHz CPU and 100 GB memory guaranteed in the cloud with an option to burst 4X opportunistically.<br />
We need an allocation pool Org VDC of 100 GHz of CPU reservation and 100 GB of memory reservation.<br />
If the hardware backing the Provider VDC has a core frequency of 1 GHz (say), you can set the vCPU to GHz mapping to 1 GHz.<br />
Next up, you will need an estimate of how much CPU over subscription you / customer want to do. Assuming 4:1 over subscription ( = 4, same as 4X burst), you can allocate up to 400 VMs (reservation * over subscription / vCPU) with 1 vCPU from this Org VDC. This requires an allocation of 400 GHz.<br />
So, to configure the allocation pool Org VDC, you would set it up with an allocation of 400 GHz and 25% guarantee so that you get 100 GHz CPU reserved. Setting vCPU = 1 GHz will allow all the 1 vCPU VMs to consume up to 1 GHz (core frequency) and a user can provision up to 400 VMs in this Org VDC.</em></p>
<p align="justify">I think this makes sense. I like it. But the fact is that a few customers started to complain vocally about this new CPU resource management behavior in vCloud 5.1.</p>
<p align="justify">Enter vCloud Director 5.1.1. VMware heard this feedback loud and clear and vCloud Director 5.1.1 introduces a slight change that allows a cloud administrator to, possibly, revert the Allocation Pool model experience to a behavior that is similar to that found in vCloud Director 1.5. In particular, there is only one change that vCloud Director 5.1.1 introduces and that is:</p>
<ul>
<li>
<p align="justify">vCloud Director creates the RP(s) in the cluster(s) with the limit set <span style="text-decoration: underline;">upfront</span> based on the Org vDC allocated size.</p>
</li>
</ul>
<p align="justify">In essence, by pre-setting the RP limit to the nominal size of the Org vDC, the cloud administrator can now set a low vCPU speed value (as this will not be used to increment the RP limit at VM deployment time because it&#8217;s already provisioned upfront). What this mean is that the very first VM will find immediately the big bucket of CPU resources it is supposed to draw from.</p>
<p align="justify">Note, however, that vCloud Director keeps incrementing the reservation of the RP(s) at VM deployment time based on the vCPU speed setting and the guaranteed % specified in the Org vDC creation wizard. This hasn&#8217;t change from vCloud Director 5.1. The other thing that hasn&#8217;t changed (based on my tests) is that the vCPU speed cannot be set below 0.26Ghz (or 260Mhz) so when I say &#8220;a low vCPU speed value&#8221;, 0.26Ghz is the lowest it could get.</p>
<p align="justify">This means that reservation of CPU cycles of this bucket is still dynamic and directly proportional to the number of VMs deployed and calculated  from the vCPU speed parameter as well as the % of reserved CPU resources (as it&#8217;s in vCloud Director 5.1).  This is deemed acceptable because the assumption is that most clusters are memory constrained. Not reserving CPU at the pool level isn&#8217;t going to be a big problem (in most circumstances).</p>
<p align="justify">It is important to pay attention to the details introduced in 5.1.1. Because a RP with the total allocated capacity is created on all clusters backing a Provider vDC, this could, potentially, lead the cloud administrator to provision more resources to the tenant than what the tenant subscribed to. For example, a 10 GHz Org vDC based on the Allocation Pool model, with vCloud Director 5.1.1 would result in &#8220;n&#8221; RPs with a 10Ghz limit where &#8220;n&#8221; is the number of clusters backing the Provider vDC.</p>
<p align="justify">If you are using the vCPU speed  parameter as it is intended to be used with the new vCloud Director 5.1 Allocation Pool model (see example above), the above behavior isn&#8217;t relevant. In fact all tenants will have a bigger bucket of shared CPU capacity to draw from but will still be limited in the number of VMs they can deploy and, more importantly, will still be provided with the same reserved CPU capacity as it was with vCloud Director 5.1.</p>
<p align="justify">In vCloud Director 5.1.1, unwanted overprovisioning of resources may arise when both the below circumstances are true:</p>
<ul>
<li>
<p align="justify">the Provider vDC is backed by multiple clusters to gain elasticity</p>
</li>
<li>
<p align="justify">the cloud provider set a very low vCPU speed parameter to bypass the limit in number of VMs that can be deployed</p>
</li>
</ul>
<p align="justify">Under these circumstances, the tenants can indeed deploy a very high number of VMs (given that the number of VMs that can be deployed will tend to infinite when the vCPU speed tends to zero). This has the side effect that tenants will have access to a large bucket of overprovisioned resources due to the fact that a RP with the allocation limit is set on every cluster that is part of the Provider vDC. The second side effect is that reservation per each tenant is set to a low number (given it is still proportional to the vCPU speed and the number of VMs deployed) thus leaving different tenants with a potential high number of VMs all fighting for shared resources without proper reservations.</p>
<p align="justify">VMware recognizes this is not ideal but the assumption is that many customers and SPs that are using vCloud Director 1.5 are using Provider vDCs backed by a single cluster so the change introduced with vCloud Director 5.1.1 will allow them to upgrade transparently to this release and keep a vCloud Director 1.5-like behavior for the Allocation Pool model. In the future you may see additional flexibility in how to leverage these different behaviors.</p>
<p align="justify">This is pretty much about it. And trust me, I gave you the simplified story. There are a lot more details I am not getting into in the interest of time.</p>
<p align="justify"><strong>OK but what does all this mean for me? </strong></p>
<p align="justify">As I am sure you are more confused than when you started reading this post&#8230; perhaps it makes sense to put a stake in the ground and underline advantages and disadvantages of the three models with vCloud Director 5.1.</p>
<p align="justify">The <strong>PAYG</strong> model is the most simplistic of the three. This model allows the tenant to scale without pre-configured limits. It does also allow cloud consumers to scale without any contractual agreement on resources. Sophisticated capping mechanisms now allows the cloud administrator to limit a tenant based on number of VMs, CPU and memory resources. One thing to notice is that all VMs in a PAYG are standalone entities that have specific limits and guarantees that can&#8217;t be shared with the other VMs in the same tenant. So if a VM is not using all the reserved capacity available to it, that capacity cannot be used by other VMs in the tenant that are demanding more resources. The other typical disadvantage of this model is that it&#8217;s based on a first-come-first-served basis. Given the cloud consumer didn&#8217;t subscribe to allocated or reserved resources, the system may refuse to deploy VMs at any time depending on the status of resource consumption on the Provider vDC.</p>
<p align="justify">The <strong>Allocation Pool</strong> model is interesting because it allows the cloud administrator (but not the cloud consumer) to oversubscribe resources. The level of oversubscription is set by the cloud administrator at the time the Org vDC is created and the cloud consumer cannot alter those values. The most evident advantage of this model is that the cloud consumer has a set of allocated and reserved resources that has been subscribed (typically for a month). The other advantage of this model is that all VMs in the same Org vDC can share CPU and memory resources inside a bucket of resources that is dedicated (yet oversubscribed) to the tenant. The disadvantage of this model is that the cloud consumer can deploy a finite number of VMs before their total resources hits the limit of the Org vDC.</p>
<p align="justify">The <strong>Reservation Pool </strong>model is radically different from the above two. In this model a Resource Pool is completely dedicated and committed to the cloud consumer. This means that all oversubscription mechanisms are delegated to the tenant thus giving to the cloud consumer the flexibility to choose the oversubscription ratio of resources. The disadvantage of this model is that the cloud administrator cannot benefit from oversubscribing resources at Org vDC instantiation, given the allocated resources to the tenants are 100% reserved. This means that the cloud consumer will have to absorb the cost of this premium service from the cloud provider. Note that the Reservation Pool model (with vCloud Director 5.1) is the only one that doesn&#8217;t support elasticity thus further limiting the cloud provider flexibility and architectural choices.</p>
<p align="justify">Massimo.</p>
<p align="justify"><span style="color: #ff0000;">Update: On November 6th this post went through a heavy update. The previous version of the post included some misleading and erroneous information on how vCloud Director 5.1.1 works. </span></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://it20.info/2012/10/vcloud-director-5-1-1-changes-in-resource-entitlements/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Cloud and the Three IT Geographies (Silicon Valley, US and Rest of the World)</title>
		<link>http://it20.info/2012/09/cloud-and-the-three-it-geographies-silicon-valley-us-and-rest-of-the-world/</link>
		<comments>http://it20.info/2012/09/cloud-and-the-three-it-geographies-silicon-valley-us-and-rest-of-the-world/#comments</comments>
		<pubDate>Wed, 05 Sep 2012 15:12:01 +0000</pubDate>
		<dc:creator>Massimo</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://it20.info/?p=562</guid>
		<description><![CDATA[<p align="justify">In the last 3 years I spent most of my time advocating that the cloud world is marching at a (very) different pace based on where you are and who you are.</p> <p align="justify">If you are a professor consultant working with the like of Google, Facebook and such your vision of the world may <span style="color:#777"> . . . &#8594; Read More: <a href="http://it20.info/2012/09/cloud-and-the-three-it-geographies-silicon-valley-us-and-rest-of-the-world/">Cloud and the Three IT Geographies (Silicon Valley, US and Rest of the World)</a></span>]]></description>
				<content:encoded><![CDATA[<p align="justify">In the last 3 years I spent most of my time advocating that the cloud world is marching at a (very) different pace based on where you are and who you are.</p>
<p align="justify">If you are a <span style="text-decoration: line-through;">professor</span> consultant working with the like of Google, Facebook and such your vision of the world may be a bit skewed compared to &#8220;the average&#8221;. I am sorry if I shocked you.</p>
<p align="justify">Similarly, if you consult for a big manufacturing company in Italy you may be skewed as well (but in a different way and for different reasons).</p>
<p align="justify">The former consultant may be bored about promoting Amazon as &#8220;the next big thing&#8221; and may already be looking for &#8220;what&#8217;s coming next&#8221;. The latter may think that the coolest thing on earth is the next version of the AS/400. I am sure you appreciate the 20 years disconnect between the two.</p>
<p align="justify">Back in January I visited Palo Alto and I was out for dinner with <a href="https://twitter.com/mathewlodge">Mathew Lodge</a> and <a href="https://twitter.com/wattersjames">James Watters</a> when I remember telling them that &#8220;this [Silicon Valley] is not the real world&#8221;. From there I started building my theory that, in IT and specifically with &#8220;cloud&#8221; (whatever that means), there are really three geographies in the world and they don&#8217;t map to the traditional <em>Americas</em>, <em>EMEA</em> and <em>APAC</em>.</p>
<p align="justify">They are instead: &#8220;<em>The Valley</em>&#8220;, &#8220;<em>US</em>&#8221; and &#8220;<em>the Rest of the World</em>&#8220;. Graphically this means:</p>
<p><img src="http://www.it20.info/misc/pictures/CloudandthethreeITGeographies1.JPG" alt="" width="633" height="436" border="0" /></p>
<p align="justify">Note: I had to hurry up writing this post (that I had drafted a long time ago) because <a href="https://twitter.com/RFFlores">Rodrigo</a> was starting to use the same parlance with his <a href="http://www.itbusinessedge.com/cm/community/features/guestopinions/blog/the-road-to-paas-understanding-your-post-iaas-options/?cs=50822"> Silicon Valley PaaS</a> and I didn&#8217;t want to be left behind. <a href="https://twitter.com/mthiele10">Mark Thiele</a> also has <a href="http://gigaom.com/cloud/the-tale-of-two-clouds-what-is-the-future-of-cloud-adoption-in-it/"> a good piece on this subject</a>.</p>
<p align="justify">If you think this may be a joke I think one good metric to measure the level of innovation in the world is to show where cloud is actually being used (rather than being talked). So I am going to use an <a href="http://www.newvem.com/infographic-demystifying-amazon-web-services-2/"> infographic where the AWS resources distribution</a> are nicely summarized:</p>
<p><img src="http://www.it20.info/misc/pictures/CloudandthethreeITGeographies2.JPG" alt="" width="693" height="417" border="0" /></p>
<p align="justify">Now, regardless how big AWS is in absolute terms, it&#8217;s interesting to notice the distribution of its racks across the globe. Quick (rounded) math shows:</p>
<p align="justify">US: (5030 + 41 + 630) / 7100 =  roughly 80%</p>
<p align="justify">EMEA: 814 / 7100 = roughly 11%</p>
<p align="justify">APAC: (314 + 246) / 7100 = roughly 8%</p>
<p align="justify">(South America would account for the remaining rounded 1%&#8230; never mind, it&#8217;s irrelevant).</p>
<p align="justify">Now one would need to cross data between # of businesses across the world, their revenues, how much they spend in IT and the distribution of the servers in the infographic above. I am not going to do such a detail analysis. It is however pretty clear that the world is marching at a very different innovation pace. If you discount exceptions like (perhaps) London or Singapore, <strong>the US is leading at a speed that seems to be roughly 8x that of the other two geographies</strong> (i.e. the generic <em>rest of the world</em>).</p>
<p align="justify">Why is that? One can only speculate but wouldn&#8217;t fall far from truth: innovative culture, inertia, money, country laws and regulations. You name them.</p>
<p align="justify">Virtualization was an easy play for everyone. There wasn&#8217;t a real change to the IT processes: a sysadmin used to deploy a physical box, now he/she can deploy a virtual machine instead. It changed the world but no big deal per se. Totally transparent to everyone except the sysadmin. Also the decision to go down this path was typically ROI based (and with virtualization you&#8217;d typically have a very tangible short term ROI).</p>
<p align="justify">With cloud everything changes. Things like self-service expose the change to a much wider audience other than the sysadmin. Also, going down the cloud path isn&#8217;t anymore a &#8220;cost reduction&#8221; thing but rather a &#8220;business alignment thing&#8221;. Especially in a tough economy, many are ready to spend money to &#8220;save money&#8221; (ROI)&#8230; but you really need to be bought into something (or very enlightened) before spending money to be &#8220;more agile&#8221;&#8230;</p>
<p align="justify">Not to mention the public cloud dimension (which is what Amazon is all about) Vs. the more traditional way of running workloads inside the datacenter. Do we want to talk about that?</p>
<p align="justify">Long story short, the US are just much better prepared (IMO at least) to a change like this and have a much more innovative attitude compared to the rest of the world (on average at least).</p>
<p align="justify">In my new &#8220;IT Geographies layout&#8221; I however specifically call out Silicon Valley. Not because of the number of particularly innovative deployments (after all the area is full of very innovative vendors rather than buyers) but to make the point that there the pace of the cloud innovation march is just insane. There is where most of the IT <span style="text-decoration: line-through;">professors</span> consultants and vendors keep arguing that <em>&#8220;if you don&#8217;t design your data centers like Google you are a dumb&#8221;</em>.</p>
<p align="justify">My dear friends in <em>the rest of the world</em>&#8230; fear not, they don&#8217;t know what the real world looks like. They don&#8217;t understand what&#8217;s happening on this planet, they live in their little IT paradise.. In particular:</p>
<ul>
<li>
<p align="justify">They have no clue that, in the rest of the world, big insurance companies are still using the Novell client on their 5 years old Windows PCs (true story, worth mentioning that not only the product doesn&#8217;t exist anymore, but the vendor as a whole went belly up).</p>
</li>
<li>
<p align="justify">They have no clue that, in the rest of the world, big banks are building clouds (or so they call them) because their CEO went to an event where they said cloud was the way to go.. but no one had an idea what it is (true story, classic).</p>
</li>
<li>
<p align="justify">They have no clue that, in the rest of the world, in (other) big banks developers would bring ESXi servers to put under their desks because they think Amazon only sells books (true story, albeit I can only speculate on why they would bring a server from home!).</p>
</li>
<li>
<p align="justify">They have no clue that, in the rest of the world, databases are pretty much all protected by boring OS level failover clusters (mostly on Unix) and not by some fancy distributed database technology (true story, albeit I am sure all will get there sooner or later)</p>
</li>
<li>
<p align="justify">They have no clue that, in the rest of the world, a big telco hires a string of consultants for &#8220;overnight P2V activities&#8221; of their legacy Windows servers (true story, a moment of silence for these consultants please)</p>
</li>
</ul>
<p align="justify">I could go on and on with these (true) nuggets of real world experience but I think you get the point. I am wondering how much of this is true in the US (I am sure not every company there is a zero-legacy organization albeit the attitude is much better).</p>
<p align="justify">I am sorry but it makes me smile when I hear <em>&#8220;oh that is not cloud, that is virtualization 2.0&#8243;</em>. Really? For many, even virtualization 2.0 is very much going to be a 2018 project! Look, seriously, I am convinced that what you are pitching is where we are going. I am totally bought. You just need to accept the fact that what&#8217;s been thought in Silicon Valley in 2010 is probably going to go mainstream on the planet around 2015-2020.</p>
<p align="justify">I always advise my HQ that we clearly need to be ahead of the curve of what&#8217;s going but in doing so we can&#8217;t afford to have our customers lose sight of us if we accelerate too much. Being too <em>ahead</em> of your time is as much of a failure as being too <em>behind</em> of your times.</p>
<p align="justify">By the way, I want to share something with the <span style="text-decoration: line-through;">professors</span> consultants that keep mentioning the war is over and that Amazon is a 1B$ cloud business. I have a tremendous respect for Amazon and for what they are doing and they are obviously extremely well positioned in this battle&#8230; but, just for your information and as a reminder, 1B$ is (more or less) what IBM still makes out of the AS/400 line of business (talking about history). Welcome to the real world folks.</p>
<p align="justify">No, I am sorry, with all respect for Amazon, this battle has just begun IMO.</p>
<p align="justify">Massimo.</p>
<p align="justify"><span style="color: #ff0000;">UPDATE (Sept 6th): There have been some comments below and on Twitter that give me the impression my segmentation was misunderstood. I just want to make clear that Silicon Valley, in the context of this post, is a state of mind and not (just) a physical location. Certainly it’s not a place where the deployments are. My only point in this post was that that there is an innovation theory (Silicon Valley) and then there are two “execution realities” (US and rest of the world). Silicon Valley is years ahead compared to the US execution ability as a whole. And the US execution ability is years ahead of the rest of the world execution ability.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://it20.info/2012/09/cloud-and-the-three-it-geographies-silicon-valley-us-and-rest-of-the-world/feed/</wfw:commentRss>
		<slash:comments>29</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

 Served from: it20.info @ 2013-05-21 06:02:31 by W3 Total Cache -->