survey of open source cloud architectures

69
Survey Of Open Source Cloud Architectures

Upload: abhinav-vedanbhatla

Post on 07-Jan-2017

84 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Survey of open source cloud architectures

Survey Of Open Source Cloud Architectures

Page 2: Survey of open source cloud architectures

Project Goal● Each open source cloud computing architecture namely Eucalyptus,

OpenStack, CloudStack, and OpenNebula are to be installed on the resources provided

● Document the working procedure and installation steps● Evaluate the performance of each architecture using the tools like

sysbench and iperf● Compare the obtained results

Page 3: Survey of open source cloud architectures

Project Architecture

Page 4: Survey of open source cloud architectures

Router:

4 port 10/100 switch

1 WAN port

DHCP

Layer 3 (Network) packet routing

Switch:

10/100 Mbps ports

Layer 2 (Link) packet routing

CS1/CS2:

Dual core 2.4Ghz CPUs

4GB RAM

250GB HDD

Page 5: Survey of open source cloud architectures

Background

Cloud computing is a model for enabling ubiquitous, convenient on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.

NIST Definition

Page 6: Survey of open source cloud architectures

CharacteristicsOn-demand self service

Broad network access

Resource pooling

Measured service

Page 7: Survey of open source cloud architectures

Service ModelsThere are three service models in Cloud Computing:

Software-as-a-service

Platform-as-a-service

Infrastructure-as-a-service

Page 8: Survey of open source cloud architectures

Service Models

Page 9: Survey of open source cloud architectures

Deployment ModelsThe four deployment models are:

Public Cloud

Private Cloud

Hybrid Cloud

Community Cloud

Page 10: Survey of open source cloud architectures

Deployment Models

Page 11: Survey of open source cloud architectures

Major Public Cloud VendorsAmazon AWS

Microsoft Azure

Google Cloud

Page 12: Survey of open source cloud architectures

Open Source Cloud PlatformOpen source cloud storage is a cloud storage architecture that uses freely

available source code to build and manage a private cloud storage platform.

The major advantage of using open source cloud solution is the user can modify the solution according to his own needs.

Additionally, it also prevents the purchase of expensive license and tools.

Page 13: Survey of open source cloud architectures

Survey Of ArchitecturesThe three architectures taken for the survey are:

OpenStack

Eucalyptus

OpenNebula

Page 14: Survey of open source cloud architectures

OpenStack

Page 15: Survey of open source cloud architectures

OpenStackOpenstack is a collection of open source project that is collectively utilized to

operate a cloud network infrastructure in order to provide IaaS.

OpenStack architecture was designed with a goal to support interoperability between cloud services and allow businesses to build services in their respective data centers.

The architecture of openstack consists of 11 components namely, Compute (Nova), Object Storage (Swift), Block Storage (Cinder), Networking (Neutron), Dashboard (Horizon), Identity Service (Keystone), Image Service (Glance), Telemetry (Ceilometer), Orchestration (Heat), Database (Trove), Elastic Mapreduce (Sahara)

Page 16: Survey of open source cloud architectures

OpenStack- Related WorkOpenStack is used in the FROST (Forensic OpenStack Tools) design.

It is essentially a management plane forensic toolkit in a private instantiation of OpenStack cloud platform.

OpenStack has many components but FROST uses only Nova, the compute component and Horizon, the OpenStack dashboard.

Page 17: Survey of open source cloud architectures

OpenStack - Architecture

Page 18: Survey of open source cloud architectures

OpenStack - InstallationThe openstack architecture was installed using DevStack, an opinionated

script that helps in creating a quick OpenStack environment.

The configuration we followed was All-in-one single machine. This installs the components in one single machine.

The documentation that we followed was clear and was easy to understand. Firstly, we select the Linux distribution to install it as the Host OS.We used the Ubuntu 14.04.2 LTS version and OpenStack is installed as a Guest OS to instantiate a virtual machine.

Page 19: Survey of open source cloud architectures

OpenStack - Installation (cont.)Steps involved in the installation process:

1. We have used the OpenStack Quickstart installation guide to install OpenStack cloud architecture.

2. Download DevStack using the git command. As the git program wasn’t installed we installed the package using the apt-get install git command and then used the following command to download OpenStack:

git clone https://git.openstack.org/openstack-dev/devstack

Page 20: Survey of open source cloud architectures

OpenStack - Installation (cont.)3 . The DevStack repository has the entire OpenStack template and the configuration files. Now our configuration meets the minimal requirements for the OpenStack installation. The next step is to install the DevStack repository. The commands we used for the installation are:

cd devstack; ./stack.sh

4 . Once, the installation is complete, the URL of the dashboard with the login credentials is returned.

Page 21: Survey of open source cloud architectures

OpenStack - Dashboard View

Page 22: Survey of open source cloud architectures

OpenStack - Virtual Machine / Instance Creation

The first step to launch a virtual machine is that, we need to create a keypair and download it in the respective client.

Launch an image and update it with its updated key.

The instances module will be updated with a new instance. Thereafter, when the power status turns running, the virtual machine is ready.

Page 23: Survey of open source cloud architectures

Instance

Page 24: Survey of open source cloud architectures

Eucalyptus

Page 25: Survey of open source cloud architectures

EucalyptusEucalyptus stands for Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems developed by University of California Santa Barbara, a software available under GPL that helps in creating and managing a private or even publicly accessible cloud.

AIM: To replicate the EC2 interfaces and functionality.

Provides EC2 compatible cloud computing platform and S3 compatible cloud storage platform.

Eucalyptus Architecture consists of five components which together reflect EC2.

Page 26: Survey of open source cloud architectures

Figure: Eucalyptus Architecture

Page 27: Survey of open source cloud architectures

Node Controller

Manages the life cycle of instances running on the node.

NC communicates with the OS and hypervisor running on the node on one side and the Cluster Controller on the other side.

NC requests the OS running on the node to find out the nodes physical resources -, the size of memory, the number of cores, the disk space available and also it learns about the state of VM instances running on the node and broadcasts this data up to the Cluster Controller

Page 28: Survey of open source cloud architectures

Cluster Controller (CC)Controls one or more Node Controllers and deploys instances on them.

Audits networking for the instances running on the Nodes under certain types of networking modes of Eucalyptus(STATIC, SYSTEM, MANAGED, MANAGED NOVLAN).

Main role is to get requests from CLC to deploy instances and determine which NC’s to use for deploying the instances.

Manages the virtual network available to the instances, gathers all detailed information about the NC’s registered with it and report it to the CLC

Page 29: Survey of open source cloud architectures

Walrus Storage Controller (WS3)

Acts as a persistent simple storage service using REST and SOAP API’s compatible with S3 APIs.

Similar to Amazons S3 API.

Helps in storing the machine images, snapshots and serving files using S3 API.

Page 30: Survey of open source cloud architectures

Storage Controller (SC)Acts as persistent block storage for use by the instances.

Similar to Amazon’s ElasticBlockStorage (EBS)

Page 31: Survey of open source cloud architectures

● Entry point to the cloud infrastructure.

● Offers an EC2/S3 compliant web services interface to the client tools on one side and communicates with the rest of the components of the Eucalyptus infrastructure on the other side.

● Records the availability of resources on various components of cloud infrastructure, including hypervisor nodes.

● CLC has a detailed info about the availability and usage of resources in the cloud and the state of the cloud.

Cloud Controller (CLC)

Page 32: Survey of open source cloud architectures

Eucalyptus InstallationHost OS: Cent OS 6.6Eucalyptus as Guest OS to instantiate a virtual machine.Hardware Requirements: 220 GB of disk space, 4 GB RAM and Ethernet NIC.Software Requirements: Eucalyptus faststart ISO file. UnetBootin is used to load ISO image into bootable USB drive.INSTALLATION STEPS1. Boot target system from Eucalyptus faststart media and install CentOS6.2. Set the language preference.3. Network information: eth0 DHCP4. Time Zone settings5. Cloud configuration Options

Most of them are default values. As we use the DHCP configurations, all IP addresses are assigned by the network

Page 33: Survey of open source cloud architectures

6. Disk install:Eucalyptus is intended to be the primary application and occupies all

the disk space on the system.7. Eucalyptus installation begins. S/W will be installed and default Eucalyptus machine image (EMI) will be built. Reboot is needed for changes to take effect.8. Accept licence agreement, create non-root login.

Page 34: Survey of open source cloud architectures

Dashboard View

Page 35: Survey of open source cloud architectures

Images

Page 36: Survey of open source cloud architectures

Launching Instances

Key Pair Generation:2 Ways:1. Generate key pair in dashboard and download in Client system.2. Generate in client and import it to dashboard.

Update the image with current key pair.Launch image to get VM running!

Page 37: Survey of open source cloud architectures

Instances

Page 38: Survey of open source cloud architectures

OpenNebula

Page 39: Survey of open source cloud architectures

IntroductionOpenNebula is free and open-source software, subject to the requirements of the

Apache License version 2.

OpenNebula is a cloud computing platform for managing heterogeneous distributed data center infrastructures.

March 1, 2008

It is the most simple among other open- source architectures.

Page 40: Survey of open source cloud architectures

OpenNebula Architectural Overview

Page 41: Survey of open source cloud architectures

CentOS 7 and KVM as a Hypervisor.

There are two separate roles: Frontend and Nodes.

Same host machine has been used.

Design and Installation

Page 42: Survey of open source cloud architectures

Design and Installation1. Installation in the Frontend

1.1. Enable the Extra Packages for Enterprise Linux(EPEL) repo:

1.2. Install the required packages:

1.3. Configure and Start the services:

1.4. Configure NFS (Skip this section)

Page 43: Survey of open source cloud architectures

Design and Installation1.5. Configure SSH Public Key

Page 44: Survey of open source cloud architectures

Design and Installation2. Installation in the Nodes

2.1. Install the repo:

2.2. Install the required packages:

Page 45: Survey of open source cloud architectures

Design and Installation

2.3. Configure the Network:substitute /etc/sysconfig/network-scripts/ifcfg-ens3 with:

And add a new /etc/sysconfig/network-scripts/ifcfg-br0 file.

After the changes, Restart the network:

2.4. Configure the NFS(Skip this section)

Page 46: Survey of open source cloud architectures

3. Basic UsageAll the operations in this section can be Sunstone instead of the command line. using the URL: http://localhost:9869.

Page 47: Survey of open source cloud architectures

3.1. Adding the host.

Page 48: Survey of open source cloud architectures

3.2. Adding the Virtual Resources

Page 49: Survey of open source cloud architectures

3.2. Adding the Virtual Resources(cont.)

Page 50: Survey of open source cloud architectures

3.2. Adding the Virtual Resources(cont.)

Page 51: Survey of open source cloud architectures

3.2. Adding the Virtual Resources(cont.)

Page 52: Survey of open source cloud architectures

3.3. Running a Virtual Machine

Page 53: Survey of open source cloud architectures

Running Virtual Machine

Page 54: Survey of open source cloud architectures

Results

Page 55: Survey of open source cloud architectures

As the dashboards for the three architectures are ready, we had to find their performances by benchmarking.

● CPU performance● Network Performance● Local Storage Performance

Page 56: Survey of open source cloud architectures

Results …. EucalyptusSSH into an instance (default Image : CentOS 6 demo).

● Result: Root password Invalid● Irrespective of trying general admin passwords like root, admin, password

etc. password was unknown.

We tried various images from ubuntu repositories below● https://cloud-images.ubuntu.com/● http://cloud.centos.org/centos/7/images/● https://fedoraproject.org/wiki/Cloud_images

Used euca-tools commands to link the above images to the eucalyptus repository.All these images were used to create some instances, but they had the same issue too.

Page 57: Survey of open source cloud architectures

● euca-bundle-image -i ubuntu-14.04-server-cloudimg-i386.tar.gz --arch x86_64

● euca-upload-bundle -b mybucket2 /var/tmp/bundle-303zWq/ubuntu-14.04-server-cloudimg-i386.tar.gz.manifest.xml

● euca-register -n mybucket2 mybucket2/ubuntu-14.04-server-cloudimg-i386.tar.gz.manifest.xml

● euca-modify-image-attribute -l -a all emi-730F3B34 --region admin@

Page 58: Survey of open source cloud architectures

Connect to an instance through ssh

● chmod 400 ubuntu.pem

● ssh -i ubuntu.pem [email protected]

Page 59: Survey of open source cloud architectures
Page 60: Survey of open source cloud architectures

Results …. OpenStack Launched an instance (default Image : Cirros 0.3.1-x86_64-uec). ● Result: Root password Invalid● Irrespective of trying general admin passwords like root,

admin, password etc. password was unknown.

We tried various images from ubuntu below repositories● https://cloud-images.ubuntu.com/● http://cloud.centos.org/centos/7/images/● https://fedoraproject.org/wiki/Cloud_images

All these images were used to create some instances, but they had the same issue too.

Page 61: Survey of open source cloud architectures
Page 62: Survey of open source cloud architectures
Page 63: Survey of open source cloud architectures

Results …. OpenNebulaImage was retrieved from the marketplace. Launched an instance (default Image : CentOS-6.5-one-4.8). ● Result: Root password Invalid● Irrespective of trying general admin passwords like root,

admin, password etc. password was unknown.

We tried various images from ubuntu below repositories● https://cloud-images.ubuntu.com/● http://cloud.centos.org/centos/7/images/● https://fedoraproject.org/wiki/Cloud_images

All these images were used to create some instances, but they had the same issue too.

Page 64: Survey of open source cloud architectures
Page 65: Survey of open source cloud architectures

Surprising Issue → Solved by checking the one_auth file.

Page 66: Survey of open source cloud architectures

OpenNebula VM Console

Page 67: Survey of open source cloud architectures

Conclusion● Eucalyptus, OpenStack and OpenNebula were installed successfully.● The documentation for OpenStack using DevStack was easier but not

detailed to explain any possible errors.● The Eucalyptus configuration using the documentation was simple.● OpenNebula was installed successfully using the documentation and

instances were created.● Most of the image files available for all the three architectures limited

the user to ssh into the virtual machine instance.● So, if the correct image files were located we would have been able to

benchmark the performance evaluations of all the three architectures.

Page 68: Survey of open source cloud architectures

Questions?

Page 69: Survey of open source cloud architectures

Thank You