written 6.2 years ago by |
Elastic Utility Computing Architecture
Linking Your Programs to Useful Systems
Eucalyptus is a simple open architecture for implementing cloud functionality at the IaaS level.
It is specifically designed to be easy to install and maintain in a research setting, and that it is easy to modify, instrument, and extend.
Eucalyptus can be deployed and executed without modification to the underlying infrastructure.
Eucalyptus components have well defined interfaces (described by WSDL documents), support secure communication (using WS-Security policies), and rely upon industry-standard Web-services software packages (Axis2, Apache, and Rampart).
Eucalyptus is a Linux-based open source software architecture that implements efficiency-enhancing private and hybrid clouds within an enterprise’s existing IT
Infrastructure.
A Eucalyptus private cloud is deployed across an enterprise’s “on-premise” data center infrastructure and is accessed by
users over enterprise intranet. Thus sensitive data remains entirely secure from external intrusion behind the enterprise firewall.
Why Eucalyptus? Open Source
You can download it and have the source code at your fingertips.
Modular
The Eucalyptus components have well-defined interfaces (via WSDL, since they are web services) and thus can be easily swapped out for custom components.
Distributed
Eucalyptus allows its components to be installed strategically close to the needed/used resources. For example Walrus can be installed close to the storage, while the Cluster Controller can be installed close to the cluster it will manage.
Designed to Perform
Eucalyptus was designed from the ground up to be scalable and to achieve optimal performance in diverse environments (designed to overlay an existing infrastructure).
Flexible
Eucalyptus is flexible and can be installed on a very minimal setup. Yet it can be installed on thousands of cores and terabytes of storage. And it can do so as an overlay on top of an existing infrastructure.
Compatible
Eucalyptus is compatible with the most popular and widely used Cloud API currently available: Amazon EC2 and S3.
Cloud controller (CLC)
The Cluster Controller (CC) generally executes on a cluster front-‐end machine, or any machine that has network connectivity to both the nodes running NCs and to the machine running the CLC.
CCs gather information about a set of VMs and schedules VM execution on specific NCs. The CC also manages the virtual instance network and participates in the enforcement of all nodes served by a single CC must be in the same broadcast domain (Ethernet).
Functions: To receive requests from CLC to deploy instances
To decide which NCs to use for deploying the instances on To control the virtual network available to the instances
To collect information about the NCs registered with it and report it to the CLC
Node controller
The Node Controller (NC) is executed on every node that is designated for hosting VM instances. NCs control the execution, inspection, and termination of VM instances on the host where it runs, fetches and cleans up local copies of instance images (the kernel, the root file system, and the ram disk image), and queries and controls the system software on its node (host OS and the hypervisor) in response to queries and control requests from the cluster controller. The Node controller is also responsible for the management of the virtual network endpoint.
Functions:
Collection of data related to the resource availability and utilization
on the node and reporting the data to CC
Instance life cycle management
Storage Controller (SC)
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.).
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), providing a mechanism for storing and accessing virtual machine images and user data
VMware Broker
• VMware Broker (Broker or VB) is an optional Eucalyptus component, which is available if you are a Eucalyptus Subscriber. VMware Broker enables Eucalyptus to deploy virtual machines (VMs) on VMware infrastructure elements. VMware Broker mediates all interactions between the CC and VMware hypervisors (ESX/ESXi) either directly or through VMware vCenter.