<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>DoubleCloud</title>
	
	<link>http://www.doublecloud.org</link>
	<description>A blog for architects and developers on virtualization and cloud computing</description>
	<lastBuildDate>Mon, 30 Aug 2010 05:01:26 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/Doublecloud" /><feedburner:info uri="doublecloud" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>Doublecloud</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>Ruby to Manage and Automate VMware vSphere?</title>
		<link>http://feedproxy.google.com/~r/Doublecloud/~3/bCptjSTGQaU/</link>
		<comments>http://www.doublecloud.org/2010/08/ruby-to-manage-and-automate-vmware-vsphere/#comments</comments>
		<pubDate>Mon, 30 Aug 2010 05:01:26 +0000</pubDate>
		<dc:creator>Steve Jin</dc:creator>
				<category><![CDATA[vSphere API]]></category>
		<category><![CDATA[jRuby]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[vi java api]]></category>

		<guid isPermaLink="false">http://www.doublecloud.org/?p=1361</guid>
		<description><![CDATA[As I mentioned in a previous blog, vSphere(VI) Java API can be used in any JVM languages/frameworks. We have samples in Jython, Groovy, Grail. This weekend I got a sample in JRuby shared by our community member Martin Jackson in the API forum. Thanks Martin!
I think it would be fun to share it with you. [...]]]></description>
			<content:encoded><![CDATA[<p>As I mentioned in <a href="http://www.doublecloud.org/2010/03/using-vsphere-java-api-in-jython-and-other-jvm-languages/">a previous blog</a>, <a href="http://vijava.sf.net">vSphere(VI) Java API</a> can be used in any JVM languages/frameworks. We have samples in <a href="http://www.doublecloud.org/2010/05/two-more-jython-samples-managing-vmware-vsphere/">Jython</a>, <a href="http://www.doublecloud.org/2010/04/tutorial-easy-vmware-development-with-vi-java-api-and-groovy/">Groovy</a>, <a href="http://www.doublecloud.org/2010/05/tutorial-easy-vsphere-web-apps-with-grails-and-the-vi-java-api/">Grail</a>. This weekend I got <a href="http://sourceforge.net/projects/vijava/forums/forum/823527/topic/3826168">a sample in JRuby</a> shared by our community member <a href="http://sourceforge.net/users/actionjack/">Martin Jackson</a> in <a href="http://sourceforge.net/projects/vijava/forums/forum/823527">the API forum</a>. Thanks Martin!</p>
<p>I think it would be fun to share it with you. If you can write Ruby code, you can take advantage of VI Java API for managing and automating vSphere as well. If you have samples leveraging the API to share, I am happy to hear about it.</p>
<p>Now, let us take a look at Martin&#8217;s sample code ported from <a href="http://vijava.svn.sourceforge.net/viewvc/vijava/trunk/src/com/vmware/vim25/mo/samples/HelloVM.java?revision=243&amp;view=markup">a VI Java API sample</a>.<span id="more-1361"></span></p>
<pre class="brush: ruby;">
#  VI Java API Hello using JRuby
require 'java'
require 'dom4j-1.6.1.jar'
require 'vijava2120100824.jar'

# Only using a single class from this package so I'll just import it
import java.net.URL
# Creating ViJava Module so I don't have to import each com.vmware.vim25.mo class individually.
module VIJava
  include_package &quot;com.vmware.vim25.mo&quot;
end

si = VIJava::ServiceInstance.new(URL.new(&quot;https://192.168.1.9/sdk&quot;), &quot;root&quot;, &quot;password&quot;, true)
rootFolder = si.getRootFolder() vms = VIJava::InventoryNavigator.new(rootFolder).searchManagedEntities(&quot;VirtualMachine&quot;)
puts &quot;Hello &quot; + vms[0].getName()

si.getServerConnection().logout()
</pre>
<p><strong>Author:</strong> Steve Jin is the author of <a href="http://amzn.to/97ZyAg">VMware VI and vSphere SDK (Prentice Hall)</a>, creator of <a href="http://vijava.sf.net">VMware vSphere Java API</a>. For future articles, please subscribe to <a href="http://feedburner.google.com/fb/a/mailverify?uri=Doublecloud">Email</a> or <a href="http://www.doublecloud.org/feed">RSS</a>, and follow on <a href="http://www.twitter.com/sjin2008">Twitter</a>.</p>
<h2  class="related_post_title">Related Posts</h2><ul class="related_post"><li><a href="http://www.doublecloud.org/2010/08/announcing-vsphere-java-api-2-1-ga-release/" title="Announcing vSphere Java API 2.1 GA Release">Announcing vSphere Java API 2.1 GA Release</a></li><li><a href="http://www.doublecloud.org/2010/08/manage-lockdown-mode-with-new-api-in-vsphere-4-1/" title="Manage Lockdown Mode with New API in vSphere 4.1">Manage Lockdown Mode with New API in vSphere 4.1</a></li><li><a href="http://www.doublecloud.org/2010/08/how-to-get-esx-version-from-vcenter/" title="How to Get ESX Version from vCenter?">How to Get ESX Version from vCenter?</a></li><li><a href="http://www.doublecloud.org/2010/08/uuid-vs-vsphere/" title="UUID vs. vSphere">UUID vs. vSphere</a></li><li><a href="http://www.doublecloud.org/2010/08/who-created-that-vm-java-version-of-the-winning-script-of-vmware-contest/" title="Who Created That VM: Java Version of the Winning Script of VMware Contest">Who Created That VM: Java Version of the Winning Script of VMware Contest</a></li></ul><img src="http://feeds.feedburner.com/~r/Doublecloud/~4/bCptjSTGQaU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.doublecloud.org/2010/08/ruby-to-manage-and-automate-vmware-vsphere/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.doublecloud.org/2010/08/ruby-to-manage-and-automate-vmware-vsphere/</feedburner:origLink></item>
		<item>
		<title>Eclipse Day at GooglePlex: A Brief Trip Report</title>
		<link>http://feedproxy.google.com/~r/Doublecloud/~3/NhT6Nb6Vfik/</link>
		<comments>http://www.doublecloud.org/2010/08/eclipse-day-at-googleplex-a-brief-trip-report/#comments</comments>
		<pubDate>Fri, 27 Aug 2010 05:48:54 +0000</pubDate>
		<dc:creator>Steve Jin</dc:creator>
				<category><![CDATA[News & Events]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[Git]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[mobile application]]></category>
		<category><![CDATA[RIA]]></category>
		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://www.doublecloud.org/?p=1354</guid>
		<description><![CDATA[I attended Eclipse Day at Google headquarter today. It&#8217;s a great event packed with several great talks.
Mobile application is for sure a hot topic these days. There were several talks on mobile application development like Android Tools for Eclipse by Xavier Ducrohet from Google, Eclipse Sequoyah for Android App Developers by Eric Cloninger from Motorola, [...]]]></description>
			<content:encoded><![CDATA[<p>I attended <a href="http://wiki.eclipse.org/Eclipse_Day_At_Googleplex_2010">Eclipse Day</a> at Google headquarter today. It&#8217;s a great event packed with several great talks.</p>
<p>Mobile application is for sure a hot topic these days. There were several talks on mobile application development like <a href="http://developer.android.com/sdk/eclipse-adt.html">Android Tools for Eclipse</a> by Xavier Ducrohet from Google, <a href="http://www.eclipse.org/sequoyah/">Eclipse Sequoyah</a> for Android App Developers by Eric Cloninger from Motorola, <a href="http://www.eclipse.org/proposals/tmw/">Tools for Mobile Web</a> by Paul Beusterien from Symbian Foundation, and <a href="http://www.eclipse.org/modeling/emf/">EMF</a> for GWT by Ed Merks from Cloudsmith.</p>
<p>While sitting in the talk on Instantiations Eclipse Tools, I learned that Google bought the company 3 weeks ago. I expect Google will soon make WindowsBuilder, a famous WYSIWYG GUI authoring tool, free for GWT users, therefore further drive the adoption of GWT in competition with Flex, SilverLight.<span id="more-1354"></span></p>
<p>Hopefully Google will also make it free to all others like SWT, SWING, RAP, RCP users. Big companies spend millions and billions of dollars on advertising. Google does not advertise by itself, and should spend money instead on free products that are useful to developers. In long term, I think community goodwill is more important than pure advertisement for a company&#8217;s brand recognition.</p>
<p>Another interesting talk is Git and Eclipse by Chris Aniszczyk from Red Hat and Shawn Pearce from Google. It&#8217;s mainly about EGIT plugin which allows you to use Git in Eclipse as CVS and Subversion. Two related projects are <a href="http://eclipse.org/jgit/">JGit</a>, a Java implementation of original C based Git, and <a href="http://code.google.com/p/gerrit/">Gerrit</a> which is &#8220;a web based code review system, facilitating online code reviews for projects using the Git version control system.&#8221; Even you don&#8217;t use Eclipse, you can benefit from JGit and Gerrit.
<p><strong>Author:</strong> Steve Jin is the author of <a href="http://amzn.to/97ZyAg">VMware VI and vSphere SDK (Prentice Hall)</a>, creator of <a href="http://vijava.sf.net">VMware vSphere Java API</a>. For future articles, please subscribe to <a href="http://feedburner.google.com/fb/a/mailverify?uri=Doublecloud">Email</a> or <a href="http://www.doublecloud.org/feed">RSS</a>, and follow on <a href="http://www.twitter.com/sjin2008">Twitter</a>.</p>
<h2  class="related_post_title">Related Posts</h2><ul class="related_post"><li><a href="http://www.doublecloud.org/2010/02/more-thoughts-on-rich-internet-applications-and-applications-in-general/" title="More Thoughts On Rich Internet Applications And Applications In General">More Thoughts On Rich Internet Applications And Applications In General</a></li><li><a href="http://www.doublecloud.org/2010/06/which-web-framework-is-the-best/" title="Which Web Framework is the Best?">Which Web Framework is the Best?</a></li><li><a href="http://www.doublecloud.org/2010/05/why-google-needs-vmware/" title="Why Google Needs VMware?">Why Google Needs VMware?</a></li><li><a href="http://www.doublecloud.org/2010/04/top-20-most-popular-programming-languages/" title="Top 20 Most Popular Programming Languages">Top 20 Most Popular Programming Languages</a></li><li><a href="http://www.doublecloud.org/2010/04/amazon-aws-sdk-for-java-it%e2%80%99s-not-quite-there-yet/" title="Amazon AWS SDK for Java: It’s Not Quite There Yet">Amazon AWS SDK for Java: It’s Not Quite There Yet</a></li></ul><img src="http://feeds.feedburner.com/~r/Doublecloud/~4/NhT6Nb6Vfik" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.doublecloud.org/2010/08/eclipse-day-at-googleplex-a-brief-trip-report/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.doublecloud.org/2010/08/eclipse-day-at-googleplex-a-brief-trip-report/</feedburner:origLink></item>
		<item>
		<title>vSphere Java API 3.0 Kicks off, code name “Crescendo”</title>
		<link>http://feedproxy.google.com/~r/Doublecloud/~3/XudxjldbjjI/</link>
		<comments>http://www.doublecloud.org/2010/08/vsphere-java-api-3-0-kicks-off-code-name-crescendo/#comments</comments>
		<pubDate>Thu, 26 Aug 2010 07:13:43 +0000</pubDate>
		<dc:creator>Steve Jin</dc:creator>
				<category><![CDATA[vSphere API]]></category>
		<category><![CDATA[vi java api]]></category>

		<guid isPermaLink="false">http://www.doublecloud.org/?p=1330</guid>
		<description><![CDATA[WIth 2.1 GAed yesterday, I am happy to announce the 3.0 project kicks off officially. For more fun, I picked up a code name for 3.0 release: Crescendo. For folks know music, crescendo means music gets louder and louder. That is where I want to bring the project to. It&#8217;s been a huge success for [...]]]></description>
			<content:encoded><![CDATA[<p>WIth 2.1 GAed yesterday, I am happy to announce the 3.0 project kicks off officially. For more fun, I picked up a code name for 3.0 release: Crescendo. For folks know music, crescendo means music gets louder and louder. That is where I want to bring the project to. It&#8217;s been a huge success for this VMware sponsored open source project. We&#8217;ve had 9,000+ downloads, plus 1000+ SVN code sync, after its first debut in 2008.</p>
<p><strong>So where are we going next?</strong></p>
<p>Before answering the question, let&#8217;s take a look at the themes of previous releases. The theme of 1.0 was ease of use with full object model and getter methods hiding property collector. The theme of 2.0 was Just Enough High Performance Web Service Engine resulted in not only performance boost, but also clean license with pure BSD, and much smaller footprint and zero memory leak.</p>
<p>Now it&#8217;s time to re-visit ease of use again, but from a different perspective. As I discussed early, the learning curve of vSphere API comes from two folds: lack of object model, and complexity of data objects. The 1.0 release solved the problem nicely. Now it&#8217;s time to tackle the second one.<span id="more-1330"></span></p>
<p>There are two possible ways to take care of this. First, provide more samples with better documentation as starting point. Secondly, come up with a higher level of APIs that capture the most common use cases so that you have a giant shoulder to stand on. Crescendo will take the second approach.</p>
<p>Let me give a quick example here. As today if you want to add a hard disk to a virtual machine, you have to use the reconfigVM_Task() method with tons of possible parameters while you actually need just a few. What is the point to read deeply into the parameter data objects? These parameters can easily get wrong. You can, for instance, mistakingly assign a unit number that has been taken by other devices under the same controller. Many more details exposed than needed. Therefore I see a need for a higher level APIs that address this use case with far simpler method.</p>
<p>This is just one sample of many common use cases you may find in real projects. To make sure it&#8217;s something you find useful, I would love to hear from you on how you use vijava today and what you wish to have in the future. If you have some code to contribute, that would be even better. I can use them as the base to abstract high level of APIs. I will give you credits whenever it&#8217;s due.</p>
<p>Architecture wise, the new layer won&#8217;t be mixed up with existing layer, meaning you have choice to skip this layer. But if not, you will enjoy a much higher productivity than using the current abstraction.</p>
<p>Another important thing is that crescendo will empower system administrators on writing automation scripts. The current vijava API is mainly targeted toward software developer even though we have nice jython, Groovy tutorials. With Crescendo, the scripts will be easier and shorter.</p>
<p>BTW, I will be at VMworld next week presenting vSphere API best practices, helping at VMware booth in exhibition hall, and book signing at bookstore (Tuesday 12:30~1PM). If you happen to be there, please feel free to stop by.
<p><strong>Author:</strong> Steve Jin is the author of <a href="http://amzn.to/97ZyAg">VMware VI and vSphere SDK (Prentice Hall)</a>, creator of <a href="http://vijava.sf.net">VMware vSphere Java API</a>. For future articles, please subscribe to <a href="http://feedburner.google.com/fb/a/mailverify?uri=Doublecloud">Email</a> or <a href="http://www.doublecloud.org/feed">RSS</a>, and follow on <a href="http://www.twitter.com/sjin2008">Twitter</a>.</p>
<h2  class="related_post_title">Related Posts</h2><ul class="related_post"><li><a href="http://www.doublecloud.org/2010/08/ruby-to-manage-and-automate-vmware-vsphere/" title="Ruby to Manage and Automate VMware vSphere? ">Ruby to Manage and Automate VMware vSphere? </a></li><li><a href="http://www.doublecloud.org/2010/08/announcing-vsphere-java-api-2-1-ga-release/" title="Announcing vSphere Java API 2.1 GA Release">Announcing vSphere Java API 2.1 GA Release</a></li><li><a href="http://www.doublecloud.org/2010/08/secret-of-vapp-template-in-vsphere/" title="Secret of vApp Template in vSphere">Secret of vApp Template in vSphere</a></li><li><a href="http://www.doublecloud.org/2010/08/manage-lockdown-mode-with-new-api-in-vsphere-4-1/" title="Manage Lockdown Mode with New API in vSphere 4.1">Manage Lockdown Mode with New API in vSphere 4.1</a></li><li><a href="http://www.doublecloud.org/2010/08/how-to-get-esx-version-from-vcenter/" title="How to Get ESX Version from vCenter?">How to Get ESX Version from vCenter?</a></li></ul><img src="http://feeds.feedburner.com/~r/Doublecloud/~4/XudxjldbjjI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.doublecloud.org/2010/08/vsphere-java-api-3-0-kicks-off-code-name-crescendo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.doublecloud.org/2010/08/vsphere-java-api-3-0-kicks-off-code-name-crescendo/</feedburner:origLink></item>
		<item>
		<title>Announcing vSphere Java API 2.1 GA Release</title>
		<link>http://feedproxy.google.com/~r/Doublecloud/~3/-wj4lCDfBWk/</link>
		<comments>http://www.doublecloud.org/2010/08/announcing-vsphere-java-api-2-1-ga-release/#comments</comments>
		<pubDate>Thu, 26 Aug 2010 06:20:21 +0000</pubDate>
		<dc:creator>Steve Jin</dc:creator>
				<category><![CDATA[vSphere API]]></category>
		<category><![CDATA[vi java api]]></category>

		<guid isPermaLink="false">http://www.doublecloud.org/?p=1340</guid>
		<description><![CDATA[Right after vSphere 4.1 released, VI Java API 2.1 beta supporting vSphere 4.1 was released on July 15. After 40 days, I am pleased to announce GA of the 2.1 release. Many thanks to all vijava community memembers who helped to try 2.1 beta and give feedbacks.
The 2.1 beta is pretty good in terms of quality. I [...]]]></description>
			<content:encoded><![CDATA[<p>Right after vSphere 4.1 released, VI Java API 2.1 beta supporting vSphere 4.1 <a href="http://www.doublecloud.org/2010/07/released-vsphere-java-api-2-1-beta-for-vsphere-4-1/">was released </a>on July 15. After 40 days, I am pleased to announce GA of the 2.1 release. Many thanks to all vijava community memembers who helped to try 2.1 beta and give feedbacks.</p>
<p>The 2.1 beta is pretty good in terms of quality. I got several emails reporting greeen. I did get several bugs, some of which are carry-overs that should have been fixed in previous releases. Check the end of this blog for a list of bug fixes.</p>
<p>During the beta period, I started a <a href="http://vijava.sf.net/poweredby.php">poweredby page</a> which now features 10 companies/products which use vijava API. If you would like your organizations/products included, please let me know.</p>
<p>Enough being said, are you ready to give 2.1 a try? Please feel to download it <a href="http://sourceforge.net/projects/vijava/files/">here</a>. Even you are new to this API, 5 minutes is good enough to have your first HelloVSphere running with <a href="http://vijava.sourceforge.net/doc/getstarted/tutorial.htm">this tutorial</a>.<span id="more-1340"></span></p>
<p><strong>Bug Fixes</strong><br />
3049871 Missing SetPublicKey in ExtensionManager<br />
3040909 getProfile in HostProfilesManager throws a classcastexceptio<br />
3042149 match version in SessionManager.cloneSession() method<br />
3042167 xml characters not escaped (partial fix with password which is more likely to contain special chars)
<p><strong>Author:</strong> Steve Jin is the author of <a href="http://amzn.to/97ZyAg">VMware VI and vSphere SDK (Prentice Hall)</a>, creator of <a href="http://vijava.sf.net">VMware vSphere Java API</a>. For future articles, please subscribe to <a href="http://feedburner.google.com/fb/a/mailverify?uri=Doublecloud">Email</a> or <a href="http://www.doublecloud.org/feed">RSS</a>, and follow on <a href="http://www.twitter.com/sjin2008">Twitter</a>.</p>
<h2  class="related_post_title">Related Posts</h2><ul class="related_post"><li><a href="http://www.doublecloud.org/2010/08/ruby-to-manage-and-automate-vmware-vsphere/" title="Ruby to Manage and Automate VMware vSphere? ">Ruby to Manage and Automate VMware vSphere? </a></li><li><a href="http://www.doublecloud.org/2010/08/manage-lockdown-mode-with-new-api-in-vsphere-4-1/" title="Manage Lockdown Mode with New API in vSphere 4.1">Manage Lockdown Mode with New API in vSphere 4.1</a></li><li><a href="http://www.doublecloud.org/2010/08/how-to-get-esx-version-from-vcenter/" title="How to Get ESX Version from vCenter?">How to Get ESX Version from vCenter?</a></li><li><a href="http://www.doublecloud.org/2010/08/uuid-vs-vsphere/" title="UUID vs. vSphere">UUID vs. vSphere</a></li><li><a href="http://www.doublecloud.org/2010/08/who-created-that-vm-java-version-of-the-winning-script-of-vmware-contest/" title="Who Created That VM: Java Version of the Winning Script of VMware Contest">Who Created That VM: Java Version of the Winning Script of VMware Contest</a></li></ul><img src="http://feeds.feedburner.com/~r/Doublecloud/~4/-wj4lCDfBWk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.doublecloud.org/2010/08/announcing-vsphere-java-api-2-1-ga-release/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://www.doublecloud.org/2010/08/announcing-vsphere-java-api-2-1-ga-release/</feedburner:origLink></item>
		<item>
		<title>Tipping points: the Social Aspect of Cloud Computing</title>
		<link>http://feedproxy.google.com/~r/Doublecloud/~3/8Qc9Qdp5MY0/</link>
		<comments>http://www.doublecloud.org/2010/08/tipping-points-the-social-aspect-of-cloud-computing/#comments</comments>
		<pubDate>Wed, 25 Aug 2010 05:01:24 +0000</pubDate>
		<dc:creator>Steve Jin</dc:creator>
				<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[tipping point]]></category>

		<guid isPermaLink="false">http://www.doublecloud.org/?p=1335</guid>
		<description><![CDATA[Many people already know the book “The Tipping Point: How Little Things Can Make a Big Difference.” According to the author Malcolm Gladwell, tipping points are “the levels at which the momentum for change becomes unstoppable.” He defines the term as sociological and uses it to explain sociological epidemics.
Three Rules of Epidemics
 
In his book, [...]]]></description>
			<content:encoded><![CDATA[<p>Many people already know the book “<a href="http://en.wikipedia.org/wiki/The_Tipping_Point">The Tipping Point: How Little Things Can Make a Big Difference</a>.” According to the author Malcolm Gladwell, tipping points are “the levels at which the momentum for change becomes unstoppable.” He defines the term as sociological and uses it to explain sociological epidemics.</p>
<p><strong>Three Rules of Epidemics</strong></p>
<p><strong> </strong></p>
<p>In his book, Gladwell laid out the “three rules of epidemics” as follows:</p>
<blockquote><p>1) The Law of the Few.<br />
“The success of any kind of social epidemic is heavily dependent on the involvement of people with a particular and rare set of social gifts.” The author categorized people into Connectors who link us up with the world; Mavens who are “people we rely upon to connect us with new information;” and Salesmen who are charismatic persuaders.</p>
<p>2) The Stickiness Factor<br />
The specific content of a message that renders its impact memorable.</p>
<p>3) The Power of Context<br />
Human behavior is sensitive to and strongly influenced by its environment.</p></blockquote>
<p>Although the research comes from sociology, I think it applies to technology as well. After all, technology is social. Just think about social networks like Facebook, and the recent success of Apple’s iPad.</p>
<p>If you want your technology to be a huge success, you cannot ignore its social side story. In the end, it is human beings who make decisions regarding any technology adoption or product purchase.<span id="more-1335"></span></p>
<p><strong>Two Tipping Points</strong></p>
<p><strong> </strong></p>
<p>Cloud computing has become a buzzword. It has also climbed the CIO’s priority list from near the bottom to second place in a recent survey. While we’ve made huge progress in terms of marketing, we haven’t yet seen the tipping point of cloud computing in reality.</p>
<p>Unlike the Hush Puppies shoes discussed in the book, technologies like cloud computing are far more expensive to adopt and and they require much more expertise than buying a pair of shoes.</p>
<p>This uniqueness of cloud computing results in an interesting phenomenon – two tipping points. The first tipping point is with marketing. As an industry, we are pretty good at creating buzz around new technologies. No other industry is as eager as high tech to embrace the “next big thing.”</p>
<p>The second tipping point is with adoption in production. It may or may not come after the first tipping point. After the first tipping point, people may give cloud computing a try with pilot projects. At this tipping point, it becomes absolutely critical that the technology brings real vale to businesses or adoption dies.</p>
<p>There are examples in technology where the second tipping point arrived and then reversed due to the absence of sufficient value to businesses. One of the best examples in my opinion was the EJB (Enterprise Java Bean). It was widely adopted but then faded away. It failed to deliver sufficient value.</p>
<p><strong>Tipping points for Cloud Computing</strong></p>
<p>With so many people talking about cloud computing, we obviously have achieved the first tipping point from marketing perspective. We haven’t yet seen massive adoption through a second tipping point however.</p>
<p>Where will businesses find sufficient value in cloud computing? Cost saving is definitely one, but for sure not the only one. As hardware cost keeps dropping, capital spending on servers may be less a concern for most businesses in the future. They would look for flexibility, control, and growth from cloud computing. These kinds of value will be driven by people if we look at the three rules of social epidemics from a technology perspective. At the second tipping point for cloud computing, breakthrough adoption is now up to the connectors, mavens, and sales people.</p>
<p>With many companies and organizations in the cloud movement, we will for sure have many connectors, mavens, and salespersons who may have different understandings of cloud computing, and different agendas due to company interests. We need to collaborate effectively with each other for the bigger goal: showing real world values to the customers. Only then we will see the second tipping point that we all look forward to.
<p><strong>Author:</strong> Steve Jin is the author of <a href="http://amzn.to/97ZyAg">VMware VI and vSphere SDK (Prentice Hall)</a>, creator of <a href="http://vijava.sf.net">VMware vSphere Java API</a>. For future articles, please subscribe to <a href="http://feedburner.google.com/fb/a/mailverify?uri=Doublecloud">Email</a> or <a href="http://www.doublecloud.org/feed">RSS</a>, and follow on <a href="http://www.twitter.com/sjin2008">Twitter</a>.</p>
<h2  class="related_post_title">Related Posts</h2><ul class="related_post"><li><a href="http://www.doublecloud.org/2010/08/vertically-complete-systems-next-big-trend/" title="Vertically Complete Systems: Next Big Trend?">Vertically Complete Systems: Next Big Trend?</a></li><li><a href="http://www.doublecloud.org/2010/07/cloud-architecture-design-should-it-be-top-down-or-bottom-up/" title="Cloud Architecture Design: Should it be Top-Down or Bottom-Up?">Cloud Architecture Design: Should it be Top-Down or Bottom-Up?</a></li><li><a href="http://www.doublecloud.org/2010/07/workload-optimization-is-it-a-must-have-for-cloud-computing/" title="Workload Optimization: Is It a Must-have for Cloud Computing?">Workload Optimization: Is It a Must-have for Cloud Computing?</a></li><li><a href="http://www.doublecloud.org/2010/07/when-to-use-cloud-example-use-cases/" title="When to Use Cloud? Example Use Cases">When to Use Cloud? Example Use Cases</a></li><li><a href="http://www.doublecloud.org/2010/07/when-not-to-use-cloud/" title="When NOT to Use Cloud?">When NOT to Use Cloud?</a></li></ul><img src="http://feeds.feedburner.com/~r/Doublecloud/~4/8Qc9Qdp5MY0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.doublecloud.org/2010/08/tipping-points-the-social-aspect-of-cloud-computing/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.doublecloud.org/2010/08/tipping-points-the-social-aspect-of-cloud-computing/</feedburner:origLink></item>
		<item>
		<title>Secret of vApp Template in vSphere</title>
		<link>http://feedproxy.google.com/~r/Doublecloud/~3/tWZIk6VUEcs/</link>
		<comments>http://www.doublecloud.org/2010/08/secret-of-vapp-template-in-vsphere/#comments</comments>
		<pubDate>Tue, 24 Aug 2010 05:01:37 +0000</pubDate>
		<dc:creator>Steve Jin</dc:creator>
				<category><![CDATA[vSphere API]]></category>
		<category><![CDATA[virtualization]]></category>
		<category><![CDATA[ovf]]></category>
		<category><![CDATA[Template]]></category>
		<category><![CDATA[vi java api]]></category>
		<category><![CDATA[vSphere]]></category>

		<guid isPermaLink="false">http://www.doublecloud.org/?p=1320</guid>
		<description><![CDATA[My colleagues and I had a discussion regarding the vApp template. After virtual machine template for virtual machine, you would expect vApp template for vApp and manage it in a similar way from the vSphere Client. But you cannot.
Most of us know that from vSphere Client, you have context menu item allowing you to convert [...]]]></description>
			<content:encoded><![CDATA[<p>My colleagues and I had a discussion regarding the vApp template. After virtual machine template for virtual machine, you would expect vApp template for vApp and manage it in a similar way from the vSphere Client. But you cannot.</p>
<p>Most of us know that from vSphere Client, you have context menu item allowing you to convert a virtual machine to a template easily with a click. However you cannot find a similar menu item with a vApp. You can choose to convert a virtual machine inside a vApp, but then the converted template will jump out of the vApp container.</p>
<p>Can we have vApp template? The answer is we can, but in a different way.<span id="more-1320"></span></p>
<p>To fully understand what’s happening, let’s look into vSphere API which will shed some insights about this. To most people’s surprise, vApp (VirtualApp) is a sub type of ResourcePool, not VirtualMachine although it behaves somewhat like a virtual machine in that you can power on and off a vApp as would a virtual machine. This is a good example in which knowing API gives you insights on how the system is constructed under the hook. That is why system administrators want to learn about API, especially <a href="http://www.doublecloud.org/2010/02/object-model-of-vmware-vsphere-api-a-big-picture-in-2-minutes/">object model</a>, even though not developing code.</p>
<p>The difference of a virtual machine and a virtual machine template is that a virtual machine is not associated with a ResourcePool object. That is why you need to specify a resource pool when turning a template to a virtual machine, as shown in the following method:</p>
<pre class="brush: java;">public void markAsVirtualMachine(ResourcePool pool, HostSystem host)</pre>
<p>Note that the first pool parameter is a required parameter and cannot be null as the second one. Given a vApp itself is a ResourcePool, you cannot remove its association with a ResourcePool object, or destroy itself.</p>
<p>Now, how can we have a template for vApp? In fact, it’s pretty easy. You would use <a href="http://www.doublecloud.org/2010/04/ovf-vs-vmdk/">OVF</a> as the template.</p>
<p>From vSphere Client, you can get to the “Export OVF Template” dialog box, shown below, from File-&gt;Export-&gt;Export OVF Template. It allows you to export a vApp to your local machine in OVF.</p>
<p><a href="http://www.doublecloud.org/wp-content/uploads/2010/08/vsphere_export_ovf_template.png"><img class="aligncenter size-full wp-image-1321" title="vsphere_export_ovf_template" src="http://www.doublecloud.org/wp-content/uploads/2010/08/vsphere_export_ovf_template.png" alt="" width="357" height="400" /></a></p>
<p>It’s also easy to deploy an OVF package to vApp with “Deploy OVF Template” dialog box as follows from File-&gt;Deploy OVF Template menu path. You can specify either from a local file or from a URL pointing to an OVF package. Unlike the other direction, you will have to go through several more steps here including accepting end user license agreement.</p>
<p><a href="http://www.doublecloud.org/wp-content/uploads/2010/08/vsphere_deploy_ovf_template.png"><img class="aligncenter size-full wp-image-1322" title="vsphere_deploy_ovf_template" src="http://www.doublecloud.org/wp-content/uploads/2010/08/vsphere_deploy_ovf_template.png" alt="" width="628" height="475" /></a></p>
<p>You can of course export and deploy (import) OVF packages with vSphere API. Check out <a href="http://www.doublecloud.org/2010/04/how-to-import-and-export-ovf-packages/">this blog</a> for more details and samples.
<p><strong>Author:</strong> Steve Jin is the author of <a href="http://amzn.to/97ZyAg">VMware VI and vSphere SDK (Prentice Hall)</a>, creator of <a href="http://vijava.sf.net">VMware vSphere Java API</a>. For future articles, please subscribe to <a href="http://feedburner.google.com/fb/a/mailverify?uri=Doublecloud">Email</a> or <a href="http://www.doublecloud.org/feed">RSS</a>, and follow on <a href="http://www.twitter.com/sjin2008">Twitter</a>.</p>
<h2  class="related_post_title">Related Posts</h2><ul class="related_post"><li><a href="http://www.doublecloud.org/2010/08/why-hyperic-chose-vi-java-api-for-vsphere-integration/" title="Why Hyperic Chose VI Java API for vSphere Integration?">Why Hyperic Chose VI Java API for vSphere Integration?</a></li><li><a href="http://www.doublecloud.org/2010/06/vsphere-java-api-2-1-beta-is-ready-for-limited-access/" title="vSphere Java API 2.1 Beta Is Ready For Limited Access">vSphere Java API 2.1 Beta Is Ready For Limited Access</a></li><li><a href="http://www.doublecloud.org/2010/04/tutorial-easy-vmware-development-with-vi-java-api-and-groovy/" title="Tutorial: Easy VMware Development with VI Java API and Groovy">Tutorial: Easy VMware Development with VI Java API and Groovy</a></li><li><a href="http://www.doublecloud.org/2010/04/virtual-machine-ip-address-and-mac-address-frequently-confused-concepts/" title="Virtual Machine, IP Address, and MAC Address: Frequently Confused Concepts">Virtual Machine, IP Address, and MAC Address: Frequently Confused Concepts</a></li><li><a href="http://www.doublecloud.org/2010/04/how-to-import-and-export-ovf-packages/" title="How to Import and Export OVF Packages">How to Import and Export OVF Packages</a></li></ul><img src="http://feeds.feedburner.com/~r/Doublecloud/~4/tWZIk6VUEcs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.doublecloud.org/2010/08/secret-of-vapp-template-in-vsphere/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.doublecloud.org/2010/08/secret-of-vapp-template-in-vsphere/</feedburner:origLink></item>
		<item>
		<title>Restriction with User Name in ESX 4.1</title>
		<link>http://feedproxy.google.com/~r/Doublecloud/~3/asiK6WE9AsI/</link>
		<comments>http://www.doublecloud.org/2010/08/restriction-with-user-name-in-esx-4-1/#comments</comments>
		<pubDate>Mon, 23 Aug 2010 06:02:10 +0000</pubDate>
		<dc:creator>Steve Jin</dc:creator>
				<category><![CDATA[vSphere API]]></category>
		<category><![CDATA[ESX]]></category>
		<category><![CDATA[vi java]]></category>

		<guid isPermaLink="false">http://www.doublecloud.org/?p=1317</guid>
		<description><![CDATA[According to a recent post by Duncan, there is an issue with password in ESX(i) 4.1. Only the first 8 characters of a password are taken and validated. A VMware KB article offered solutions to this issue.
Interestingly enough, vSphere Java API community reported a bug with vSphere API&#8217;s HostLocalAccountManager managed object: a piece of code creating [...]]]></description>
			<content:encoded><![CDATA[<p>According to <a href="http://www.yellow-bricks.com/2010/07/20/workaround-for-esxi-4-1-password-issue/">a recent post by Duncan</a>, there is an issue with password in ESX(i) 4.1. Only the first 8 characters of a password are taken and validated. <a href="http://kb.vmware.com/kb/1024500">A VMware KB article</a> offered solutions to this issue.</p>
<p>Interestingly enough, <a href="http://vijava.sf.net">vSphere Java API</a> community reported <a href="http://sourceforge.net/tracker/?func=detail&amp;aid=3030816&amp;group_id=228007&amp;atid=1073396">a bug</a> with vSphere API&#8217;s HostLocalAccountManager managed object: a piece of code creating a new user account used to work with ESX 4.0, but no longer with ESX 4.1 without any change. My first thought was to check the API reference to see if there is any change with parameters, especially those data objects embedded in the parameters. Then I suspected it might be associated with policies of password. I found <a href="http://kb.vmware.com/kb/1012033">another KB article</a> related to password while searching for answers.</p>
<p>After several rounds of trials, it turned out the issue was related to the user name. As reported, the problem was caused by &#8220;.&#8221; (dot character) which  is no longer allowed in user name of ESX 4.1. Removing the dot solved the problem.</p>
<p>I think this issue may not be as common as the password because not many people use &#8220;.&#8221; in user name. But if you get this problem, it&#8217;s hard to root the cause. That is why I write this so that you can easily avoid the issue before it happens.
<p><strong>Author:</strong> Steve Jin is the author of <a href="http://amzn.to/97ZyAg">VMware VI and vSphere SDK (Prentice Hall)</a>, creator of <a href="http://vijava.sf.net">VMware vSphere Java API</a>. For future articles, please subscribe to <a href="http://feedburner.google.com/fb/a/mailverify?uri=Doublecloud">Email</a> or <a href="http://www.doublecloud.org/feed">RSS</a>, and follow on <a href="http://www.twitter.com/sjin2008">Twitter</a>.</p>
<h2  class="related_post_title">Related Posts</h2><ul class="related_post"><li><a href="http://www.doublecloud.org/2010/07/complete-list-of-managed-object-types-in-vmware-vsphere-api/" title="Complete List of Managed Object Types in VMware vSphere API">Complete List of Managed Object Types in VMware vSphere API</a></li><li><a href="http://www.doublecloud.org/2010/05/two-more-jython-samples-managing-vmware-vsphere/" title="Two More Jython Samples Managing VMware vSphere">Two More Jython Samples Managing VMware vSphere</a></li><li><a href="http://www.doublecloud.org/2010/04/invalid-property-a-trick-with-vsphere-propertycollector/" title="Invalid property? A Trick With vSphere PropertyCollector">Invalid property? A Trick With vSphere PropertyCollector</a></li><li><a href="http://www.doublecloud.org/2010/04/i18n-vs-vsphere/" title="I18N vs. vSphere">I18N vs. vSphere</a></li><li><a href="http://www.doublecloud.org/2010/02/introducing-a-tiny-yet-powerful-api-to-manage-and-automate-vsphere/" title="Introducing A Tiny Yet Powerful API to Manage and Automate vSphere">Introducing A Tiny Yet Powerful API to Manage and Automate vSphere</a></li></ul><img src="http://feeds.feedburner.com/~r/Doublecloud/~4/asiK6WE9AsI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.doublecloud.org/2010/08/restriction-with-user-name-in-esx-4-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.doublecloud.org/2010/08/restriction-with-user-name-in-esx-4-1/</feedburner:origLink></item>
		<item>
		<title>How to Get Event Type with vSphere API?</title>
		<link>http://feedproxy.google.com/~r/Doublecloud/~3/oSq5gNfICrc/</link>
		<comments>http://www.doublecloud.org/2010/08/how-to-get-event-type-with-vsphere-api/#comments</comments>
		<pubDate>Thu, 19 Aug 2010 05:01:31 +0000</pubDate>
		<dc:creator>Steve Jin</dc:creator>
				<category><![CDATA[vSphere API]]></category>
		<category><![CDATA[event]]></category>
		<category><![CDATA[vmware]]></category>

		<guid isPermaLink="false">http://www.doublecloud.org/?p=1309</guid>
		<description><![CDATA[There is a recent question asking how to get the type of event from vSphere API in my previous blog. On one hand, you can clearly see the types of events on a vSphere Client, for instance “info”, “warning”, “error”, and “user.” On the other hand, you cannot find any information about the type from a [...]]]></description>
			<content:encoded><![CDATA[<p>There is a recent question asking how to get the type of event from vSphere API in my <a href="http://www.doublecloud.org/2010/02/vijava-browser-a-great-tool-to-recommend/">previous blog</a>. On one hand, you can clearly see the types of events on a vSphere Client, for instance “<em>info</em>”, “<em>warning</em>”, “<em>error</em>”, and “<em>user</em>.” On the other hand, you cannot find any information about the type from a given event itself using vSphere API.</p>
<p>Strictly speaking an event just indicates something has happened. That is it. You can categorize it differently depending on your goal. The Event type itself in vSphere API models an event as what it is, not about how you look at it. This is a right design philosophy, but turns out to be a little tricky for you to figure out the type of an event.</p>
<p>How does vSphere Client do the trick?<span id="more-1309"></span></p>
<p>The trick is with the EventManager, which has a property called <em>description</em> typed as <em>EventDescription</em>[]. The <em>EventDescription</em> data object includes <em>category</em> sub-property which holds information about the possible categories/types of all events, namely “<em>info</em>”, “<em>warning</em>”, “<em>error</em>”, and “<em>user</em>.” This is exactly you find from vSphere Client.</p>
<p>Another sub-property of <em>EventDescription</em> is called <em>eventInfo</em> typed as <em>EventDescriptionEventDetail</em>[]. Each <em>EventDescriptionEventDetail</em> object has a <em>key</em>, a <em>category</em>, and several format strings. So the mapping is here! The following is a screen shot showing the “<em>HostAddFailedEvent</em>” as “<em>error</em>.” The reason I used Eclipse is because MOB does not show eventInfo correctly. You can optionally use the <a href="http://www.doublecloud.org/2010/02/vijava-browser-a-great-tool-to-recommend/">VI Java Browser</a>.<img class="aligncenter size-full wp-image-1310" title="vSphere_eventinfo_eclipse" src="http://www.doublecloud.org/wp-content/uploads/2010/08/vSphere_eventinfo_eclipse.png" alt="" width="688" height="204" /></p>
<p>The solution is now clear. All you need to do is to retrieve the eventInfo sub-property and establish the mapping locally for lookup. In Java, you can load them into a HashMap object for fast look up.</p>
<p>Note that the mapping is just what VMware looks at these events. You can change the mapping for your applications when appropriate. That is why I said current design follows right philosopy.</p>
<p>One important performance tip is that you should NOT retrieve it twice in a session because eventInfo doesn’t change with a particular server. I wouldn&#8217;t recommend you to persist it locally either because it&#8217;s that expensive to get it.</p>
<p>Following is the Java code if you want to inspect the eventInfo property.</p>
<pre class="brush: java;">
import java.net.URL;

import com.vmware.vim25.EventDescription;
import com.vmware.vim25.TaskInfoState;
import com.vmware.vim25.VirtualDevice;
import com.vmware.vim25.VirtualDisk;
import com.vmware.vim25.mo.EventManager;
import com.vmware.vim25.mo.InventoryNavigator;
import com.vmware.vim25.mo.ServiceInstance;
import com.vmware.vim25.mo.Task;
import com.vmware.vim25.mo.VirtualMachine;

/**
* @author Steve Jin
*/

public class FindEventType
{
public static void main(String[] args) throws Exception
{
ServiceInstance si = new ServiceInstance(new URL(&quot;&lt;a href=&quot;https://server/sdk&quot;&gt;https://server/sdk&lt;/a&gt;&quot;), &quot;root&quot;, &quot;password&quot;, true);
EventManager em = si.getEventManager();

EventDescription ed = em.getDescription();
// set a break point here to inspect the ed variable for more info

si.getServerConnection().logout();
   }
}
</pre>
<p><strong>Author:</strong> Steve Jin is the author of <a href="http://amzn.to/97ZyAg">VMware VI and vSphere SDK (Prentice Hall)</a>, creator of <a href="http://vijava.sf.net">VMware vSphere Java API</a>. For future articles, please subscribe to <a href="http://feedburner.google.com/fb/a/mailverify?uri=Doublecloud">Email</a> or <a href="http://www.doublecloud.org/feed">RSS</a>, and follow on <a href="http://www.twitter.com/sjin2008">Twitter</a>.</p>
<h2  class="related_post_title">Related Posts</h2><ul class="related_post"><li><a href="http://www.doublecloud.org/2010/08/manage-lockdown-mode-with-new-api-in-vsphere-4-1/" title="Manage Lockdown Mode with New API in vSphere 4.1">Manage Lockdown Mode with New API in vSphere 4.1</a></li><li><a href="http://www.doublecloud.org/2010/08/uuid-vs-vsphere/" title="UUID vs. vSphere">UUID vs. vSphere</a></li><li><a href="http://www.doublecloud.org/2010/08/how-to-create-linked-virtual-machines-with-vsphere-api/" title="How to Create Linked Virtual Machines with vSphere API?">How to Create Linked Virtual Machines with vSphere API?</a></li><li><a href="http://www.doublecloud.org/2010/07/vmware-technology-exchange-for-developers-at-vmworld-2010/" title="VMware Technology Exchange for Developers at VMworld 2010">VMware Technology Exchange for Developers at VMworld 2010</a></li><li><a href="http://www.doublecloud.org/2010/07/what%e2%80%99s-deprecated-in-vsphere-4-1-api/" title="What’s Deprecated in vSphere 4.1 API?">What’s Deprecated in vSphere 4.1 API?</a></li></ul><img src="http://feeds.feedburner.com/~r/Doublecloud/~4/oSq5gNfICrc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.doublecloud.org/2010/08/how-to-get-event-type-with-vsphere-api/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.doublecloud.org/2010/08/how-to-get-event-type-with-vsphere-api/</feedburner:origLink></item>
		<item>
		<title>InterCloud vs. Internet: What’s Missing in Cloud Computing?</title>
		<link>http://feedproxy.google.com/~r/Doublecloud/~3/E9ogEcTLSzg/</link>
		<comments>http://www.doublecloud.org/2010/08/intercloud-vs-internet-what%e2%80%99s-missing-in-cloud-computing/#comments</comments>
		<pubDate>Wed, 18 Aug 2010 05:01:19 +0000</pubDate>
		<dc:creator>Steve Jin</dc:creator>
				<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[InterCloud]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[standard]]></category>
		<category><![CDATA[virtualization]]></category>

		<guid isPermaLink="false">http://www.doublecloud.org/?p=1302</guid>
		<description><![CDATA[As more and more clouds go live, it’s time to think about how they will need to interconnect and interact. InterCloud is a new terminology coined for cloud computing after Internet for networking.
Vint Cerf, the “father” of the Internet, said recently that the cloud is much like networking in 1973 when computer networks couldn’t connect [...]]]></description>
			<content:encoded><![CDATA[<p>As more and more clouds go live, it’s time to think about how they will need to interconnect and interact. InterCloud is a new terminology coined for cloud computing after Internet for networking.</p>
<p>Vint Cerf, the “father” of the Internet, said recently that the cloud is much like networking in 1973 when computer networks couldn’t connect or interact. He called for open standards for cloud computing so that InterCloud can become a reality.</p>
<p>It’s hard to design standards when people are still trying to reach a consensus on defining what a cloud is in the first place! The good news is that as an industry we went through a similar process for the Internet. So we can learn from that experience.</p>
<p>The idea is simple: look at basic building blocks we have for the Internet and think about their equivalent for the InterCloud. Believe it or not, InterCloud and Internet share many common characteristics. The following table summarizes some of these.<span id="more-1302"></span></p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="194" valign="top"><strong> </strong></td>
<td width="223" valign="top"><strong>Networking</strong></td>
<td width="221" valign="top"><strong>Cloud Computing</strong></td>
</tr>
<tr>
<td width="194" valign="top">Content</td>
<td width="223" valign="top">Data</td>
<td width="221" valign="top">Computing workload</td>
</tr>
<tr>
<td width="194" valign="top">Cornerstone</td>
<td width="223" valign="top"><a href="http://en.wikipedia.org/wiki/Ethernet">Ethernet</a></td>
<td width="221" valign="top"><a href="http://en.wikipedia.org/wiki/Virtualization">Virtualization</a></td>
</tr>
<tr>
<td width="194" valign="top">Format</td>
<td width="223" valign="top"><a href="http://en.wikipedia.org/wiki/Abstract_Syntax_Notation_One">ASN.1</a></td>
<td width="221" valign="top"><a href="http://en.wikipedia.org/wiki/Open_Virtualization_Format">OVF</a> + ?</td>
</tr>
<tr>
<td width="194" valign="top">End point</td>
<td width="223" valign="top">Host</td>
<td width="221" valign="top"><a href="http://en.wikipedia.org/wiki/Hypervisor">Hypervisor</a></td>
</tr>
<tr>
<td width="194" valign="top">Protocols</td>
<td width="223" valign="top">OSI, TCP/IP, etc.</td>
<td width="221" valign="top">?</td>
</tr>
<tr>
<td width="194" valign="top">Directory service</td>
<td width="223" valign="top">DNS</td>
<td width="221" valign="top">?</td>
</tr>
<tr>
<td width="194" valign="top">ID</td>
<td width="223" valign="top">IP address/host name</td>
<td width="221" valign="top">?</td>
</tr>
<tr>
<td width="194" valign="top">Resource locator</td>
<td width="223" valign="top">URI/URL</td>
<td width="221" valign="top">?</td>
</tr>
<tr>
<td width="194" valign="top">Interconnectivity</td>
<td width="223" valign="top">Internet</td>
<td width="221" valign="top">InterCloud</td>
</tr>
<tr>
<td width="194" valign="top">Killer use cases</td>
<td width="223" valign="top">Email, Web</td>
<td width="221" valign="top">System provisioning, Dynamic scaling</td>
</tr>
</tbody>
</table>
<p>Let me emphasize the key difference between the Internet and the Intercloud —the Internet moves data and the InterCloud moves computing workloads. With virtualization and other high level virtual machine technology, computing workload is essentially data. Viewed in this fashion, that would mean the InterCloud can leverage the Internet as a high level application.</p>
<p>As you see from the table above, there remain many question marks where we do not yet have InterCloud equivalents to the Internet. That is something we need to think about and work on moving forward.</p>
<p>Let me know what you think. Do you have suggestions for equivalents?</p>
<p><strong>Author:</strong> Steve Jin is the author of <a href="http://amzn.to/97ZyAg">VMware VI and vSphere SDK (Prentice Hall)</a>, creator of <a href="http://vijava.sf.net">VMware vSphere Java API</a>. For future articles, please subscribe to <a href="http://feedburner.google.com/fb/a/mailverify?uri=Doublecloud">Email</a> or <a href="http://www.doublecloud.org/feed">RSS</a>, and follow on <a href="http://www.twitter.com/sjin2008">Twitter</a>.</p>
<h2  class="related_post_title">Related Posts</h2><ul class="related_post"><li><a href="http://www.doublecloud.org/2010/08/vertically-complete-systems-next-big-trend/" title="Vertically Complete Systems: Next Big Trend?">Vertically Complete Systems: Next Big Trend?</a></li><li><a href="http://www.doublecloud.org/2010/07/complete-list-of-managed-object-types-in-vmware-vsphere-api/" title="Complete List of Managed Object Types in VMware vSphere API">Complete List of Managed Object Types in VMware vSphere API</a></li><li><a href="http://www.doublecloud.org/2010/07/system-provisioning-in-cloud-computing-from-theory-to-tooling-part-2/" title="System Provisioning in Cloud Computing: From Theory to Tooling (part 2)">System Provisioning in Cloud Computing: From Theory to Tooling (part 2)</a></li><li><a href="http://www.doublecloud.org/2010/06/system-provisioning-in-cloud-computing-from-theory-to-tooling-part-1/" title="System Provisioning in Cloud Computing: From Theory to Tooling (part 1)">System Provisioning in Cloud Computing: From Theory to Tooling (part 1)</a></li><li><a href="http://www.doublecloud.org/2010/06/what-cloud-standards-are-there-and-coming/" title="What Cloud Standards Are There and Coming?">What Cloud Standards Are There and Coming?</a></li></ul><img src="http://feeds.feedburner.com/~r/Doublecloud/~4/E9ogEcTLSzg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.doublecloud.org/2010/08/intercloud-vs-internet-what%e2%80%99s-missing-in-cloud-computing/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.doublecloud.org/2010/08/intercloud-vs-internet-what%e2%80%99s-missing-in-cloud-computing/</feedburner:origLink></item>
		<item>
		<title>Manage Lockdown Mode with New API in vSphere 4.1</title>
		<link>http://feedproxy.google.com/~r/Doublecloud/~3/q8KOfkEWAdQ/</link>
		<comments>http://www.doublecloud.org/2010/08/manage-lockdown-mode-with-new-api-in-vsphere-4-1/#comments</comments>
		<pubDate>Tue, 17 Aug 2010 05:01:10 +0000</pubDate>
		<dc:creator>Steve Jin</dc:creator>
				<category><![CDATA[vSphere API]]></category>
		<category><![CDATA[ESXi]]></category>
		<category><![CDATA[vi java api]]></category>
		<category><![CDATA[vmware]]></category>

		<guid isPermaLink="false">http://www.doublecloud.org/?p=1296</guid>
		<description><![CDATA[As a feature, lockdown mode has been added to vSphere 4.0 . Enabling it disables all remote root access to an ESXi machine. Any local changes to the host must be using:

DCUI (Direct Console User Interface).
vSphere Client or vCLI connecting to vCenter.
vSphere Client or vCLI connecting to ESXi with a local user account on the [...]]]></description>
			<content:encoded><![CDATA[<p>As a feature, lockdown mode has been added to vSphere 4.0 . Enabling it disables all remote root access to an ESXi machine. Any local changes to the host must be using:</p>
<ul>
<li>DCUI (Direct Console User Interface).</li>
<li>vSphere Client or vCLI connecting to vCenter.</li>
<li>vSphere Client or vCLI connecting to ESXi with a local user account on the host.</li>
</ul>
<p>My colleague Duncan Epping has summarized <a href="http://www.yellow-bricks.com/2010/03/23/esxi-lockdown-mode/">a table</a> showing whether you can change ESXi with different access methods in two modes.</p>
<p>As a general practice for better security, it’s recommended to enable lockdown mode. However the lockdown mode could be breached by adding root user to local groups, <span id="more-1296"></span>according to <a href="http://communities.vmware.com/docs/DOC-12306">vSphere Hardening Guide </a>( see HCN03 on page 48). You may want to read it carefully.</p>
<p>You can manage lockdown mode through vSphere Client or DCUI, but not from public API until vSphere 4.1. As you would expect, there are two methods defined with the HostSystem type in <a href="http://vijava.sf.net">vSphere Java API</a>:</p>
<pre class="brush: java;">
public void enterLockdownMode() throws HostConfigFault, RuntimeFault, RemoteException;
public void exitLockdownMode() throws HostConfigFault, RuntimeFault, RemoteException;
</pre>
<p>These two methods are pretty straightforward. To call these methods, the user must connect to vCenter and have “Host.Config.Settings” privilege though.</p>
<pre class="brush: java;">host.enterLockdownMode();</pre>
<p>or,</p>
<pre class="brush: java;">host.exitLockdownMode();</pre>
<p>How to tell whether an ESXi host is in lockdown mode? You can easily tell from the “config. adminDisabled” sub-property as shown in the following code:</p>
<pre class="brush: java;">boolean lockeddown = host.getConfig().getAdminDisabled();</pre>
<p>Please note this code works *ONLY* while you connect to vCenter directly, the same requirement for calling the two methods.
<p><strong>Author:</strong> Steve Jin is the author of <a href="http://amzn.to/97ZyAg">VMware VI and vSphere SDK (Prentice Hall)</a>, creator of <a href="http://vijava.sf.net">VMware vSphere Java API</a>. For future articles, please subscribe to <a href="http://feedburner.google.com/fb/a/mailverify?uri=Doublecloud">Email</a> or <a href="http://www.doublecloud.org/feed">RSS</a>, and follow on <a href="http://www.twitter.com/sjin2008">Twitter</a>.</p>
<h2  class="related_post_title">Related Posts</h2><ul class="related_post"><li><a href="http://www.doublecloud.org/2010/08/uuid-vs-vsphere/" title="UUID vs. vSphere">UUID vs. vSphere</a></li><li><a href="http://www.doublecloud.org/2010/08/how-to-create-linked-virtual-machines-with-vsphere-api/" title="How to Create Linked Virtual Machines with vSphere API?">How to Create Linked Virtual Machines with vSphere API?</a></li><li><a href="http://www.doublecloud.org/2010/08/ruby-to-manage-and-automate-vmware-vsphere/" title="Ruby to Manage and Automate VMware vSphere? ">Ruby to Manage and Automate VMware vSphere? </a></li><li><a href="http://www.doublecloud.org/2010/08/announcing-vsphere-java-api-2-1-ga-release/" title="Announcing vSphere Java API 2.1 GA Release">Announcing vSphere Java API 2.1 GA Release</a></li><li><a href="http://www.doublecloud.org/2010/08/how-to-get-event-type-with-vsphere-api/" title="How to Get Event Type with vSphere API?">How to Get Event Type with vSphere API?</a></li></ul><img src="http://feeds.feedburner.com/~r/Doublecloud/~4/q8KOfkEWAdQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.doublecloud.org/2010/08/manage-lockdown-mode-with-new-api-in-vsphere-4-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.doublecloud.org/2010/08/manage-lockdown-mode-with-new-api-in-vsphere-4-1/</feedburner:origLink></item>
	</channel>
</rss><!-- Dynamic page generated in 0.522 seconds. --><!-- Cached page generated by WP-Super-Cache on 2010-08-30 00:02:54 -->
