My apologies to everyone for getting this out now for our discussion
later this afternoon.

Cheers,

-- 
Glenn
-------------- next part --------------

Preliminary design outline for generating pre-constructed virtual
machine disk images via Distro Constructor.

Purpose:

To be able to construct a virtual machine disk image via the Distro
Constructor in a 'hands-off' manner given an arbitrary set of packages
for the purpose of distributing the disk image as a pre-installed
OpenSolaris environment.

While we're primarily targeting VirtualBox for the constructed disk
image we should be able to support other hypervisors that support the
Open Virtual Machine Format[1] which is what we'll use for the
constructed images.

Premise:

We can use Distro Constructor to perform an automated, hands-off
installation of OpenSolaris inside VirtualBox controlled from a Host
system running Distro Constructor.

To support this premise, we will need to create a new output image type
for Distro Constructor which we'll call the Portable Virtual Machine
Construction Appliance.  This new image type will be a slimmed down
version of the OpenSolaris liveCD which contains just enough operating
system to boot, run Distro Constructor with a supplied xml manifest and
successfully generate an installation inside a virtual machine on a
virtual hard disk in a 'hands-off' manner.

This image can include an xml manifest (supplied by the operator) which
outlines what the installed image should contain (similar in nature to
the slimcd manifest).  Optionally, I'd like to construct this image in
such a way as to be able to read a manifest from some arbitrary location
(NFS, HTTP, FTP, USB) during startup if possible.  This would increase
the flexibility of this image in that you wouldn't have to regenerate it
if you wanted to just change the definition of the installed image.
This means that the Portable Virtual Machine Construction Appliance iso
will not contain an installation payload like the liveCD.  Instead it
will pull packages from an IPS repository specified via the new xml
manifest mentioned below.

We will also need to enhance Distro Constructor to perform an
'installation' inside a virtual machine via a new xml manifest which
outlines what to install (somewhat similar to the process for
constructing the OpenSolaris liveCD).

HOST machine requirements:

o Running OpenSolaris
o Up-to-date copy of SUNWdistro-const
o Up-to-date copy of VirtualBox (or at least the version you want to
  generate an image for) that supports OVF
o Network access to an IPS repository
o Sufficient memory to run a VirtualBox guest in addition to the Host OS
o XML manifest outlining what the constructed virtual machine should
  contain and how it should be configured

Construction Process outline:

1. Create an xml manifest used by Distro Constructor to install the
   VirtualBox guest
2. Generate the Portable Virtual Machine Construction Appliance iso
3. Configure a virtual machine in VirtualBox via Distro Constructor
   to be used as the installation target
   a. will need to configure a valid network configuration such that the
      virtual machine can access the IPS repository specified in the
      manifest
4. Boot the virtual machine with the Portable Virtual Machine Construction
   Appliance iso
5. Distro Constructor performs an installation inside the virtual machine
   according to the supplied xml manifest.
   a. will need to perform some type of validation of the supplied
      manifest (valid IPS repo for instance)
5. Export the virtual machine disk image from VirtualBox so it can be
   distributed

-----------------------------------------------------------------------

(1) - http://www.dmtf.org/standards/published_documents/DSP0243_1.0.0.pdf

Reply via email to