ØCloud computing is a computing model, where resources such as computing power, storage, network and software are abstracted and provided as services on the internet in a remotely accessible fashion. Billing models for these services are generally similar to the ones adopted for public utilities.
ØOn-demand availability, ease of provisioning, dynamic and virtually infinite scalability are some of the key attributes of cloud computing.
ØAn infrastructure setup using the cloud computing model is generally referred to as the “cloud”.
ØThe following are the broad categories of services available on the cloud:
Infrastructure As A Service (IAAS)
Platform As A Service (PAAS)
Software As A Service (SAAS)
ØThis cloud is generally available as a service to anyone on the internet. However, a variant called “private cloud” is increasingly becoming popular for private infrastructure that has some of the attributes of the cloud as mentioned above.
ØAmazon Web Services (AWS) is one of the major players providing IAAS. They have two popular services – Elastic Compute Cloud (EC2) and Simple Storage Service (S3). These services are available through web services interfaces. The client tools can use EC2 and S3 APIs to communicate with these services. The popularity of these APIs have encouraged other cloud products to provide support for them as well.
ØEucalyptus is software available under GPL that helps in creating and managing a private or even a publicly accessible cloud. It provides an EC2-compatible cloud computing platform and S3-compatible cloud storage platform. Eucalyptus has become very popular and is seen as one of the key open source cloud platforms. Since Eucalyptus makes its services available through EC2/S3 compatible APIs, the client tools written for AWS can be used with Eucalyptus as well.
1.3 Ubuntu Enterprise Cloud (UEC)
ØUbuntu Enterprise Cloud, UEC for short, is a stack of applications from Canonical included with Ubuntu Server Edition.UEC includes Eucalyptus along with a number of other open source software.UEC makes it very easy to install and configure the cloud. Canonical also provides commercial technical support for UEC.
1.4Components of a Eucalyptus (UEC) based Cloud
1.4.1 Node Controller (NC)
ØUEC node is a VT enabled server capable of running KVM as the hypervisor. UEC automatically installs KVM when the user chooses to install the UEC node. The VMs running on the hypervisor and controlled by UEC are called “instances”. Eucalyptus supports other hypervisors like Xen apart from KVM, but Canonical has chosen KVM as the preferred hypervisor for UEC.
ØNode Controller runs on each node and controls the life cycle of instances running on the node. The NC interacts with the OS and the hypervisor running on the node on one side and the Cluster Controller (CC) on the other side.
ØNC queries the Operating System running on the node to discover the node’s physical resources – the number of cores, the size of memory, the available disk space and also to learn about the state of VM instances running on the node and propagates this data up to the CC.
·Collection of data related to the resource availability and utilization on the node and reporting the data to CC
·Instance life cycle management
1.5.2Cluster Controller (CC)
ØCC manages one or more Node Controllers and deploys/manages instances on them.CC also manages the networking for the instances running on the Nodes under certain types of networking modes of Eucalyptus.
ØCC communicates with Cloud Controller (CLC) on one side and NCs on the other side.
·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
1.5.3Walrus Storage Controller (WS3)
ØWS3 provides a persistent simple storage service.
·Storing the machine images
·Storing and serving files using S3 API
ØWS3 should be considered as a simple file storage system.
1.5.4Cloud Controller (CLC)
ØThe Cloud Controller (CLC) is the front end to the entire cloud infrastructure.CLC provides an EC2/S3 compliant web services interface to the client tools on one side and interacts with the rest of the components of the Eucalyptus infrastructure on the other side. CLC also provides a web interface to users for managing certain aspects of the UEC infrastructure.
·Monitor the availability of resources on various components of the cloud infrastructure, including hypervisor nodes that are used to actually provision the instances and the cluster controllers that manage the hypervisor nodes
·Resource arbitration – Deciding which clusters will be used for provisioning the instances
·Monitoring the running instances
ØIn short, CLC has a comprehensive knowledge of the availability and usage of resources in the cloud and the state of the cloud.