Topic 13: Cloud Stacks

Preview:

DESCRIPTION

Cloud Computing Workshop 2013, ITU

Citation preview

13: Cloud Stacks

Zubair Nabi

zubair.nabi@itu.edu.pk

April 21, 2013

Zubair Nabi 13: Cloud Stacks April 21, 2013 1 / 27

Outline

1 Server-side Stacks

2 Client-side Libraries

Zubair Nabi 13: Cloud Stacks April 21, 2013 2 / 27

Outline

1 Server-side Stacks

2 Client-side Libraries

Zubair Nabi 13: Cloud Stacks April 21, 2013 3 / 27

Introduction

Cloud service creation and offering requires an entire ecosystem

Focusing on just the software side, solutions are needed to managecomputation, storage, and networking

A number of open source solutions with a set of pros and cons

Zubair Nabi 13: Cloud Stacks April 21, 2013 4 / 27

Introduction

Cloud service creation and offering requires an entire ecosystem

Focusing on just the software side, solutions are needed to managecomputation, storage, and networking

A number of open source solutions with a set of pros and cons

Zubair Nabi 13: Cloud Stacks April 21, 2013 4 / 27

Introduction

Cloud service creation and offering requires an entire ecosystem

Focusing on just the software side, solutions are needed to managecomputation, storage, and networking

A number of open source solutions with a set of pros and cons

Zubair Nabi 13: Cloud Stacks April 21, 2013 4 / 27

CloudStack1

Console for managing data center resources

Manages virtual machines, networking components, and storageI Enables IaaS

Used by Zynga, Nokia Research, etc.

Possible to convert Amazon EC2 API to the CloudStack one

1http://cloudstack.apache.org/Zubair Nabi 13: Cloud Stacks April 21, 2013 5 / 27

CloudStack1

Console for managing data center resourcesManages virtual machines, networking components, and storage

I Enables IaaS

Used by Zynga, Nokia Research, etc.

Possible to convert Amazon EC2 API to the CloudStack one

1http://cloudstack.apache.org/Zubair Nabi 13: Cloud Stacks April 21, 2013 5 / 27

CloudStack1

Console for managing data center resourcesManages virtual machines, networking components, and storage

I Enables IaaS

Used by Zynga, Nokia Research, etc.

Possible to convert Amazon EC2 API to the CloudStack one

1http://cloudstack.apache.org/Zubair Nabi 13: Cloud Stacks April 21, 2013 5 / 27

CloudStack1

Console for managing data center resourcesManages virtual machines, networking components, and storage

I Enables IaaS

Used by Zynga, Nokia Research, etc.

Possible to convert Amazon EC2 API to the CloudStack one

1http://cloudstack.apache.org/Zubair Nabi 13: Cloud Stacks April 21, 2013 5 / 27

CloudStack1

Console for managing data center resourcesManages virtual machines, networking components, and storage

I Enables IaaS

Used by Zynga, Nokia Research, etc.

Possible to convert Amazon EC2 API to the CloudStack one

1http://cloudstack.apache.org/Zubair Nabi 13: Cloud Stacks April 21, 2013 5 / 27

What can it do?

Can be used by both service providers and enterprises

Set up an on-demand, elastic cloud computing serviceI Virtual machine instances, storage volumes, and networking

configurations

Set up a private cloud for internal usage

Zubair Nabi 13: Cloud Stacks April 21, 2013 6 / 27

What can it do?

Can be used by both service providers and enterprisesSet up an on-demand, elastic cloud computing service

I Virtual machine instances, storage volumes, and networkingconfigurations

Set up a private cloud for internal usage

Zubair Nabi 13: Cloud Stacks April 21, 2013 6 / 27

What can it do?

Can be used by both service providers and enterprisesSet up an on-demand, elastic cloud computing service

I Virtual machine instances, storage volumes, and networkingconfigurations

Set up a private cloud for internal usage

Zubair Nabi 13: Cloud Stacks April 21, 2013 6 / 27

What can it do?

Can be used by both service providers and enterprisesSet up an on-demand, elastic cloud computing service

I Virtual machine instances, storage volumes, and networkingconfigurations

Set up a private cloud for internal usage

Zubair Nabi 13: Cloud Stacks April 21, 2013 6 / 27

Features

Multiple Hypervisor Support: Supports Citrix XenServer, VMWarevSphere, KVM, and Xen

Massively Scalable Infrastructure Management: Can manage tensof thousands of geographically distributed datacenters

Automatic Configuration Management: Automatic configuration ofeach guest’s VMs, network, and storage settings

Zubair Nabi 13: Cloud Stacks April 21, 2013 7 / 27

Features

Multiple Hypervisor Support: Supports Citrix XenServer, VMWarevSphere, KVM, and Xen

Massively Scalable Infrastructure Management: Can manage tensof thousands of geographically distributed datacenters

Automatic Configuration Management: Automatic configuration ofeach guest’s VMs, network, and storage settings

Zubair Nabi 13: Cloud Stacks April 21, 2013 7 / 27

Features

Multiple Hypervisor Support: Supports Citrix XenServer, VMWarevSphere, KVM, and Xen

Massively Scalable Infrastructure Management: Can manage tensof thousands of geographically distributed datacenters

Automatic Configuration Management: Automatic configuration ofeach guest’s VMs, network, and storage settings

Zubair Nabi 13: Cloud Stacks April 21, 2013 7 / 27

Features (2)

Graphical User Interface: Web interfaces both for the administratoras well as the user

API and Extensibility: Exposes a programmatic interface to allmanagement features

High Availability: Management Server itself can be deployed acrossmultiple nodes, with load balancing

Zubair Nabi 13: Cloud Stacks April 21, 2013 8 / 27

Features (2)

Graphical User Interface: Web interfaces both for the administratoras well as the user

API and Extensibility: Exposes a programmatic interface to allmanagement features

High Availability: Management Server itself can be deployed acrossmultiple nodes, with load balancing

Zubair Nabi 13: Cloud Stacks April 21, 2013 8 / 27

Features (2)

Graphical User Interface: Web interfaces both for the administratoras well as the user

API and Extensibility: Exposes a programmatic interface to allmanagement features

High Availability: Management Server itself can be deployed acrossmultiple nodes, with load balancing

Zubair Nabi 13: Cloud Stacks April 21, 2013 8 / 27

Management Server

All resources such as hosts, storage devices, and IP addresses areprovided to it for management

Runs on a dedicated server or VM

Controls allocation of VMs to hosts and assignment of storage and IPaddresses to the VM instance

Runs within a Tomcat container and uses a MySQL DB for persistence

Zubair Nabi 13: Cloud Stacks April 21, 2013 9 / 27

Management Server

All resources such as hosts, storage devices, and IP addresses areprovided to it for management

Runs on a dedicated server or VM

Controls allocation of VMs to hosts and assignment of storage and IPaddresses to the VM instance

Runs within a Tomcat container and uses a MySQL DB for persistence

Zubair Nabi 13: Cloud Stacks April 21, 2013 9 / 27

Management Server

All resources such as hosts, storage devices, and IP addresses areprovided to it for management

Runs on a dedicated server or VM

Controls allocation of VMs to hosts and assignment of storage and IPaddresses to the VM instance

Runs within a Tomcat container and uses a MySQL DB for persistence

Zubair Nabi 13: Cloud Stacks April 21, 2013 9 / 27

Management Server

All resources such as hosts, storage devices, and IP addresses areprovided to it for management

Runs on a dedicated server or VM

Controls allocation of VMs to hosts and assignment of storage and IPaddresses to the VM instance

Runs within a Tomcat container and uses a MySQL DB for persistence

Zubair Nabi 13: Cloud Stacks April 21, 2013 9 / 27

Cloud Infrastructure

One or more zones (typically datacenters) consisting of various hoststo run VMs

Zone: Consists of one or more pods

Pod: L2 switch and one or more clusters

Cluster: Consists of one or more hosts and primary storage

Host: Single compute node within a cluster to run guest VMs

Primary storage: Associated with a cluster and stores disk volumesfor all VMs

Secondary storage: Associated with a zone and stores ISO imagesand disk volume snapshots

Zubair Nabi 13: Cloud Stacks April 21, 2013 10 / 27

Cloud Infrastructure

One or more zones (typically datacenters) consisting of various hoststo run VMs

Zone: Consists of one or more pods

Pod: L2 switch and one or more clusters

Cluster: Consists of one or more hosts and primary storage

Host: Single compute node within a cluster to run guest VMs

Primary storage: Associated with a cluster and stores disk volumesfor all VMs

Secondary storage: Associated with a zone and stores ISO imagesand disk volume snapshots

Zubair Nabi 13: Cloud Stacks April 21, 2013 10 / 27

Cloud Infrastructure

One or more zones (typically datacenters) consisting of various hoststo run VMs

Zone: Consists of one or more pods

Pod: L2 switch and one or more clusters

Cluster: Consists of one or more hosts and primary storage

Host: Single compute node within a cluster to run guest VMs

Primary storage: Associated with a cluster and stores disk volumesfor all VMs

Secondary storage: Associated with a zone and stores ISO imagesand disk volume snapshots

Zubair Nabi 13: Cloud Stacks April 21, 2013 10 / 27

Cloud Infrastructure

One or more zones (typically datacenters) consisting of various hoststo run VMs

Zone: Consists of one or more pods

Pod: L2 switch and one or more clusters

Cluster: Consists of one or more hosts and primary storage

Host: Single compute node within a cluster to run guest VMs

Primary storage: Associated with a cluster and stores disk volumesfor all VMs

Secondary storage: Associated with a zone and stores ISO imagesand disk volume snapshots

Zubair Nabi 13: Cloud Stacks April 21, 2013 10 / 27

Cloud Infrastructure

One or more zones (typically datacenters) consisting of various hoststo run VMs

Zone: Consists of one or more pods

Pod: L2 switch and one or more clusters

Cluster: Consists of one or more hosts and primary storage

Host: Single compute node within a cluster to run guest VMs

Primary storage: Associated with a cluster and stores disk volumesfor all VMs

Secondary storage: Associated with a zone and stores ISO imagesand disk volume snapshots

Zubair Nabi 13: Cloud Stacks April 21, 2013 10 / 27

Cloud Infrastructure

One or more zones (typically datacenters) consisting of various hoststo run VMs

Zone: Consists of one or more pods

Pod: L2 switch and one or more clusters

Cluster: Consists of one or more hosts and primary storage

Host: Single compute node within a cluster to run guest VMs

Primary storage: Associated with a cluster and stores disk volumesfor all VMs

Secondary storage: Associated with a zone and stores ISO imagesand disk volume snapshots

Zubair Nabi 13: Cloud Stacks April 21, 2013 10 / 27

Cloud Infrastructure

One or more zones (typically datacenters) consisting of various hoststo run VMs

Zone: Consists of one or more pods

Pod: L2 switch and one or more clusters

Cluster: Consists of one or more hosts and primary storage

Host: Single compute node within a cluster to run guest VMs

Primary storage: Associated with a cluster and stores disk volumesfor all VMs

Secondary storage: Associated with a zone and stores ISO imagesand disk volume snapshots

Zubair Nabi 13: Cloud Stacks April 21, 2013 10 / 27

Networking Options

Basic: Similar to AWS: guest isolation through L3 mechanisms suchas IP address source filtering

Advanced: Flexibility in defining guest networks

Zubair Nabi 13: Cloud Stacks April 21, 2013 11 / 27

Networking Options

Basic: Similar to AWS: guest isolation through L3 mechanisms suchas IP address source filtering

Advanced: Flexibility in defining guest networks

Zubair Nabi 13: Cloud Stacks April 21, 2013 11 / 27

OpenStack2

Public and private IaaS cloud management software stack

Used by PayPal, Cisco, Intel, HP, Rackspace, AT&T, etc.

Divided into a number of services

The Cloud Controller hosts the databases, message queue,dashboard, and API endpoints

2http://www.openstack.org/Zubair Nabi 13: Cloud Stacks April 21, 2013 12 / 27

OpenStack2

Public and private IaaS cloud management software stack

Used by PayPal, Cisco, Intel, HP, Rackspace, AT&T, etc.

Divided into a number of services

The Cloud Controller hosts the databases, message queue,dashboard, and API endpoints

2http://www.openstack.org/Zubair Nabi 13: Cloud Stacks April 21, 2013 12 / 27

OpenStack2

Public and private IaaS cloud management software stack

Used by PayPal, Cisco, Intel, HP, Rackspace, AT&T, etc.

Divided into a number of services

The Cloud Controller hosts the databases, message queue,dashboard, and API endpoints

2http://www.openstack.org/Zubair Nabi 13: Cloud Stacks April 21, 2013 12 / 27

OpenStack2

Public and private IaaS cloud management software stack

Used by PayPal, Cisco, Intel, HP, Rackspace, AT&T, etc.

Divided into a number of services

The Cloud Controller hosts the databases, message queue,dashboard, and API endpoints

2http://www.openstack.org/Zubair Nabi 13: Cloud Stacks April 21, 2013 12 / 27

Compute (Nova)

Manages the lifecycle of VM instances

In charge of scheduling, resource provisioning, live migration, andsecurity

Supports multiple hypervisors including KVM and Xen

Zubair Nabi 13: Cloud Stacks April 21, 2013 13 / 27

Compute (Nova)

Manages the lifecycle of VM instances

In charge of scheduling, resource provisioning, live migration, andsecurity

Supports multiple hypervisors including KVM and Xen

Zubair Nabi 13: Cloud Stacks April 21, 2013 13 / 27

Compute (Nova)

Manages the lifecycle of VM instances

In charge of scheduling, resource provisioning, live migration, andsecurity

Supports multiple hypervisors including KVM and Xen

Zubair Nabi 13: Cloud Stacks April 21, 2013 13 / 27

Storage

Provides both block and object storage for use by the VM

Users are allowed to create block storage devices

These devices can dynamically be attached and removed from VMinstances

Also provides a distributed object storage, called Swift

Zubair Nabi 13: Cloud Stacks April 21, 2013 14 / 27

Storage

Provides both block and object storage for use by the VM

Users are allowed to create block storage devices

These devices can dynamically be attached and removed from VMinstances

Also provides a distributed object storage, called Swift

Zubair Nabi 13: Cloud Stacks April 21, 2013 14 / 27

Storage

Provides both block and object storage for use by the VM

Users are allowed to create block storage devices

These devices can dynamically be attached and removed from VMinstances

Also provides a distributed object storage, called Swift

Zubair Nabi 13: Cloud Stacks April 21, 2013 14 / 27

Storage

Provides both block and object storage for use by the VM

Users are allowed to create block storage devices

These devices can dynamically be attached and removed from VMinstances

Also provides a distributed object storage, called Swift

Zubair Nabi 13: Cloud Stacks April 21, 2013 14 / 27

Object Storage

Users access binary objects through a RESTful API

Similar to Amazon S3

Useful for storing and managing large datasets

Can also be used by the system to store VM images

Zubair Nabi 13: Cloud Stacks April 21, 2013 15 / 27

Object Storage

Users access binary objects through a RESTful API

Similar to Amazon S3

Useful for storing and managing large datasets

Can also be used by the system to store VM images

Zubair Nabi 13: Cloud Stacks April 21, 2013 15 / 27

Object Storage

Users access binary objects through a RESTful API

Similar to Amazon S3

Useful for storing and managing large datasets

Can also be used by the system to store VM images

Zubair Nabi 13: Cloud Stacks April 21, 2013 15 / 27

Object Storage

Users access binary objects through a RESTful API

Similar to Amazon S3

Useful for storing and managing large datasets

Can also be used by the system to store VM images

Zubair Nabi 13: Cloud Stacks April 21, 2013 15 / 27

Block Storage

Exposes a block device to the user

Users interact with the storage by mounting volumes within their VMinstances

Can be detached from one instance and re-attached to another whileremaining persistent

Implemented internally through the Cinder project which supportsmultiple back-endsSome drivers allow the instance direct access to the underlyingphysical block device

I Improves I/O performance

Zubair Nabi 13: Cloud Stacks April 21, 2013 16 / 27

Block Storage

Exposes a block device to the user

Users interact with the storage by mounting volumes within their VMinstances

Can be detached from one instance and re-attached to another whileremaining persistent

Implemented internally through the Cinder project which supportsmultiple back-endsSome drivers allow the instance direct access to the underlyingphysical block device

I Improves I/O performance

Zubair Nabi 13: Cloud Stacks April 21, 2013 16 / 27

Block Storage

Exposes a block device to the user

Users interact with the storage by mounting volumes within their VMinstances

Can be detached from one instance and re-attached to another whileremaining persistent

Implemented internally through the Cinder project which supportsmultiple back-endsSome drivers allow the instance direct access to the underlyingphysical block device

I Improves I/O performance

Zubair Nabi 13: Cloud Stacks April 21, 2013 16 / 27

Block Storage

Exposes a block device to the user

Users interact with the storage by mounting volumes within their VMinstances

Can be detached from one instance and re-attached to another whileremaining persistent

Implemented internally through the Cinder project which supportsmultiple back-ends

Some drivers allow the instance direct access to the underlyingphysical block device

I Improves I/O performance

Zubair Nabi 13: Cloud Stacks April 21, 2013 16 / 27

Block Storage

Exposes a block device to the user

Users interact with the storage by mounting volumes within their VMinstances

Can be detached from one instance and re-attached to another whileremaining persistent

Implemented internally through the Cinder project which supportsmultiple back-endsSome drivers allow the instance direct access to the underlyingphysical block device

I Improves I/O performance

Zubair Nabi 13: Cloud Stacks April 21, 2013 16 / 27

Block Storage

Exposes a block device to the user

Users interact with the storage by mounting volumes within their VMinstances

Can be detached from one instance and re-attached to another whileremaining persistent

Implemented internally through the Cinder project which supportsmultiple back-endsSome drivers allow the instance direct access to the underlyingphysical block device

I Improves I/O performance

Zubair Nabi 13: Cloud Stacks April 21, 2013 16 / 27

Networking

API-driven network and IP address management

Users are allowed to create their own networks

VLANs used to provide each allocation its own subnet and segregationfrom other allocations

Zubair Nabi 13: Cloud Stacks April 21, 2013 17 / 27

Networking

API-driven network and IP address management

Users are allowed to create their own networks

VLANs used to provide each allocation its own subnet and segregationfrom other allocations

Zubair Nabi 13: Cloud Stacks April 21, 2013 17 / 27

Networking

API-driven network and IP address management

Users are allowed to create their own networks

VLANs used to provide each allocation its own subnet and segregationfrom other allocations

Zubair Nabi 13: Cloud Stacks April 21, 2013 17 / 27

Dashboard (Horizon)

Web interface for administrators and users

Gives access to VM image management, VM instance lifecyclemanagement, and storage

Zubair Nabi 13: Cloud Stacks April 21, 2013 18 / 27

Dashboard (Horizon)

Web interface for administrators and users

Gives access to VM image management, VM instance lifecyclemanagement, and storage

Zubair Nabi 13: Cloud Stacks April 21, 2013 18 / 27

Identity (Keystone)

Centralized user account service with authentication and accesscontrol

Registry of OpenStack services

Zubair Nabi 13: Cloud Stacks April 21, 2013 19 / 27

Identity (Keystone)

Centralized user account service with authentication and accesscontrol

Registry of OpenStack services

Zubair Nabi 13: Cloud Stacks April 21, 2013 19 / 27

Image (Glance)

Various image management capabilities, including registration anddelivery

Supports multiple image formats

Zubair Nabi 13: Cloud Stacks April 21, 2013 20 / 27

Image (Glance)

Various image management capabilities, including registration anddelivery

Supports multiple image formats

Zubair Nabi 13: Cloud Stacks April 21, 2013 20 / 27

Message Queue

Services communicate with each other using the message queue

If the message queue fails, the cluster enters a “read only” state

Zubair Nabi 13: Cloud Stacks April 21, 2013 21 / 27

Message Queue

Services communicate with each other using the message queue

If the message queue fails, the cluster enters a “read only” state

Zubair Nabi 13: Cloud Stacks April 21, 2013 21 / 27

Application Programming Interface (API)

Command line client

Amazon EC2 compatibility APIs

Zubair Nabi 13: Cloud Stacks April 21, 2013 22 / 27

Application Programming Interface (API)

Command line client

Amazon EC2 compatibility APIs

Zubair Nabi 13: Cloud Stacks April 21, 2013 22 / 27

Outline

1 Server-side Stacks

2 Client-side Libraries

Zubair Nabi 13: Cloud Stacks April 21, 2013 23 / 27

Libcloud3

Abstracts away the APIs of different cloud vendors

Negates vendor API lock-in

Computation: Such as Amazon EC2 and Rackspace CloudServers

Storage: Such as Amazon S3 and Rackspace CloudFiles

3http://libcloud.apache.org/Zubair Nabi 13: Cloud Stacks April 21, 2013 24 / 27

Libcloud3

Abstracts away the APIs of different cloud vendors

Negates vendor API lock-in

Computation: Such as Amazon EC2 and Rackspace CloudServers

Storage: Such as Amazon S3 and Rackspace CloudFiles

3http://libcloud.apache.org/Zubair Nabi 13: Cloud Stacks April 21, 2013 24 / 27

Libcloud3

Abstracts away the APIs of different cloud vendors

Negates vendor API lock-in

Computation: Such as Amazon EC2 and Rackspace CloudServers

Storage: Such as Amazon S3 and Rackspace CloudFiles

3http://libcloud.apache.org/Zubair Nabi 13: Cloud Stacks April 21, 2013 24 / 27

Libcloud3

Abstracts away the APIs of different cloud vendors

Negates vendor API lock-in

Computation: Such as Amazon EC2 and Rackspace CloudServers

Storage: Such as Amazon S3 and Rackspace CloudFiles

3http://libcloud.apache.org/Zubair Nabi 13: Cloud Stacks April 21, 2013 24 / 27

Compute

Abstraction for more than 20 providers such as Amazon, Rackspace,Nimbus, etc.

Ability to run deployment scripts on the newly created servers

Zubair Nabi 13: Cloud Stacks April 21, 2013 25 / 27

Compute

Abstraction for more than 20 providers such as Amazon, Rackspace,Nimbus, etc.

Ability to run deployment scripts on the newly created servers

Zubair Nabi 13: Cloud Stacks April 21, 2013 25 / 27

Storage

Abstraction for more than 10 providers such as Amazon, Rackspace,CloudFiles, etc.

Zubair Nabi 13: Cloud Stacks April 21, 2013 26 / 27

References

OpenStack operations guide: http://docs.openstack.org/trunk/openstack-ops/content/

Zubair Nabi 13: Cloud Stacks April 21, 2013 27 / 27

Recommended