Object Model of VMware vCloud API: The Big Picture in 2 Minutes

VMware released the long-awaited vCloud API at VMworld 2010. The API is based on REST with 75 URLs defined in the user related part as you would find in the vCloud API Specification and vCloud API Programming Guide.

I am an OO guy (I am sure many of you are as well), and find it difficult to go through the 75 URLs and numerous XML tags as either input or return. These URLs are like trees in a forest. But where is the forest?

Bothered by SLOW Web UI to manage vSphere? Want to manage ALL your VMware vCenters, AWS, Azure, Openstack, container behind a SINGLE pane of glass? Want to search, analyze, report, visualize VMs, hosts, networks, datastores, events as easily as Google the Web? Find out more about vSearch 3.0: the search engine for all your private and public clouds.

So I decided to create and show you a UML diagram (shown below) so that you can easily capture the key concepts of the vCloud API. In fact, there was a similar diagram in the programming guide of version 0.8.

After studying the diagram and the types, you can understand the overall conceptual model on what to expect with vCloud and the API. You can also understand what to expect from the URLs by associating three operations with each type:

1.     get, which lists the content of an entity, and possibly its child entities.

2.     modify or set, which changes the existing settings. Depending on the complexity of the entity, there may be multiple operations, each of which changes a section of the overall settings.

3.     remove or delete, which destroys an existing entity.

There are other operations, including power on and power off vApps, virtual machines, etc. But the above three types of operations represent more than half of the URLs.

If you are interested to know more about REST and OO, you should read my previous blog: REST or SOAP.

This entry was posted in Cloud Computing and tagged , , . Bookmark the permalink. Post a comment or leave a trackback: Trackback URL.

One Trackback

  • By PHP Power Button: VMware vCloud SDK on October 16, 2010 at 5:18 pm

    […] are curious about what the object model for vCloud API would look like in a picture, head over to Steve Jin's blog for the UML […]

Post a Comment

Your email is never published nor shared. Required fields are marked *


You may use these HTML tags and attributes <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>


    My company has created products like vSearch ("Super vCenter"), vijavaNG APIs, EAM APIs, ICE tool. We also help clients with virtualization and cloud computing on customized development, training. Should you, or someone you know, need these products and services, please feel free to contact me: steve __AT__ doublecloud.org.

    Me: Steve Jin, VMware vExpert who authored the VMware VI and vSphere SDK by Prentice Hall, and created the de factor open source vSphere Java API while working at VMware engineering. Companies like Cisco, EMC, NetApp, HP, Dell, VMware, are among the users of the API and other tools I developed for their products, internal IT orchestration, and test automation.