This topic presents an overview of the components in Eucalyptus.
Eucalyptus is comprised of several components: Cloud Controller, Walrus, Cluster Controller,
Storage Controller, and Node Controller. Each component is a stand-alone web service.
This architecture allows Eucalyptus both to expose each web service as a well-defined,
language-agnostic API, and to support existing web service standards for secure
communication between its components.
- Cloud Controller
- The Cloud Controller (CLC) is the entry-point into the cloud
for administrators, developers, project managers, and
end-users. The CLC queries other components for information
about resources, makes high-level scheduling decisions, and
makes requests to the Cluster Controllers (CCs). As the
interface to the management platform, the CLC is responsible
for exposing and managing the underlying virtualized
resources (servers, network, and storage). You can access
the CLC through command line tools that are compatible with
Amazon’s Elastic Compute Cloud (EC2).
- Walrus
- Walrus allows users to store persistent data, organized as
buckets and objects. You can use Walrus to create, delete,
and list buckets, or to put, get, and delete objects, or to
set access control policies. Walrus is interface compatible
with Amazon’s Simple Storage Service (S3). It provides a
mechanism for storing and accessing virtual machine images
and user data. Walrus can be accessed by end-users, whether
the user is running a client from outside the cloud or from
a virtual machine instance running inside the cloud.
- Cluster Controller
- The Cluster Controller (CC) generally executes on a machine
that has network connectivity to both the machines running
the Node Controller (NC) and to the machine running the CLC.
CCs gather information about a set of NCs and schedules
virtual machine (VM) execution on specific NCs. The CC also
manages the virtual machine networks. All NCs associated
with a single CC must be in the same subnet.
- Storage Controller
- The Storage Controller (SC) provides functionality similar
to the Amazon Elastic Block Store (Amazon EBS). The SC is
capable of interfacing with various storage systems (NFS,
iSCSI, SAN devices, etc.). Elastic block storage exports
storage volumes that can be attached by a VM and mounted or
accessed as a raw block device. EBS volumes persist past VM
termination and are commonly used to store persistent data.
An EBS volume cannot be shared between VMs and can only be
accessed within the same availability zone in which the VM
is running. Users can create snapshots from EBS volumes.
Snapshots are stored in Walrus and made available across
availability zones. Eucalyptus with SAN support lets you use
your enterprise-grade SAN devices to host EBS storage within
a Eucalyptus cloud.
- Node Controller
- The Node Controller (NC) executes on any machine that hosts
VM instances. The NC controls VM activities, including the
execution, inspection, and termination of VM instances. It
also fetches and maintains a local cache of instance images,
and it queries and controls the system software (host OS and
the hypervisor) in response to queries and control requests
from the CC. The NC is also responsible for the management
of the virtual network endpoint.