In order to successfully run Ubuntu Enterprise Cloud, we had to have at least two dedicated systems. One is used for the front-end applications, which include a Cloud Controller, a Cluster Controller, Walrus Controller, and the Storage Controller. The other system became a node machine that ran the hosted virtual machines.
The controller services were easy to understand since they're similar to Amazon EC2 Cloud components. The Ubuntu Enterprise Cloud Cloud Controller is the front-end service application — the one to connect to for managing cloud services. It understands EC2 API calls, and offered us its Web user interface.
The Cluster Controller, in turn, manages each cluster of node (VM) resources, and talks to the node/VM host via the open source libvrt library. We could use as many nodes as we had hardware resources to cram them into; Canonical recommends baseline hardware and recommends faster components, even down to disk speed.
The Walrus Controller acts as a storage mechanism like Amazon's S3 (Simple Storage Service) for data storage or storing VM images. The Ubuntu Enterprise Cloud Storage Controller, like Amazon Elastic Block Storage (EBS), makes persistent virtual disks to attach to running instances — active resource storage virtualization control. Each cluster can have a Storage Controller for the convenience of management, snapshots, object aggregation, and so on.
Installation was very simple; we inserted the Ubuntu Server CD, selected Ubuntu Enterprise Cloud, and drank energy drinks. When installing, all we had to do was select options and if more information was needed, boxes would pop up for us to enter our choices, such as hostname or an elastic IP address range.
The installer automatically creates certificates, keys, private keys and other relevant data. One would have to do most of this manually if setting up Eucalyptus alone.
Next, we installed a node by running installation for nodes. If both machines are on the same network, the node will automatically find the cluster and cloud controllers. There are different network topologies available depending upon how many machines are available to be used, but Ubuntu doesn't recommend a single machine for production environments, even though it is possible.
Job requirements and their applications dictate configuration of Ubuntu Enterprise Cloud. Most of the setup was taken care of by the installer. In order to use Ubuntu Enterprise Cloud, we connected to the Web interface, and logged in with the default user admin/admin. We then setup our user by changing the password. We also had to enter other information such as e-mail and name, but some optional metadata could be entered as well, such as telephone number, project leader, project description and affiliation.