1 open stack cloud system lecture 7. 2 what is openstack it is not a single open source project it...

28
1 Open Stack Cloud System Lecture 7

Upload: hugo-russell

Post on 17-Jan-2018

217 views

Category:

Documents


0 download

DESCRIPTION

3 What is OpenStack  A group of open source projects aimed at providing comprehensive cloud services  There are currently seven core projects within OpenStack  More projects are in “incubation” phase  All these projects communicate via public APIs  It is supported by the OpenStack Foundation, an independent legal entity  Released under Apache License Source:

TRANSCRIPT

Page 1: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

1

Open Stack Cloud SystemLecture 7

Page 2: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

2

What is OpenStack

It is not a single open source project

It is not a hypervisor

It is not a storage platform

It is not (necessarily) competitive to VMware

Page 3: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

3

What is OpenStack

A group of open source projects aimed at providing comprehensive cloud

services

There are currently seven core projects within OpenStack

More projects are in “incubation” phase

All these projects communicate via public APIs

It is supported by the OpenStack Foundation, an independent legal entity

Released under Apache License

Source: http://ilearnstack.com/2013/04/23/introduction-to-openstack-2/ http://www.openstack.org/

Page 4: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

4

Virtual Machine: A software package, sometimes using hardware

acceleration, that allows an isolated guest operating system to run

within a host operating system

Stateless: Once shut down, all HW states disappear

Hypervisor: A software platform that is responsible for creating,

running, and destroying multiple virtual machines

OpenStack is hypervisor agnostic

Type I and Type II hypervisor

VM and Hypervisor

Page 5: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

5

Type 1 and Type 2 Hypervisors

Page 6: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

6

Disk images that can be booted on a virtual machine by a hypervisor.

Can be a single image that contains boot loader, kernel and operating system.

Boot loader and kernel can be separated.

Allows for custom kernels and resizable images.

REST (REpresentational State Transfer) is an architectural style, and an

approach to communications that is often used in the development of web services

REST is often preferred over the more heavyweight SOAP (Simple Object Access

Protocol) style

REST does not leverage as much bandwidth, which makes it a better fit for use

over the Internet

Virtual Machine Images and REST

Page 7: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

7

Object Storage the way in which we organize and

work with units of storage, called objects

Every object contains three things data itself, metadata

and unique identifier

Static Web content, data backups and archival images,

and multimedia (videos, pictures, or music) files are best

stored as objects

Block Storage files are split into evenly sized blocks

of data

each with its own address but with no additional

information (metadata) to provide more context for what

that block of data is

Object Storage vs Block Storage

Page 8: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

8

Features and Benefits of Openstack

Instance life cycle management i.e. Run, reboot, suspend, resize and terminate instances

Management of compute resources i.e. CPU, memory, disk, and network interfaces.

Management of Local Area Networks

API with rate limiting and Authentication to manage who has access to compute resources

and prevent users from impacting each other with excessive API utilization

Distributed and asynchronous architecture for massively scalable and highly available

system

Virtual Machine (VM) image management i.e. store, import, share, and query images

Floating IP addresses i.e. Ability to assign (and re-assign) IP addresses to VMs

Security Groups i.e. flexibility to assign and control access to VM instances by creating

separation between resource pools

Role Based Access Control (RBAC) to ensure security by user, role and project

REST-based API

http://www.openstack.org/

Page 9: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

9

Openstack Components

• http://applycloud.blogspot.kr/2013/05/openstack-components.html,  24th May 2013 by pachu

Code name

Project name

Page 10: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

10

Openstack Components OverviewCore Components

Component Name Purpose DescriptionNova Compute Provides virtual servers on demand

Quantum Network Provides network connectivity as a service between interface devices managed by other Openstack services

Swift Object Store Provides object storage. It allows you to store or retrieve files ( but not mount directories like a fileserver)

Cinder Block Storage Provides persistent block storage to guest VMs

Glance Image Repository Provides a catalog and repository for virtual disk images

Horizon Dashboard Provides a modular wen based user interface for all Openstack services

Keystone Identity Provides authentication and authorization for all the Openstack services

Under Development ComponentsCeilometer Metering Central collection from metering / monitoring data

Heat Orchestration Template based orchestration engine for Openstack

• http://applycloud.blogspot.kr/2013/05/openstack-components.html,  24th May 2013 by pachu

Page 11: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

11

OpenStack is comprised of seven core projects that form a complete IaaS solution

• http://ken.pepple.info/openstack/2012/09/25/openstack-folsom-architecture/• http://www.openstack.org/

IaaS

Components Interaction

Page 12: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

12

Source: http://ilearnstack.com/2013/04/23/introduction-to-openstack-2/ http://www.openstack.org/

Horizon – Dashboard Modular web-based user interface for all the OpenStack services

Operations launching an instance, assigning IP addresses and setting access controls

can be performed over cloud

Page 13: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

13

Keystone is a framework for authentication and authorization for all the OpenStack services.

Key Capabilities Keystone handles API requests

Provides configurable catalog, policy, token

and identity services.

It provides the ability to add

tenants - users groups

manage permissions between users

and groups

Permissions include the ability to

launch and terminate instances

Keystone – Identity

Source: http://ilearnstack.com/2013/04/23/introduction-to-openstack-2/ http://www.openstack.org/

Page 14: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

14

Key Components nova-api   a RESTful API web service which accepts

incoming commands to interact with the OpenStack

cloud

nova-compute a worker daemon which creates and

terminates virtual machine instances via Hypervisor’s

APIs

nova-scheduler takes a request from the queue

and determines which compute server host it should

run on

Nova – Compute

Source: http://ilearnstack.com/2013/04/23/introduction-to-openstack-2/ http://www.openstack.org/

Main part – core component and one of 1st projects

Most complicated and distributed component

Delivers a fully featured, redundant, and scalable cloud computing platform

A large number of processes cooperate to turn end user API requests into

running virtual machines

Page 15: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

15Source: http://ilearnstack.com/2013/04/23/introduction-to-openstack-2/ http://www.openstack.org/

nova-conductor :  Provides services for nova-compute, such as completing database updates and

handling long-running tasks

nova database : It stores most of the build-time and run-time state for a cloud infrastructure.

Queue : Provides a central hub for passing messages between daemons. This is usually implemented

with RabbitMQ.

Console services : Allows end users to access their virtual instance’s console through a proxy. This

involves several daemons (nova-console, nova-novncproxy and nova-consoleauth).

nova-network : it’s a worker daemon very similar to nova-compute. It accepts networking tasks from

the queue and then performs tasks to manipulate the network (such as setting up bridging interfaces or

changing iptables rules). This functionality is being migrated to Quantum, a separate OpenStack

service.

nova-volume : Manages creation, attaching and detaching of persistent volumes to compute

instances. This functionality is being migrated to Cinder, a separate OpenStack service.

Nova – Compute ( Key Components)

Page 16: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

16

Key Capabilities glance-api accepts Image API calls for image

discovery, image retrieval and image storage

glance-registry stores, processes and retrieves

metadata about images (size, type, etc.)

glance database A database to store the image

metadata

storage repository for the actual image files.

Glance supports normal file systems, RADOS block

devices, Amazon S3, HTTP and Swift

Glance – Image store

Source: http://ilearnstack.com/2013/04/23/introduction-to-openstack-2/ http://www.openstack.org/

Provides discovery, registration and delivery services for disk and server images

Page 17: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

17

Key Capabilities quantum-server accept API requests and route them

to the correct quantum plugin

Plugins and agents perform actual actions, like

plug/unplug ports, creating networks and subnets and

IP addressing

message queue to route info between quantum-

server and various agents

quantum database to store networking state for

particular plugins

Source: http://ilearnstack.com/2013/04/23/introduction-to-openstack-2/ http://www.openstack.org/

Provides “ network connectivity as a service ” between interface devices

Allows users to create their own networks and then attach interfaces to them

Pluggable architecture to support many popular networking vendors and

technologies

Quantum – Network

Page 18: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

18

Key Capabilities cinder-api accepts requests and routes them to cinder-

volume for action.

cinder-volume reacts reading or writing to the cinder

database to maintain state, interacts with other

processes (like cinder-scheduler) through a message

queue and directly on block storage providing hardware

or software.

cinder-scheduler picks the optimal block storage node

to create the volume on.

messages queue route information between Cinder

processes.

cinder database store volumes

Source: http://ilearnstack.com/2013/04/23/introduction-to-openstack-2/ http://www.openstack.org/

Cinder allows block devices to be exposed and connected to compute instances

for expanded storage & better performance

Cinder – Block Storage

Page 19: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

19

Key Capabilities Swift Proxy server accepts incoming requests, like

files to upload, modifications to metadata, container

creation, container listing etc.

Accounts server manage accounts defined with the

object storage service

Container servers manage a mapping of containers,

folders, within the object store service

Object servers manage actual objects, files, on the

storage nodes

Source: http://ilearnstack.com/2013/04/23/introduction-to-openstack-2/ http://www.openstack.org/

Object store allows you to store or retrieve files.

It provides a fully distributed

API-accessible storage platform that can be integrated directly into applications

or used for backup, archiving and data retention

Swift – Object Storage

Page 20: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

20

Ceilometer, Heat and Trove

Ceilometer: Monitors and meters the OpenStack cloud for billing,

benchmarking, scalability, and statistical purposes

Heat: Orchestrates multiple composite cloud applications by using

either the native HOT template format or the AWS Cloud Formation

template format, through both an OpenStack-native REST API and a

Cloud Formation-compatible Query API

Trove: Provides scalable and reliable Cloud Database-as-a-Service

functionality for both relational and non-relational database engines

http://www.openstack.org/

Page 21: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

21

VM Creation Process

Two Minutes Video

Page 22: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

22

VM Creation Process

Page 23: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

23

Openstack Release History

Austin 21 October 2010

Bexar 3 February 2011

Cactus 15 April 2011

Diablo 22 September 2011

Essex 5 April 2012

Folsom 27 September 2012

Grizzly 4 April 2013

Havana 17 October 2013

Icehouse 17 April 2014

Juno October 2014

K-series April 2015

Page 24: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

24

Complete List with User Stories : http://www.openstack.org/user-stories/

Web / SaaS/ eCommerce : PayPal , HP , Wikimedia , etc.

Academic / Research / Government : Argonne National Labs, CERN,

MIT Computer Science & Artificial Intelligence Lab (CSAIL)

Information Technology: HP, IBM, Cisco, eNovance, Opera Software,

Seagate, Aptira, etc.

Film / Media / Gaming : Comcast , Sony Gaming Network.

Who is Using Openstack

Page 25: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

25

Openstack Deployment

Controller Node: Responsible for most of the openstack services and can be

defined as nerve center. All requests are routed through this node

Compute Node: Responsible for managing virtual machines. Hypervisor is

runs on compute node

Page 26: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

26

Networking Requirements

For an OpenStack production deployment, most nodes must have

these network interface cards:

One network interface card for external network traffic

Another card to communicate with other OpenStack nodes.

For simple test cases, machine with a single network interface card

can also be used

Controller and compute node uses the physical IP and virtual IP

addresses

Page 27: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

27

Services Installation

Controller Node Compute Node

Mysql Server Mysql-client

RabbitMQ (Queuing) Nova-compute

Keystone (Authentication)  

 

 

 

 

Glance (Image)

Nova-api

Nova-cert

Nova-consoleauth

Nova-scheduler

Nova-conductor

Nova-novncproxy

Dashboard (Horizon)

Cinder (Block Storage)

Page 28: 1 Open Stack Cloud System Lecture 7. 2 What is OpenStack  It is not a single open source project  It is not a hypervisor  It is not a storage platform

28

Thanks