Shaik Khaja Mohiddin
Shaik Khaja Mohiddin
Shaik Khaja Mohiddin
Case study: Types of Clouds, Cloud centers in detail, Comparing approaches, Xen
Open Nebula , Eucalyptus, Amazon, Nimbus
Amazon web services (AWS) represents the Service infrastructure approach offering
customer a number of customized, non standard, but highly scalable service to rebuild an
infrastructure in a totally virtual environment. Go Grid represents more of an industry
standard approach that offers a very familiar data center like environment but in the
cloud.
TYPES OF CLOUDS
Infrastructure clouds can be built primarily in two ways, service infrastructure or cloud
centers, both allow all of the capabilities one expects from IaaS:
Scale on demand
Pay as you go
Conversion of capital expenditure (CapEx) to operational expenditure (OpEx).
Programmatic (API) and graphical user interfaces (GUI)
Basic infrastructure: storage, servers, network, power and c olling.
Although both provide the same basic value, these two approaches differe
significantly in approach:
Service infrastructure : this is the approach made familiar by AWS, service
infrastructure are essentially custom web services in the cloud, these can be used
individually or composited together to deliver a web application or do batch
processing for example Amazon offers servers, storage, databases, queuing/
messaging, payment processing and more. Every one of these web services is a
unique and custom solution storage using S3 uses the S3 protocol and message
format. The same goes for SimpelDB, their database service. These services were
designed in a custom manner to allow Amazon to scale to 50,000 + servers and
thousands of products. They are being repurposed as publicly consumable web service
that AWS customers consume for their own use within their business models.
Cloud centers: most AWS competitors use this approach its methodology is to
provide standard data center services using standard technology and protocols, but in
the cloud. Storage is available via familiar protocols, such as SMB/CIFS (server
message block/ common internet file system) and NFS (network file system).
Databases are provided using standard SQL and RDBMS. Firewalls and load
UNIT VIII
balancers are based on hardware appliances instead of custom distributed and
configured firewall software.
CLOUD CENTERS IN DETAIL
GoGrid is the first and largest US cloud center and is popularizing this approach,
among its primary advantages is the ability to directly translate skill sets existing
infrastructure and projects to the more flexible cloud environment. GoGrids approach
wills also eventually make so called cloud bridging connecting and integrating our
internal data center to external clouds much easier.
Data Centers in the Clouds:
Traditional data centers are composed of the following elements
UNIT VIII
Scaling out (horizontal): it is easiest to scale out for servers and use cases that are
relatively stateless, such as web servers, application servers, and batch processing, with
these kinds of workloads adding an additional server usually requires little or no
additional configuration or architecture work.
Scaling up (vertical): scaling up is the best for state full applications and workloads such
as databases and fileservers, in these cases, simply adding additional servers does not
directly translate into more capacity.
COMPARING APPROACHES
When comparing cloud centers (Go Grid) to service infrastructures (AWS), its important
to remember both the practices of traditional data centers and the kind of application we
are deploying.
Side by side comparison: traditional data centers, cloud centers and service
infrastructures are compared side by side as shown in the below table.
Functionality
firewall
Load balancer
Network isolation
Private networks
Network protocols
OS Choices
DNS
Persistent network
storage
Persistent local
storage
Mixed virtual and
physical servers
Traditional data
center
Perimeter hardware
firewall
Hardware load
balancer
VLAN
YES
No limitations
Unlimited
YES
Go Grid (Cloud
center)
Perimeter hardware
firewall
VLAN
YES
No limitations
Unlimited
YES
Amazon (Service
Infrastructure)
Custom distributed
software firewall
Roll your own software
load balancer
VLAN
NO
Restricted
Some limits
NO
YES
YES
YES
YES
YES
NO
YES
YES
NO
Real life Usage: the difference between cloud centers and service infrastructures are
traced out when both Go Grid and AWS are used.
With AWS ( service infrastructure model) one need to learn new skills to manage S3 and
even extend the server system administration skill to include managing EC2s additional
Shaik Khaja Mohiddin
UNIT VIII
server paradigms such as runtime metadata, the lack of multicast and broadcast network
traffic, server groups and their custom distributed software firewall.
Go Grid approach is very similar to using the console of VMware Virtual Center or
another virtualization management system, in addition to servers we can control the
network, DNS, Storage, load balancer and soon firewall through the same integrated User
Interface (UI).
The basic components of a Xen-based virtualization environment are the Xen hypervisor,
the host desktop environment, any number of other Xen-based virtual machines, and the
tools, commands, and configuration files that let you manage virtualization. Collectively,
the physical computer running all these components is referred to as a virtual machine
host because together these components form a platform for hosting virtual machines.
The Xen Hypervisor
The Xen hypervisor, sometimes referred to generically as a virtual machine monitor, is an
open-source software program that coordinates the low-level interaction between virtual
machines and physical hardware.
The Host Desktop Environment
The virtual machine hosts desktop environment, also referred to as domain 0, is
comprised of several components, such as:
The SUSE Linux operating system, which gives the administrator a graphical
desktop and command line environment to manage the virtual machine host
components and its virtual machines.
NOTE:The term host desktop is used to refer to the domain 0 management
environment, even though the SUSE Linux operating system might be running in
command line interface mode with no graphical desktop.
The xend daemon (xend), which stores configuration information about each
virtual machine and controls how virtual machines are created and managed.
UNIT VIII
At least one virtual disk that contains a bootable operating system. The virtual disk
can be based on a file, partition, volume, or other type of block device.
Virtual machine configuration information, which can be modified by exporting a
text-based configuration file from xend or through Virtual Machine Manager.
Xen Hypervisor
The Xen hypervisor is the basic abstraction layer of software that sits directly on the
hardware below any operating systems. It is responsible for CPU schedules and memory
partitioning of the various virtual machines running on the hardware device. The
hypervisor not only abstracts the hardware for the virtual machines but also controls the
Shaik Khaja Mohiddin
UNIT VIII
execution of virtual machines as they share the common processing environment. It has
no knowledge of networking, external storage devices, video, or any other common I/O
functions found on a computing system.
Architecture: the following diagram depicts a virtual machine host with three virtual
machines. Xen hypervisor is shown as running directly on the physical hardware
platform.
Open Nebula: OpenNebula is a fully open-source tool kit to build any type (private,
public and hybrid) of infrastructure based cloud. OpenNebula is platform agnostic with
broad hypervisor support, allowing to leverage the existing IT infrastructure. The cloud
provides infrastructure users with an elastic platform for fast delivery and scalability of
services to meet dynamic demands of end-users. It allows the user to dynamically host
the services in VMs, enables monitoring and control using interfaces like command line
interface, XML-RPC API, Libvirt virtualization API.
OpenNebula manages the data center of private cloud and infrastructure of cluster
running Xen, KVM or VMware and also support hybrid cloud to connect local and
UNIT VIII
public infrastructure which is very useful to build highly scalable cloud computing
environment.
OpenNebula supports heterogeneous execution environments with multiple, even
conflicting, software requirements on the same shared infrastructure with full
control of the lifecycle of virtualized services management.
OpenNebula is furthermore an open and flexible virtual infrastructure
administration device, which can be used to synchronize the storage, mesh a
virtual methods .
OpenNebula is mostly utilized to organize the data centre of a private cloud and
infrastructure of cluster and it furthermore supports hybrid clouds to attach the
localized and public infrastructure.
Eucalyptus: Eucalyptus is an elastic computing structure that can be utilized to attach
users programs to the helpful system; it is an open source infrastructure utilizing clusters
or workstations implementation of elastic, utility and cloud computing and a well liked
computing benchmark founded on service grade protocol that allows users lease mesh for
computing capability.
It originated as a research project in the Computer Science Department at the University
of California, Santa Barbara where its authors were studying the use of open source to
create new, highly scalable, and high performance distributed computing environments.
EUCALYPTUS 2.0 is a Linux-based software architecture that implements scalable,
efficiency-enhancing private and hybrid clouds within an organization's IT infrastructure.
EUCALYPTUS uses computational and storage infrastructure for academic research
groups and provides a platform that is modular and open to experiment. The system
allows users to start, control, access, and terminate entire virtual machines using an
emulation of Amazon EC2s SOAP and Query interfaces. One striking feature of
Eucalyptus, is its choice of the Amazon AWS APIs as the API it supports. The current
interface to EUCALYPTUS is compatible with Amazon's EC2 interface and uses the
EC2 tools directly and duplicates Simple Storage Service (S3) service. Eucalyptus
implements a distributed storage system called Walrus which is designed to imitate
Amazons S3 distributed storage. The infrastructure is designed to support multiple
client-side interfaces. EUCALYPTUS is implemented using commonly available Linux
tools and basic Web-service technologies making it easy to install and maintain.
Amazon: a collection of remote computing services, also called web services, make up a
cloud-computing platform offered by Amazon.com. These services operate from 11
UNIT VIII
geographical regions across the world. The most central and well-known of these services
arguably include Amazon Elastic Compute Cloud and Amazon S3.
AWS is located in 11 geographical "regions": US East (Northern Virginia), where
the majority of AWS servers are based, US West (northern California), US West
(Oregon), Brazil (So Paulo), Europe (Ireland and Germany), Southeast Asia
(Singapore), East Asia (Tokyo and Beijing) and Australia (Sydney). There is also
a "GovCloud", based in the Northwestern United States, provided for U.S.
government customers, complementing existing government agencies already
using the US East Region.[4] Each Region is wholly contained within a single
country and all of its data and services stay within the designated Region.
Officially launched in 2006, Amazon Web Services provide online services for
other web sites or client-side applications.[1] Most of these services are not
exposed directly to end users, but instead offer functionality that other developers
can use in their applications. Amazon Web Services offerings are accessed over
HTTP, using the REST architectural style and SOAP protocol. All services are
billed based on usage, but how usage is measured for billing varies from service to
service.
Products such as computing, networking, storage and content delivery,
databases etc which are discussed as below.
Compute :
Amazon Elastic Compute Cloud: provides scalable virtual private servers
using Xen.
Amazon Elastic Map Reduce: allows businesses, researchers, data
analysts, and developers too easily and cheaply process vast amounts of
data
Amazon lambda: provides a compute service that runs code in response to
events and automatically manages the computer resources needed to run the
code.
Networking:
Amazon Route 53 provides a highly available and scalable Domain Name
System (DNS) web service.
Amazon Virtual Private Cloud (VPC) creates a logically isolated set of
Amazon EC2 instances which can be connected to an existing network
using a VPN connection
UNIT VIII
Amazon Simple Storage Service (S3) provides Web Service based storage.
Amazon Glacier provides a low-cost, long-term storage option (compared to
S3). High redundancy and availability, but low-frequent access times. Intended
for archiving data.
Amazon Elastic Block Store (EBS) provides persistent block-level storage
volumes for EC2.
Database:
Nimbus: Nimbus is an open-source toolkit focused on providing Infrastructure-as-aService (IaaS) cloud to its client via WSRF-based or Amazon EC2 WSDL web service
APIs.
Nimbus project explicitly advertises itself as a science cloud solution. However
Nimbus have supported many nonscientific research domain applications.
Nimbus v2.9 is incredibly customizable. Nimbus supports the Xen hypervisor and
virtual machine schedulers PBS and SGE. It allows deployment of self-configured
virtual clusters via contextualization. It is configurable with respect to scheduling,
networking leases, and usage accounting.
Nimbus provides a complementary tool Cumulus implementation of a quota-based
storage cloud designed for scalability and allows providers to configure multiple
storage cloud implementations.
Nimbus offers scaling tools allowing users to automatically scale across multiple
distributed providers, these tools "sky computing tools" operate in a multi-cloud
environment combining private and public cloud capabilities.
Nimbus allows developers to extend and customize IaaS by providing an open
source implementation Workspace Service can be configured to support different
virtualization implementations, resource management options interfaces .
Nimbus provides most of the customization to the administrator and not to the user
and has several components. These components include the image storage,
previously GridFTP and now Cumulus.
Shaik Khaja Mohiddin
UNIT VIII
Nimbus Platform tools include cloudinit.d and Context Broker. cloudinit.d is a tool
for launching, controlling, and monitoring cloud applications. cloudinit.d
automates the creation of virtual machines, their contextualization, and the
messaging between VMs. The Context Broker is a service that allows clients to
coordinate large virtual cluster launches automatically and repeatable.
Open Stack: OpenStack launched in July 2010 is an initiative of Rackspace Hosting and
NASA. OpenStack is designed to create freely available code, standards, and common
ground for the benefit of both cloud providers and cloud customers.
The goal of OpenStack 2.0 is to allow organization to create and offer cloud
computing capabilities using open source software running on standard hardware.
The project boasts of compute, storage and image service component.
OpenStack Compute is open source software designed to provision and manage
large networks of virtual machines, creating a redundant and scalable cloud
computing platform. It has the software, control panels, and APIs required
orchestrating a cloud, including running instances, managing networks, and
controlling access through users and projects.
OpenStack Storage is software for creating redundant, scalable object storage
using clusters of commodity servers to store terabytes or even peta bytes of data.
OpenStack Image Service (code-named Glance) provides discovery, registration,
and delivery services for virtual disk images. A multi-format image registry,
OpenStack Image Service allows uploads of private and public images in a variety
of formats, including VHD, VDI, Qemul. Service providers, companies that use
private cloud and Institutions with physical hardware can use
OpenStack for large-scale cloud deployments. All of the code for OpenStack is
freely available under the Apache 2.0 license.
OpenStack is aiming at Virtualization Portability where user will be able to move
from virtualization technologies including those hosted in the cloud and will be
able to migrate seamlessly, that includes VMs running in VMware , Xen, HyperV
and KVM. Once in the cloud they will be able to move across clouds public and
private unencumbered Amazon, Rackspace, Eucalyptus Ubuntu Enterprise Cloud
and others. Adoption of a widespread virtualization standard like Open
Virtualization Format (OVF) has helped OpenStack
10
UNIT VIII
FEATURES OF PLATFORM
Property
Focus
Cloud
implementation
Form of Cloud
User access
interface
EUCALYPTUS
infrastructure
Nimbus
infrastructure
Open Stack
infrastructure
Public
IaaS
Web Service,
Command-line
IaaS
EC2
WSDL,WSRF
IaaS
Scalable
scalable
Scalability
Web-interface
scalable
OpenNebula
infrastructure
Private, Public &
Hybrid
IaaS
libvirt, EC2,
OCCI API
Dynamical,
scalable
Compute(Nova),
Compute, Storage
Storage(Swift)
Supports multiple
open, multiSupport EC2,S3
support EC2
Compatibility
platform
platform
Dynamic
Dynamic
Dynamic
Dynamic
Deployment
Linux
Linux
Linux, Ubuntu
Linux
OS support
Python, using the
Linux-based,
Tornado and
Programming
Java, Python
Java
Framework
Java
Twisted
frameworks
COMPARISON OF OPEN CLOUD PLATFORM CHARACTERISTCS
Service Type
Compute, Storage
Compute, Storage
Property
EUCALYPTUS
Nimbus
Open Stack
Disk Image
Options
Options set by
admin
Depends on
configuration
Glance has
RESTful API
Disk Image
Storage
Walrus, which
imitates
Amazons S3
Cumulus (recent
update from
GridFTP)
Nova
Hypervisors
Unique Features
Xen, KVM
Nimbus context
broker
Open
Virtualization
Format (OVF)
Unified
Authentication
System
OpenNebula
In private cloud,
most libvirt
options left open.
A shared file
system, by
default NFS, or
SCP
Xen, KVM,
VMware
VM migration
supported
EUCALYPTUS
Concept
Mimic Amazon
EC2
Customizable
Some for
Nimbus
Cloud resources
tailored to
scientific
researchers
Many parts except
11
Open Stack
OpenNebula
Virtualization
Portablilty
Private, highly
customizable
cloud
Basically
Basically
UNIT VIII
admin,less for
user
Platform
Security
Tight. Root
required for many
things.
User Security
DHCP
An Ideal Setting
everything
everything
Loose
Role Based
Access Control
On network node
Variable
Large scale
deployment
Smaller group of
machines for
highly trusted
users
Nimbus in comparison to other platforms pays most attention to capacity allocation and
capacity overflow. Nimbus is in between Eucalyptus and OpenNebula on the
customization chain. Nimbus provides large number of options for user and
administrators in deploying the cloud. Its security level is slightly higher than
OpenNebula, due to the required integration of Globus certificate credentials.
OpenNebula is more open than Nimbus and exposes large amounts of the underlying
software in the default private cloud configuration. OpenNebula permits maximum
customizability and provides greater level of centralization to especially end-users (for
private cloud). From the point of reliability OpenNebula is the most reliable open
platform since it has considered rollback and fault tolerance mechanisms in the cloud
implementation.
The front-end provided by Eucalyptus euca2ools is very similar and compatible with
Amazons EC2 front-end programs thus allowing easy integration with the commercial
cloud and it protects users from as many of the complexities of the underlying systems.
Eucalyptus implements a distributed storage system called Walrus which is designed to
imitate Amazons S3 distributed storage.
OpenNebula and Eucalyptus, in their default configurations, do not do any real form of
scheduling, in the sense of negotiating priority for processors. Eucalyptus does not give a
cap for space in the Walrus distributed storage. Nimbus allows for user to be given a cap
on the number and size of VMs which they are allowed to create.
12