Archive

Archive for the ‘vSphere API’ Category

What’s New in vSphere 5.1 SDK and APIs

October 31st, 2012 2 comments

I know it’s well past the GA date of the product on September 10, but I still decide to write this what’s new for the completeness of vSphere SDK FAQs.

As I always emphasize, the SDK/APIs are “view” to the product (you can think it as “model” here). Therefore to understand a SDK/APIs, it’s important to check out the product first. No exception for the new features: what’s new in vSphere decides what’s new in vSphere SDK/APIs. For that, you want to check out the What’s New in VMware vSphere 5.1 at VMware website.

VMware vSphere SDK with Visual Studio 2012

October 30th, 2012 7 comments

While trying latest Microsoft Visual Studio 2012 Express, I also played with the C# samples of the VMware vSphere SDK. Unfortunately, there isn’t direct support for VS 2012 but for VS 2010, 2008, and 2005. However, you can easily create project files for the VS 2012 by yourself assuming you are already familiar with the Visual Studio environment.

Announcing Public Beta of VI Java API 5.1 Supporting vSphere 5.1

September 23rd, 2012 6 comments

After VMware released the vSphere 5.1 on the night of September 10, I finally got a chance to look at the new vSphere API, including the API reference and more important to me the WSDL files.

I was relieved to find out that there weren’t many changes. No single managed object is added to the vSphere 5.1 API, meaning a lot less work than I thought for vijava API to support the latest vSphere 5.1.

Categories: vSphere API Tags: ,

Support Next vSphere Release in VI Java API: The Plan and Work Around

June 25th, 2012 No comments

Recently I got several questions and even a bug on supporting the next release of vSphere in the open source VI Java API. The questions are mostly from VMware partners who have early access of the private beta of next release of vSphere and want to ship their own products at the same time of vSphere GA. I figure more partners may have the same question, therefore decide to answer it all here with a possible work around.

Categories: vSphere API Tags: ,

Open Source VI Java API 5.0.1 Released

May 18th, 2012 21 comments

While preparing this annoucement, I realize that on the same day last year we had a very successful community event with several techtalks to celebrate the 3 year of vijava open source project. Today it’s the 4th year of this project!

Since VI Java API 5.0 GAed last October, there have been some changes, one of which is that I left VMware and joined VCE the same month. On the project side, there are several new bugs opened with the forum. These bugs do not affect most developers. But still I fixed them quickly in the code repository so that anyone who was affected could get the fixes from there.

Categories: vSphere API Tags:

Cisco Nexus 1000V in VMware vSphere API

April 23rd, 2012 4 comments

While working at VMware, I always wondered what Cisco Nexus 1000V looked like from VMware vSphere API. Because I didn’t have access to such a system, I had no way to investigate further. This remained a myth to me until I joined VCE where I found many Vblock systems with Cisco Nexus 1000V as part of standard configuration.

Within VMware vSphere API, there are two managed object types defined related to distributed virtual switch:  DistributedVirtualSwitch, and VmwareDistributedVirtualSwitch. As you can guess, the latter type is a subtype of the first one.

vSphere APIs for Guest Operating System Management: What’s Special and When to Use It?

March 19th, 2012 13 comments

This is a wrap-up post of recent series on vSphere guest operating system management APIs. If you missed them, here are a few links to related posts: [Note: these are not related to the vSphere Guest API.]

How to Upload File to Guest Operating System on VMware

March 12th, 2012 31 comments

My last post explained how to download file from a guest operating system. Naturally this post is about how to upload file. After a quick sample code, I will discuss how to extend the capability of existing APIs that run program inside guest operating system. My next post will wrap up this series of guest related APIs in vSphere API.

Let’s take a look at a sample code: (To run it, first check out the simple prerequisites in a previous post)

How to Download File from Guest Operating System on VMware

March 11th, 2012 23 comments

In my last few posts I discussed how to use the Guest Operating System Management API to run program, set/read environment variables. From this post, I will talk about how to move files to and from a Guest Operating System, and advanced features like moving whole directory only implemented in the Guest Operating System Management API.

Set Environment Variables in Guest Operating System on VMware

March 7th, 2012 No comments

While reading my last post on reading environment variables from a guest operating system, you may wonder how to set environment variables. Don’t be disappointed if I tell you that there is NO direct support for setting an environment variable.

However, you have a workaround – use a command directly. Unlike reading variables, there is no standard ways to do it for different operating systems. You have to first figure out what type of operating system and then run different commands. For example, if you are targeting Windows family of operating systems, you simply run the following:

Read Environment Variables in Guest Operating System on VMware

March 6th, 2012 12 comments

My last post explained how to run, kill, and list programs in guest operating system on VMware. In that post, I mentioned that you can actually use the same API, GuestProgramDirector in particular, to read environment variables. I think the explanation is detailed enough for an implementation.

Still, a good sample provides more details. That is why I decided to write a quick sample just to show how to read environment variables. While trying the sample by myself, I did find more that I will discuss after the sample code.

Run, Kill, and List Programs in Guest Operating System on VMware

March 5th, 2012 25 comments

In my last article, I announced the Guest Operating System Management API for vSphere. As promised, I will write samples to show how to use the APIs. This post explains the GuestProgramDirector type with an example.

Let’s take a quick look at the following sample:

Announcing Guest Operating System Management API for vSphere

March 5th, 2012 13 comments

Having created a sample to run a program in guest operating system using GuestProgramManager, I started to write a similar one to show how to use the GuestFileManager. Compared with the GuestProgramManager, the GuestFileManager is much more complicated to use.

Run Program in Guest Operating System on VMware

February 27th, 2012 51 comments

Integrating VIX API into vSphere API is a great decision VMware made for its vSphere 5.0 release. Instead of working on two separate APIs, you now have one to deal with. It also solves the portability issue of VIX APIs which is tied to a specific platform – VIX has three versions for Windows, 32-bit Linux, and 64-bit Linux.

Announcing Code Generator For vSphere Java API

February 1st, 2012 12 comments

As I tweeted last week, there would be a big announcement when the open source VI Java API gets 20,000 downloads. It hit target yesterday. To celebrate it, I decide to release the code generator for the API, which William (@lamw) rated as “awesome.”

Why vSphere PropertyCollector Is Hard By Design?

January 18th, 2012 7 comments

If you’ve had a chance to use vSphere Web Service SDK, you must know the PropertyCollector is very hard to use. It takes a newcomer quite some time to learn how to use it, and even more time to learn to use it effectively. Luckily, you no longer have to if you use the open source vSphere Java API (a.k.a. vijava) because it has encapsulated the PropertyCollector behind these newly added getter methods of the managed object types.

What Roles Does A User Have in vSphere?

November 30th, 2011 8 comments

If you have read my previous article on vSphere security model, you know how it works. Still, you may wonder what roles a particular user may have, as asked in a recent email from one of my former VMware colleagues.

In an operating system, a user is assigned to a group or multiple groups therefore granted a certain permissions. In vSphere, a role is simply a set of privileges and that is it. It’s natural to think of a role as a group sometimes, but it’s really not.

Categories: vSphere API Tags: ,

Discontinuous Response Stream from vSphere

November 28th, 2011 6 comments

Last month a question was raised in our open source vSphere Java API forum regarding an exception during HostSystem.getSummary() method call. As you can see from the stack trace, the actual exception was “org.dom4j.DocumentException.”

The Future of VI Java API and How You can Help

October 26th, 2011 12 comments

Upon hearing about my leaving VMware, quite a few members in the community sent me emails or tweets asking about the future of the API. Most of them have built products or automation scripts using the API, therefore would like to see the continuous success of the open source project. I am sure there will be more inquiries coming without this post.

Categories: vSphere API Tags:

VI Java API 5.0 GA Released

October 2nd, 2011 4 comments

It’s been one plus month since I pushed out the beta code which has since been downloaded more than 700 times. As promised, I am happy to announce the GA of VI Java API 5.0 today. This is the fourth major release after 1.0, 2.0, and 2.1 which are all shipped on time. Predictability is important for commercial products, even so for open source projects like this. I think we’ve demonstrated it in the past three and half years since the first release in May 2008.

Categories: vSphere API Tags: