Here’s my PowerShell top five, hope to see you next week.
Thanks to everyone for you hard work and contributions to our VI Toolkit Scripting contest.
Now the time has come to announce our winners!
First Prize: Our first prize, a trip to VMworld, goes to LucD for his script, which is a really cool Guest Provisioning System.
I really like Luc’s application
because it very easily lets you clone lots of VMs, while giving you
control over a lot of the parameters that are frustratingly manual when
you try to do them with other VMware tools. Not only that, but you can
queue up tens or even hundreds of clone jobs and run them all with the
press of a button. This is especially useful since cloning VMs can take
a really long time.
Not only that, but as you can see above, this is not just some
script meant to be run on a grainy old CRT terminal, it’s a full
fledged UI. Speaking of its really cool UI, Bruce Payette, one of the
key designers of PowerShell and author of the book PowerShell in
Action, had this to say about it: "This is exactly the kind of
application we were thinking about when we made PowerShell able to work
Those of us who follow the VI Toolkit for Windows community know Luc
quite well, as he has contributed countless great scripts and has
really made a difference to a lot of people. So again, congratulations
to Luc and we hope to see you in Vegas!
I got asked this today, because this post is now out of date and the location of Andrew Kutz’s VC plug-ins have moved from his original site lostcreations. I’m throwing this up here so Google can lead others to the right place. Specfically, he’s got the Console, Invoke, and SVMotion plug-ins up there. His guide to his back-door plug-in methodology (which remember is unsupported and is being superceded by official mechanisms) is on his publications page.
You can access all of my VMware utilities at http://code.google.com/p/akutz/.
There have been several requests for these utilities, and I simply do
not have the time right now to create binaries for all of them. I am
also waiting to see what will happen at VMworld and how it affects the
plug-in architecture. Once that is more definitively known then I will
resume my work on plug-ins.
Not that you need to be reminded but just in case some of you forgot –
our PowerShell Scripting contest closes in just two short weeks !
If you are not up for a Free trip to VMworld the $5,000 of extra cash
might help with back to school expenses… The MacBook Air as a second
prize is also very nice .
Hurry contest ends – August 30, 2008, 11:59pm PST
Winners will be announced Sept 7th, 2008
For more information http://vmware.com/go/powershellcontest
[Update: mark your calendars for the VI Toolkit (for Windows) webinar on August 7.]
I think I’ve made it clear that I believe the VI Toolkit (for Windows) is one of the most powerful tools VMware has ever made for VI admins. It’s designed at just the right level of abstraction that lets a VI admin carry out commands with a very natural syntax — the commands and objects you want are just right there. It’s built on a technology (PowerShell) that is a damn powerful scripting language that lets you pipe objects between scripts, er, cmdlets. And it’s built on top of the VI SDK, which is enormously powerful (and complicated!), basically giving you access to everything that VC and the VI Client can do. And of course, you’re accessing the most powerful, robust, and complete hypervisor in existence. I will have to admit that the name isn’t my favorite and is
(pretty) awkward to say (and type), and doesn’t even mention
PowerShell, but we won’t hold that against poor little VI Toolkit (for Windows). Once you put that stack all together, in just a few lines of code, you will find you now have amazing VI super powers.
So first of all, although it leaked out earlier this week, the VI Toolkit (for Windows) 1.0 is truly and officially now generally available. Even if you don’t normally consider yourself a scripter, every VI admin should check this out.
And I also think the team has done a great job connecting with the community, both at the VI Toolkit (for Windows) forum here at the VMware Communities, as well as with the greater PowerShell community. Lots of excitement, lots of contributed code, books on the way. People were blogging about this even before the NDA was lifted (I’m looking at you, Sloof), and product manager Carter Shanklin has gone out and connected, podcasted, and social networked his way around the world. (If any social media types are reading this, there’s a case study here.)
When you release an enablement tool like this, part of its process of creation is the co-creation together with the community — ok, here are the raw commands, now what can you do with it? What problems can you solve? How easy can you make it? Is the itch you need to scratch one of reporting, provisioning, maintenance? Something complex with one ESX server or something automated with dozens? To that end, Carter and Pablo scared up some extra cash and have announced the VI Toolkit (for Windows) PowerShell Scripting Contest.
The first prize is a trip to VMworld 2008 in Las Vegas; second prize is a MacBook Air; and third prize is an XBox 360 Elite. Or you can take the cash and run. They’re looking for realistic, elegant scripts that solve real world VI administrative problems. The deadline is August 30, so if this is up your alley, go ahead and get started. The worst thing that could happen is that you learn a lot more about VI Toolkit (for Windows), and I guarantee you that will not be bad for your career.
[Update: mark your calendars for the VI Toolkit (for Windows) webinar on August 7.]
If you’re at all interested in scripting and automated ways to manage your VMware Infrastructure (lazy? I prefer to use the term ‘efficient’), you should already be getting familiar with the VI Toolkit (for Windows) that uses PowerShell to smash everything in its path, currently in beta. The crew over there have made an amazing tool, and the community continues to dream up new ways to use it.
But since we have a full toolbox, and since all problems are not solved with a hammer, let’s not forget about some other finely crafted implements that our product teams have created. Last week Carter Shanklin kicked off the new VIX API Blog, with a good intro on why you’ll want this crowbar — guest accessbility.
If you’ve used the VI API,
you’re probably wondering why you should look at VIX. The reason is
pretty simple, the VIX API provides critical functionality that the VI
API lacks, for instance:
- VIX allows you to copy files in and out of guests.
- VIX allows you to start and stop processes within guests.
- With a bit of trickery you can run programs in the guest and get their output (more on this in another post).
In short, VIX allows you to treat the VM as more than just a black box, something none of the other APIs can do today.
(Because we include lots of screen shots in this video, I recommend hitting the little rectangular "full-screen" icon above and avoid straining your eyes.)
- Ask questions at the VProbes Expert Session
- VProbe Toolkit at Sourceforge
- VProbes Reference Guide (pdf)
I asked VMware engineer Keith Adams to tell me about the new VProbes functionality first available in Workstation 6.5 and we made this little video together. If you’re familiar with DTrace, you will get the idea, but now imagine it from outside the VM and independent of the OS (both things we here at VMware specialize in).
Keith talked about VProbes last year in this blog post:
VProbes attempts to provide a set of tools for answering the question,
"What the heck is this computer doing?" It’s an open-ended question, so
vprobes is accordingly open-ended, as well. In its current form, it
provides an interactive, safe way of instrumenting a running VM at any
level: from user-level processes down to the kernel, and even into
VMware’s VMM and hypervisor, if need be.
I’m not sure if VProbes is useful out of the box for VI admins yet, but it’s a powerful tool if you’re interested in instrumenting your virtual machine.
As a simple trick, in this video Keith shows off a top replacement that is almost non-impactful to the VM it’s monitoring and works on either Windows or Linux. He also can look at what your OS is doing from the machine instruction of its birth to its final shutdown. Pretty powerful and cool stuff to build on.
Here’s a new post from our Developer Center Blog. Welcome, Steve, to the virtualization blogosphere! Check out the Developer Center and Developer Community if you haven’t for a while. A lot of solid resources for you. Link: VMware Communities: Developer Center Blog: Announcing client side Java APIs (experimental) and samples for VI SDK.
This is Steve from VMware CoDevelopment Engineering. I would like to
share with you the client side Java APIs and some samples I have
This API package:
- Enables OO programming with a well defined managed object model
- Reduces the need to use ManagedObjectReference
- Hides the complexity of the PropertyCollector
- Provides necessary utility classes to simplify VI SDK web interfaces
- Keeps it small and simple
- Leverages current VI SDK web services interface while keeping it intact
VMware has released an official guide to writing VC plugins: see VMware Infrastructure (VI) SDK 2.5. Note:Support for VI Client Plug-ins is Experimental, and is subject to change in future releases.
VI Client Plug-ins
With the release of VirtualCenter 2.5, VMware offers third-party
developers and partners the ability to extend the VMware Infrastructure
Client (VI Client) with their own product-specific menu selections or
toolbar icons that provide access to external, Web-based functionality.
These extensions, or VI Client Plug-ins, comprise the
set of configuration files, URLs, icons, and Web-server-hosted
resources that work together to display extended menu items, icons, and
other user interface (UI) items in the VI Client and provide access to
the external functionality.
Stu @ vinternals likes it. Link: vinternals: First Official VI Client Plug-in Document Released – round of applause for VC architects / devs!.
Outstanding! On the coding side, it looks so straight forward that
even a hacker like me should be able to put something together fairly
easily… running off the example in the document, you could pretty
easily add a context menu item to ESX hosts that fires up the out of
band management web interface (ie the iLO page for HP kit) of that
In related news, Schley Andrew Kutz, who managed to reverse engineer the plugin SDK before this, is writing a book for O’Reilly. He’s asking for feedback and/or code samples at VMware Communities. Link: VMware Communities: Announcing "Programming and Managing ….
This book will be the definitive guide for systems administrators
and developers eager to make use of the VI and CIM SDKs. The book shows
their use with several popular languages, including the VI Perl Toolkit
and VI Toolkit (for Windows) as well as C#, Java, and Python. Advanced
topics, such as creating client plugins and communicating with VMware
through its web service, are also covered.
This text demystifies the VI SDK, transforming the difficult task of searching the VI inventory into a simple one.
Pablo: You must be excited about releasing the VMware Virtual
Disk Development Kit, can you tell us why our developers should be
interested in it?
Hari: Yes. With VMware Virtual Disk Development Kit we are
enabling a new eco-system of partners to develop solutions that
integrate with VMware virtual disk. The VDDK is an open SDK that
developers can use to build cutting edge applications for creating and
accessing VMware virtual disk storage.
Pablo: What are some of the use cases for using the VMware Virtual Disk Development Kit?
Hari: Virtual Disk Development Kit provides easy access to VMware virtual disk storage.
This enables a wide range of use-cases for application vendors including:
- Creation of virtual machine disk files to store backup of physical images
- Read access to virtual disk to enable off-line centralized scanning of virtual machines for anti-virus
- Write access to virtual disk to enable off-line centralized patching of virtual machines Read access to virtual disk to enable off-line software package analysis of virtual machines