Brilliant - I will do just that. I'd noticed your stream of commits to jcloud-plugin, so was secretly hoping that jclouds would be a viable route.. ;-)
Zones are a bit like LXC in linux. For many of our usecases where we have to stop builds treading on each others' toes (e.g: by not opening the same HTTP port), isolating them in a zone looks like a really nice mechanism. On Thu, Apr 26, 2012 at 5:15 PM, Andrew Bayer <[email protected]>wrote: > JClouds is working on adding joyent support, I believe. I don't know > anything about the zones thing, but I'd suggest emailing the jclouds list ( > https://groups.google.com/group/jclouds-dev) to see if they have anything > in the works there. If at all possible, I'd highly recommend using jclouds > as your underlying library, even if you don't use the jclouds plugin itself > - it's really, really useful. > > A. > > > On Thu, Apr 26, 2012 at 6:53 AM, Nigel Magnay <[email protected]>wrote: > >> 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? >> >> >
