0% found this document useful (0 votes)
8 views25 pages

OpenStack Overview and Capabilities

Uploaded by

madhav9847
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views25 pages

OpenStack Overview and Capabilities

Uploaded by

madhav9847
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

CLOUD COMPUTING

OPENSTACK:

PROF. SOUMYA K. GHOSH


DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
IIT KHARAGPUR
What is OpenStack?

OpenStack is a cloud operating system that controls large pools of compute,


storage, and networking resources throughout a datacenter, all managed
through a dashboard that gives administrators control while empowering their
users to provision resources through a web interface.

Source: OpenStack, [Link]

2
Job Trend for Openstack

Source: [Link] Accessed on:July-2017

3
OpenStack Capability

▪ Software as Service (SaaS)


▪ Browser or Thin Client access

▪ Platform as Service (PaaS)


▪ On top of IaaS e.g. Cloud Foundry

▪ Infrastructure as Service (IaaS)


▪ Provision Compute, Network, Storage

4
OpenStack Capability
▪ Virtual Machine (VMs) on demand
▪ Provisioning
▪ Snapshotting
▪ Network
▪ Storage for VMs and arbitrary files
▪ Multi-tenancy
▪ Quotas for different project, users
▪ User can be associated with multiple projects

5
OpenStack History

*Started as a collaboration between NASA and Rackspace

6
OpenStack Major Components

▪ Service - Compute
▪ Project - Nova

Manages the lifecycle of compute instances in an OpenStack


environment. Responsibilities include spawning, scheduling and
decommissioning of virtual machines on demand.

7
OpenStack Major Components
▪ Service - Networking
▪ Project - Neutron

• Enables Network-Connectivity-as-a-Service for other OpenStack


services, such as OpenStack Compute.
• Provides an API for users to define networks and the attachments
into them.
• Has a pluggable architecture that supports many popular networking
vendors and technologies.

8
OpenStack Major Components
▪ Service - Object storage
▪ Project - Swift

• Stores and retrieves arbitrary unstructured data objects via a RESTFul, HTTP
based API.
• It is highly fault tolerant with its data replication and scale-out architecture. Its
implementation is not like a file server with mountable directories.
• In this case, it writes objects and files to multiple drives, ensuring the data is
replicated across a server cluster.

9
OpenStack Major Components

▪ Service- Block storage


▪ Project- Cinder

• Provides persistent block storage to running instances.


• Its pluggable driver architecture facilitates the creation and management of
block storage devices.

10
OpenStack Major Components

▪ Service - Identity
▪ Project - Keystone

• Provides an authentication and authorization service for other


OpenStack services.
• Provides a catalog of endpoints for all OpenStack services.

11
OpenStack Major Components

▪ Service - Image service


▪ Project - Glance

• Stores and retrieves virtual machine disk images.


• OpenStack Compute makes use of this during instance provisioning.

12
OpenStack Major Components

▪ Service - Telemetry
▪ Project - Ceilometer

• Monitors and meters the OpenStack cloud for billing, benchmarking,


scalability, and statistical purposes.

13
OpenStack Major Components

▪ Service - Dashboard
▪ Project - Horizon

• Provides a web-based self-service portal to interact with underlying


OpenStack services, such as launching an instance, assigning IP
addresses and configuring access controls.

14
Architecture of Openstack

15
Openstack Work Flow 1. User logs in to UI Specifies 2. Horizon sends HTTP
4. Keystone sends temporary token back to VM params: name,flavor,keys,etc. request to Keystone. Auth
Horizon via HTTP. Horizon sends POST and hits "Create" button info is specified in HTTP
request to Nova API(signed with given headers.
token).
3. Keystone sends
temporary token back to
Horizon via HTTP.

5. Nova API sends HTTP


request to validate
API token to Keystone.

16
Auth Token Usage

17
Provisioning Flow
▪ Nova API makes [Link] to Scheduler. It publishes a short message to scheduler queue with VM
info.
▪ Scheduler picks up the message from MQ.
▪ Scheduler fetches information about the whole cluster from database, filters, selects compute node
and updates DB with its ID
▪ Scheduler publishes message to the compute queue (based on host ID) to trigger VM provisioning
▪ Nova Compute gets message from MQ
▪ Nova Compute makes [Link] to Nova Conductor for information on VM from DB
▪ Nova Compute makes a call to Neutron API to provision network for the instance
▪ Neutron configures IP, gateway, DNS name, L2 connectivity etc.
▪ It is assumed a volume is already created. Nova Compute contacts Cinder to get volume data. Can
also attach volumes after VM is built.

18
Nova Compute Driver

19
Nova scheduler filtering

20
Neutron Architecture

21
Glance Architecture

22
Cinder Architecture

23
Keystone Architecture

24
OpenStack Storage Concepts
• Ephemeral storage:
• Persists until VM is terminated
• Accessible from within VM as local file system
• Used to run operating system and/or scratch space
• Managed by Nova
• Block storage:
• Persists until specifically deleted by user
• Accessible from within VM as a block device (e.g. /dev/vdc)
• Used to add additional persistent storage to VM and/or run operating system
• Managed by Cinder
• Object storage:
• Persists until specifically deleted by user
• Accessible from anywhere
• Used to add store files, including VM images
• Managed by Swift

25

You might also like