Category Archives: Virtualization

A Little Known Secret of vSphere Managed Object Browser

secretMost VI SDK developers know Managed Object Browser (MOB), and mostly have used it for better understanding of the SDK, or assisting programming and debugging. In my opinion, it’s a must-have  tool for every vSphere SDK developer.

It’s extremely helpful if you want to figure out the inventory path of certain managed entities. The vSphere Client shows you different paths which don’t work with the SearchIndex and others. Nothing wrong with vSphere Client – it just tries to display information in a way that is easier to understand by the system administrators.

Also posted in vSphere API | Tagged , , , | 15 Responses

Common Mistakes Using VMware VI and vSphere SDK

I posted two blogs on the top 10 best practices of using the vSphere SDK (part 1, part 2) two days ago. Here is a list of several common mistakes developers make during their development. It’s based on the stats from our SDK support team.

  1. Defining wrong interval information in PerfQuerySpec
  2. Using same unit number for each device attached to a controller
  3. Mistakes in defining the TraversalSpec
  4. Using case sensitive DNS names or IP address
Also posted in vSphere API | Tagged , , , | 2 Responses

Top 10 Best Practices Using VMware VI and vSphere SDK (part 2)

#6 Consider Views in Your GUI Application

Most developers don’t know much about the View and related managed objects. The reason for that is that they were mainly designed for VI/vSphere Client in the first place. But nothing stops you from using it to your advantages.

As you can imagine, you can use the View and its subtypes InventoryView, ListView, and ContainerView to monitor changes on the server side. It provides an efficient way to monitor for changes with only these visible in your GUI and nothing more. You can use ViewManager to create views according to your specific needs.

Also posted in vSphere API | Tagged , , , | 8 Responses

Top 10 Best Practices Using VMware VI and vSphere SDK (part 1)

VMware vSphere (as known as VI in earlier versions) SDK includes a comprehensive set of APIs managing the vSphere CloudOS. It can be used to build different types of applications: standalone GUI applications, vSphere Client plug-in, utility tools, Web applications, server applications. It is becoming increasingly important as more and more enterprises become 100% virtualized with vSphere.

Also posted in vSphere API | Tagged , , | 6 Responses

Get your hands dirty with self paced labs at PEX 2010

Besides the talks on VMware APIs, two self paced labs are there for you to try out the vSphere SDK and PowerShell at PEX. More details are quoted in later part.

As a bonus, you will get a chance to learn VI Java API in the SDK lab. Thanks to VMware TAM Alton Yu for making this happen! I will be there when I am not presenting my talk “Architecting Your Applications for VMware Cloud”, or helping on the BOF, genius bar, etc.

Also posted in Software Development, vSphere API | Tagged , , , | 2 Responses

What else do you want from next release of VI Java API?

After we released VI Java 2.0 GA for about half year, it’s about time to plan for the next release. My current plan is to have a synchronized release with next major release of vSphere. Therefore the must-have feature is to support next vSphere.

On top of that, here are several things we most likely do as well:

Also posted in vSphere API | Tagged , , , | 2 Responses

My contribution mentioned in VMware news release

Last week VMware released a news “VMware Expands VMware vCloud Developer Ecosystem With Open-Source Java and Python SDKs for VMware vCloud API”. It says,

VMware has also made a number of open-source contributions to the Cloud Tools project, which powers the SpringSource Cloud Foundry service, enabling Java developers to deploy, test, and manage applications for VMware environments via VMware vSphere(TM) and the VMware vCloud API.

Also posted in Cloud Computing, vSphere API | Tagged , , , , , , , | 2 Responses

Why does C# Web Service code look weird?

Today I read a posting at VMware community forum about the weird code required by C# Web Service. If the following line is missing, then the vSphere API call to get properties doesn’t work:

VimApi.VimService.PropertySpec.allSpecified = True 

But the problem is that there isn’t any property defined as allSpecified in the object PropertySpec according to vSphere API Reference.

So, where does the allSpecified come from? and why is it needed?

Also posted in Software Development, vSphere API | Tagged , , | Leave a comment

Tips on session management for scaling your server applications to vSphere

Our business team invited me to a phone call with one of our strategic partners days ago. They had a scalability issue with their server application. It turned out to be related to session management. I think they are not the only one who got into this type of problems, and most likely not the last one. So I decide to share it and hopefully you can avoid similar problems in your projects.

Also posted in vSphere API | Tagged , , , , , | 5 Responses

Why DoubleCloud? The mission statement in short

After setting up this blog site, I updated my LinkedIn profile. This morning, my colleague Gilbert left me a comment saying “why not hybrid cloud?” I know he was kidding, but it’s a good time to explain why I got this name.

The basic idea behind the name is the following equation:

DoubleCloud = PublicCloud + PrivateCloud

or as some people prefer

DoubleCloud = ExternalCloud + InternalCloud

Also posted in Cloud Computing, Software Development, vSphere API | Tagged , | Leave a comment

Tips working with older versions of VMware Infrastructures using VI Java API 2.0

Among many well know improvements like huge performance boost, VI Java API 2.0 has a big feature that we don’t talk much. It’s the full compatibility: one library for all the existing version from 2.0, 2.0 to 4.0.

Also posted in Software Development, vSphere API | Tagged , , | Leave a comment

REST or SOAP?

REST or SOAP?

REST is acronym for Representational state transfer (REST). It is a software architecture style for distributed computing system such as Web.

For whatever reason, it got so popular today that many people equals the future of Web Services to REST. It’s true that REST based API is easy to understand with simple HTTP request/response messages in XML format. You can get some work done using text editor plus web browser.

Also posted in Software Development, vSphere API | Tagged , , | 2 Responses

5,000 downloads and future directions

Happy new year! A new posting is way overdue after I set up the blog early last December.

Today, we surpassed 5,000 downloads. This is an important milestone for the project as it indicates the adoption of this powerful yet easy-to-use API has reached a new level.

Also posted in Cloud Computing, vSphere API | Tagged , , | 1 Response
  • NEED HELP?


    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.