Virtualization Technology News and Information
Article
RSS
VMware Infrastructure 3.5 Plugin and Extension Programming Guide

As anticipated, Andrew Kutz from Lostcreations has now released The VMware Infrastructure 3.5 Plugin and Extension Programming Guide - Revision 1.  It is quite clear from the disclaimer found in the document, this guide is in no way sponsored or supported by VMware.

Inside the guide, is the following introduction:

If you are reading this, then you have shown an interest in creating client plugins and server extensions for VMware Infrastructure 3 (VI3). Already a very capable virtualization solution, the ability to extend VI3 beyond its original intent is what makes the plugin architecture so powerful. From incorporating graphical storage VMotion (SVMotion) functionality in the client to implementing the first application-level high availability (HA) system, the VI3 plugin architecture allows third-party developers to customize VI3 into exactly the virtualization infrastructure that they need.

You may be wondering, if VMware had intended for developers to write plugins and extensions for VI3, then why have they not release official documentation for that purpose? The answer is quite complicated, but the short version is that the plugin architecture, in its current state, is not something that VMware feels comfortable sharing with the world. That is not to say that it is not a great architecture. Not at all, and in fact the engineers at VMware should be commended creating a great set of brand new application programming interfaces (APIs) for third-party VMware developers to use. When VMware does make the plugin architecture publically available, there will be a lot of happy people.

If VMware is not ready to release the architecture, then why write this document? Well, the answer is simple really. The VI 2.5 client is a powerful administration tool, but it lacks functionality that takes advantage of some of the VirtualCenter 2.5 and ESX 3.5 features. It would be painful to see external tools being created to leverage this server functionality when the VI client already offers such a wealth of common APIs. So, while VMware created the plugin architecture to fill a need, this document proposes to fill one as well – provide a useful resource for third-party developers who wish to create VI3 client plugins and server extensions.

This paper focuses on educating developers on:

Client Plugin Architecture
This includes where plugins are installed, how the VI client discovers local plugins and ones advertised on the VC server, and finally how to create a client plugin.

Server Extension Architecture
Includes how to register server extensions and how to make client plugins centrally available.

Tomcat Architecture
Discusses how the VirtualCenter Tomcat installation impacts server extension daemons.

Database Schema
Review the new VirtualCenter database tables that are related to extensions.

Creating Windows Installers
Reveals some problems with creating Windows Installers for server extensions.

Namespaces
Details the namespaces and assemblies VMware provides to create plugins and extensions.

Terminology
Coins new terminology that developers can use when discussing the above concepts.

You can download this guide, here.  Thanks Andrew!

Published Wednesday, February 20, 2008 6:48 PM by David Marshall
Comments
There are no comments for this post.
To post a comment, you must be a registered user. Registration is free and easy! Sign up now!
Calendar
<February 2008>
SuMoTuWeThFrSa
272829303112
3456789
10111213141516
17181920212223
2425262728291
2345678