Monthly Archives: July 2010

VMware Technology Exchange for Developers at VMworld 2010

VMware TechExchange will take place in San Francisco in the same location of VMworld 2010 from August 30 to September 1st. If you want to learn VMware technologies especially APIs/SDKs including Spring framework, Zimbra, and etc., you should join us. I will present best practices on using VMware vSphere APIs. Hopefully we will GA the vSphere(VI) Java API 2.1 by then.

To convince your boss, please read the blog Pablo just wrote:

  1. vSphere 4.1 APIs has some significant improvements, specifically around the Property Collector and AD authentication. We will have sessions to update you on what has changed, provide best practices when using them and hear from our engineers who have hands on experience working with our APIs.  See our latest sessions added
Posted in News & Events | Tagged , , | Leave a comment

What’s Deprecated in vSphere 4.1 API?

In vSphere 4.1, several properties and types have been deprecated. The following table from vSphere Web Services SDK 4.1 release note lists each deprecated API element and its replacement.

Name of deprecated type, method, or property As of vSphere API 4.1, use instead…
Methods
PropertyCollector.CheckForUpdates PropertyCollector.WaitForUpdatesEx
PropertyCollector.RetrieveProperties PropertyCollector.RetrievePropertiesEx
PropertyCollector.WaitForUpdates PropertyCollector.WaitForUpdatesEx
VirtualMachine.AcquireMksTicket VirtualMachine.AcquireTicket
Data Objects
VirtualMachineMksTicket VirtualMachineTicket
Data Object Properties
Posted in vSphere API | Tagged , | Leave a comment

Cloud Architecture Design: Should it be Top-Down or Bottom-Up?

In my last blog, I discussed how to optimize workloads across the cloud. This is based on the assumption that you already have an existing infrastructure. What if you don’t have an existing cloud infrastructure but would like to design one from scratch? Here is what you should be thinking about to get the most from your new cloud.

But first let’s take a look at other types of infrastructures – say a road. When you design a new road, you have to collect data such as population densities around the area, people’s working schedules, what types of vehicles will run on the road, and so on. With that information, you can decide how many lanes you want, what kind of road surface is required, and so on. You don’t just make up the design specification from scratch, and lay down an eight-lane freeway everywhere.

The same process applies in designing the cloud infrastructure as well. Unfortunately this is not what we see often today.

Top-down approach

In my previous blog , I said infrastructure is a means and application is the end. We need to drive the design cloud architecture from the application perspective. This is what I call the top-down approach.

Posted in Cloud Computing | Tagged , , | 2 Responses

Workload Optimization: Is It a Must-have for Cloud Computing?

Cloud computing hasn’t changed the nature of computing – it just changed provisioning and management. That’s important to remember because workloads in the cloud are very much similar to what we see in traditional computing infrastructures. To get the most out of your investment in cloud services or in your own physical IT infrastructure, you need to understand how to optimize workloads.

Workload Categorization

Typical computing workloads involve four basic parts: computation, memory, networking, and storage. Almost all applications have these four parts but mostly not balanced.

Now let’s quickly review the essential categories of application workloads:

Posted in Cloud Computing | Tagged , | 3 Responses

Complete List of Managed Object Types in VMware vSphere API

The following tables list all the managed object types in VI 3.5, vSphere 4 and 4.1. A short description is provided for each type explaining its major responsibilities.

Note that the managed object types are added in an incremental way. The types in older versions are still supported in newer versions. The complete types in a verion include ones in the correpsonding table plus all the ones in all older version tables.

Hope this post gives you a high level overview of functionalities of the vSphere APIs. Check out other blogs such as best practices (1-5, 6-10) on how to use them in general. And don’t forget my book which introduces them extensively with many read to use samples.

Table 1 Managed Object Types in VI 3.5

Posted in vSphere API | Tagged , , , , | Leave a comment

Released: vSphere Java API 2.1 Beta for vSphere 4.1

Following the vSphere 4.1 release, I am pleased to announce the release of the vSphere(VI) Java API 2.1 beta that fully supports the vSphere 4.1. The 2.1 beta has been ready for limited access for months by VMware internal teams, and partners/customers who participated vSphere 4.1 beta program.

Posted in vSphere API | Tagged | 17 Responses

What’s New in vSphere 4.1 API?

VMware announced GA of vSphere 4.1 product this Tuesday. Here is the official what’s new in vSphere 4.1. Many bloggers already covered different aspects of the product itself: VMware vSphere 4.1: Advancing the Platform for Cloud ComputingUseful vSphere 4.1 knowledgebase articlesvSphere 4.1 releasedRelease: VMware vSphere 4.1, etc. I don’t repeat these here, but focus on the new APIs in 4.1 release.

In general, the APIs are the programatic “view” of features. Understanding the features helps a lot on understanding the APIs. So I strongly encourage you to read new features of the product itself. Note that not all the new features especially the performance and scalability features are explicitly reflected in API signatures.

vSphere API 4.1 introduces 7 new managed object types:

vSphere 4.1 adds 23 new methods to 10 existing managed object types:

Posted in vSphere API | Tagged , | 1 Response

When to Use Cloud? Example Use Cases

In my last post, I discussed when not to use cloud services. Basically you should avoid the cloud for your organization’s core competency IT systems.  Remember, cloud computing is not a silver bullet for everything.

Today I want to share the stories from the other side: when you should use cloud services. As a rule of thumb, you use cloud services for your non-core competency IT systems. But, what are the typical non-core competency systems?

There could be many cases in which you can use cloud services. Let me go through some of them by sharing customer experiences:

Outsourcing projects. If something is outsourced, most likely you don’t think it’s a core competency to your business. You can then leverage the full benefit that public cloud services bring to you. You can easily have workspace that is accessible by both your employees and contractors, and it’s more secure than opening up your own infrastructure to your contractors.

Posted in Cloud Computing | Tagged , | 6 Responses

When NOT to Use Cloud?

During the July 4th long weekend, I got the chance to read the book “Delivering Happiness” by Tony Hsieh. It’s a great book with many great ideas and lessons he learned from LinkExchange and Zappos.

So, how does this relate to cloud computing?

Here’s what Tony wrote…

“It was a valuable lesson. We learned that we should never outsource our core competency. As an e-commerce company, we should have considered warehousing to be our core competency from the beginning. Outsourcing that to a third party and trusting that they would care about our customers as much as we would was one of our biggest mistakes. If we hadn’t reacted quickly, it would have eventually destroyed Zappos.”

In this paragraph Tony summarized the lesson from contracting eLogistics for inventory services in Kentucky, which turned out to be a mess and almost killed Zappos when cash flow became a big issue.

From a business perspective, cloud services are not much different from the inventory services. Both are all about outsourcing. The high tech nature of cloud doesn’t change the business nature of cloud services. What happened to Zappos could potentially happen to any cloud customers.

Posted in Cloud Computing | Tagged , | 4 Responses

VMware Wants to Hear from You about vShere Java API

VMware launches an official survey on the open source vSphere(VI) Java API. Please let the company know your take on the open source project, and what you want, for example, formal developer support, etc.

The survey includes 16 simple questions and should take no more than 3 minutes to finish. All the collected information is confidential.

Note that the survey result decides what to come next. Please make sure your voice heard by taking the survey here.

Posted in vSphere API | Tagged | Leave a comment

System Provisioning in Cloud Computing: From Theory to Tooling (part 2)

Application Provisioning

With the right system configuration in place, it’s time to install the applications. So why not use the same tools we used for the OS and middleware? Do we need yet another set of tools?”

It depends. You can use the same set of tools for middleware to install some applications. The middleware appears like an application to the OS as well. The difference is whether your application is stable enough and whether you need to customize per node. The tools like Puppet can be good for stable applications that can be deployed the same way across all nodes. If your application is still a work in progress and you need flexibility to tweak it, you need more specialized application provisioning tools.

The big technical difference between application and middleware provisioning tools is that application tools push the application to the nodes and remotely change anything as needed. The process is procedural.

The middleware provisioning tools normally have agents on the nodes to pull the software based on the prescribed configuration files. The process is declarative.

Beyond the “push” and “pull” difference, the application provisioning tools can also manage the lifecycles of applications (sometimes called services) distributed on different nodes with a single line of command or code. Given the nature of remote command dispatching framework, the application provisioning tool can do almost anything. If there has to be a limitation, it’s your imagination.

So if you develop applications by yourself, you most likely need application provisioning tools.

Let’s see what tools are there.

Posted in Cloud Computing | Tagged , , , , , | Leave a comment
  • 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.