Conventional wisdom has it that if you want to make use of "the
cloud," you've got to use someone else's service -- Amazon's EC2,
Google's clouds, and so on. Canonical, through its new edition of
Ubuntu Server, has set out to change all that. Instead of using
someone else's cloud, it's now possible to set up your own cloud --
to create your own elastic computing environment, run your own
applications on it, and even connect it to Amazon EC2 and migrate
it outwards if need be.
Ubuntu Enterprise Cloud, or UEC for short, lets you create your own
cloud computing infrastructure with nothing more than whatever
commodity hardware you've got that already runs Ubuntu Server. It's
an implementation of the Eucalyptus cloud-computing architecture,
which is interface-compatible with Amazon's own cloud system, but
could, in theory, support interfaces for any number of cloud
providers. Since Amazon's APIs and cloud systems are broadly used
and familiar to most people who've done work with the cloud, it
makes sense to start by offering what people already know.
A UEC setup consists of a front-end computer -- a "controller" --
and one or more "node" systems. The nodes use either KVM or Xen
virtualization technology, your choice, to run one or more system
images. Xen was the original virtualization technology with KVM a
recent addition, but that doesn't mean one is being deprecated in
favor of the other. If you're a developer for either environment,
or you simply have more proficiency in KVM vs. Xen (or vice versa),
your skills will come in handy either way.
Keep in mind you can't just use any old OS image, or any old
Linux image for that matter. It has to be specially prepared for
use in UEC. As of this writing Canonical has provided a few basic
system images that ought to cover the most common usage or
deployment scenarios.