I'm wondering if anyone has gone down this route before, and has any
experiences that they can share.

We're looking to possibly creating a new build server. It seems (to me)
that SmartOS would make an ideal host OS for running builds. (SmartOS is a
Joyent-derived Illumos(Solaris) derivative focussed on "the cloud"), which
has some nice features:

- Native ZFS support (copy-on-write filesystems)
- Solaris 'Zones' (light-weight containers -- virtualization without so
much of the overhead)
- KVM (so 'foreign' OS' can be virtualized)

The mechanism I'm thinking of is that for every build triggered, a new zone
(akin to a VM) is created (this is essentially very cheap, as it's just a
ZFS clone of a filesystem), the build is run in that zone, and on
completion the zone is stopped. If someone wanted access to that build, all
they would have to do is spin the zone back up.

Now, it seems like there are several 'cloudy' plugins that might be good
candidates for this - each of which relies on different underlying libraries

libvirt plugin (libvirt)
vSphere Cloud, Lab Manager (VMWare)
Delta Cloud (Apache DeltaCloud)
JClouds (JClouds)
VirtualBox plugin (Virtualbox)
Amazon EC2 plugin
Cloudformation (AWS)

Now I could probably roll my own (probably amounting to SSHing to the
server and executing shell commands) or adapt an existing one, if it had
support for SmartOS / Zones; most likely is probably Delta Cloud, JClouds
or libvirt - but none of those seem to explicitly mention solaris zones.
And that's before I begin to look at the zillion other APIs out there.

Anyone have any experiences to share?

Reply via email to