Thanks for the pointer .. I'll follow this up.

The reason I'm asking is that we're (me and some guys at IBM) are working on something that will initialize multiple OS types on various hypervisor platforms. Of course, working for IBM this includes AIX and pSeries as well as Linux on System z :)

We're also looking into how to provide support for multiple hypervisors on Intel. For what we're doing we need to cover lots of ground and are looking at a common framework based on OVF that can:

Will initialize the network
Create needed user credentials
Provide call back mechanisms to the manager that started the VM (so the manager can track the startup progress, in this case VCL) Include an SSHD engine so we can contact the OS from the remote manager (regardless of OS)
Execute some arbitrary scripts to customize the image.

The above is a list of some of the functions. For us this is to help orchestrate a startup for multiple virtual machines in a "system".

We're also looking at using Python as the scripting framework (so we can get some cross-platform functionality using Java if needed).

If this is interesting let me know.


On Jun 9, 2009, at 10:25 AM, Andy Kurth wrote:

Hi Matt,
The OS tasks are handles by different OS modules. An OS object is created for each reservation being processed. The module which gets instantiated as the OS object depends on the OS of the image assigned to the reservation. I have begun some crude documentation on the steps involved in processing a reservation here:

I would start by looking at the following subroutines in

-pre_capture() - gets called before an image is captured
-post_load() - gets called after an image is loaded and SSH is responding -reserve() - gets called when the computer has to be configured for a particular user/reservation -sanitize() - gets called if a computer was reserved but the user never logged in

These methods are defined in the interface API for OS modules but there is still some work to do to get all of the OS modules aligned. The specification is here:

This page may also help (though my Gliffy diagrams somehow got messed up):

Please clarify if this isn't what you're looking for or have additional questions.

Hope this helps,

Matt Hogstrom wrote:
Can someone provide me a pointer in the tree that outlines the various ways OS instances are intiialized? I'm thinking of the low- level OS things like initial user IDs, network information, startup scripting, etc. Specifically, I'm looking for how this is handled for multiple OSes. I'll poke in the tree but if someone has a quick pointer that would be appreciated.

Reply via email to