29
OpenStack An Overview 09/05/2014 Bruno Grazioli

OpenStack - An Overview

  • Upload
    graziol

  • View
    116

  • Download
    1

Embed Size (px)

DESCRIPTION

An overview of OpenStack with an emphasis on the Icehouse release

Citation preview

Page 1: OpenStack - An Overview

OpenStack

An Overview

09/05/2014

Bruno Grazioli

Page 2: OpenStack - An Overview

2

What is OpenStack?

OpenStack is open source softw�are to build private and public clouds

Initiated by Rackspace Cloud and NASA in 2010

Thee firrst core modules �ere called Compute (Nova) and Object Storage (S�iftw)

Since its founding, it has seen �ide industry endorsement and no� numbers more than 100 supporting companies. Including many of the industry's largest organizations.

Current platinum members include IBM, AT&T, Canonical, HP, Nebula, Rackspace, Red Hat, and SUSE

Page 3: OpenStack - An Overview

3

OpenStack Icehouse statistics

Page 4: OpenStack - An Overview

4

OpenStack is growing

One of the most exciting things about OpenStack is that it continues to gro� dramatically and quickly, oftwen �ith t�o or more releases per year

As a result, much of the information publicly available on the technology is out of date

Thee User Survey Statistics November 2013 received nearly t�ice as many ans�ers as the previous round (performed in April 2013 �ith 414 responses) and 387 deployments compared to 187.

Page 5: OpenStack - An Overview

5

Evolution of OpenStack

Each release has incorporated ne� functionality, added documentation, and improved the ease of deployment

Austin release consisted only of t�o core projects: OpenStack Compute (Nova) and OpenStack Object Storage (S�iftw)

Bexar complemented these �ith an Image Service (Glance)

Essex release added t�o more cores (Keystone and Horizon)

Folsom added Neutron (initially called Quaantum) and Cinder cores

Havana added Ceilometer and Heat cores

Page 6: OpenStack - An Overview

6

Current release – Icehouse

Icehouse release consists of ten core projects

Compute (Nova) - Object Storage (S�iftw)

Block Storage (Cinder) - Net�orking (Neutron)

Dashboard (Horizon) - Identity Service (Keystone)

Orchestration (Heat) - Telemetry (Ceilometer)

Image Service (Glance) - Database Service (Trove)

Ne� capabilities under development for Juno and beyond

Bare Metal (Ironic)

Quaeue Service (Marconi)

Data Processing (Savannah)

Page 7: OpenStack - An Overview

7

OpenStack Archtecture

Page 8: OpenStack - An Overview

8

Nova

OpenStack Compute (Nova) controls the cloud computing fabric (the core component of an infrastructure service).

Writteen in Python, it creates an abstraction layer for virtualizing commodity server resources such as CPU, RAM, net�ork adapters, and hard drives, �ith functions to improve utilization and automation.

Its live VM management has functions to launch, resize, suspend, stop, and reboot through integration �ith a set of supported hypervisors.

When the images are running, it is possible to store and manage firles programmatically through an application programming interface (API).

Page 9: OpenStack - An Overview

9

Neutron

Net�orking (Neutron), formerly called Quaantum is an OpenStack project focused on delivering net�orking as a service.

It is designed to address defirciencies in “baked-in” net�orking technology found in cloud environments, as �ell as the lack of tenant control (in multi-tenant environments) over the net�ork topology and addressing, �hich makes it hard to deploy advanced net�orking services.

Thee massive scale of high-density, multi-tenancy cloud environments is putteing enormous strain on net�orks.

Theey are simply struggling to keep up �ith the explosive, dynamic nature of these virtualized environments.

Neutron provides a �ay for organizations to relieve the stress on the net�ork in cloud environments to make it easier to deliver net�orking as a service in the cloud.

Page 10: OpenStack - An Overview

10

Neutron

Includes the capability to manage LANs �ith capabilities for virtual LAN (VLAN), Dynamic Host Confirguration Protocol, and Internet Protocol version 6.

Users can defirne net�orks, subnets, and routers to confirgure their internal topology, and then allocate IP addresses and VLANs to these net�orks.

Floating IP addresses allo� users to assign (and reassign) firxed external IP addresses to the VMs

Supports many diffeerents net�orking confirgurations

Enables VMs to talk to each other on private net�ork

Some VMs can be externally accessible

Page 11: OpenStack - An Overview

11

Keystone

Keystone is an OpenStack project that provides Identity, Token, Catalog and Policy services for use specifircally by projects in the OpenStack family.

OpenStack Identity Management (Keystone) manages a directory of users as �ell as a catalog of OpenStack services they can access.

Its purpose is to expose a central authentication mechanism across all OpenStack components.

Is the identity service used by OpenStack for authentication and high-level authorization.

It currently supports token-based authentication and user-service authorization.

Page 12: OpenStack - An Overview

12

Swift

OpenStack Object Storage (S�iftw) is based on the Rackspace Cloud Files product and is a redundant storage system ideal for scale-out storage.

OpenStack ensures data replication and distribution across the devices in its pool, so users can employ commodity hard disks and servers rather than more expensive equipment.

In the event of a component failure, OpenStack is able to replenish the content from other active systems to ne� cluster members.

Access to the OpenStack S�iftw object storage system is through a REST API, �hich is similar to the Amazon.com S3 API.

Theis means that applications that are currently using S3 can use OpenStack S�iftw �ithout major re-factoring of the application code and application

Page 13: OpenStack - An Overview

13

Cinder

OpenStack Block Storage (Cinder) manages block-level storage that compute instances use.

Block storage lends itself �ell to scenarios �ith strict performance constraints, such as databases and firle systems.

Cloud users can manage their storage requirements through the dashboard.

Thee system provides interfaces to create, atteach, and detach block devices from/to servers. It is also possible to back up Cinder volumes by using the snapshot capability.

Page 14: OpenStack - An Overview

14

Glance

OpenStack Image Service (Glance) provides support for VM images, specifircally the system disks to be used in launching VM instances.

In addition to discovery, registration, and activation services, it has capabilities for snapshots and backups.

Users can provide both private and public images to the service in a variety of formats, VDI (VirtualBox), VMDK (VM�are), qco�2 (Qemu/Kernel-based Virtual Machine).

Functions exist to register ne� virtual disk images, query for information on publicly available disk images, and stream virtual disk images.

Page 15: OpenStack - An Overview

15

Horizon

Thee dashboard is an extensible �eb app that allo�s cloud administrators and users to control their compute, storage and net�orking resources

Is the graphical UI that administrators can most easily use to manage all the projects

Provides administrators and users a graphical interface to access, provision and automate cloud-based resources

As a cloud administrator, the dashboard provides an overall vie� of the size and state of your cloud.

You can create users and projects, assign users to projects and set limits on the resources for those projects.

Page 16: OpenStack - An Overview

16

Ceilometer

Thee Ceilometer project �as started in 2012 �ith one simple goal in mind: to provide an infrastructure to collect any information needed regarding OpenStack projects.

Is a mechanism for centralized collection of metering and monitoring data.

It delivers a single point of contact for billing systems to obtain all the usage information they need across the suite of OpenStack components.

Has diffeerent types of metering.

Cumulative - Increasing over time (instance hours)

Gauge - Discrete items (flooating IPs, image uploads) and flouctuating values (disk I/O)

Delta - Changing over time (band�idth)

Page 17: OpenStack - An Overview

17

Heat

Is a template-based orchestration engine for OpenStack.

It allo�s developers to defirne application deployment patteerns that orchestrate composite cloud applications in a RESTful API.

Thee templates can accommodate most OpenStack resource types (for example, Nova instances and flooating IP address ranges, Cinder volumes, Keystone users).

Theere are also capabilities for advanced functionality, including high availability, auto-scaling, and nested stacks.

Page 18: OpenStack - An Overview

18

Trove

Trove is Database as a Service for OpenStack.

A ne� capability included in the integrated release allo�s users to manage relational database services in an OpenStack environment.

It's designed to run entirely on OpenStack, �ith the goal of allo�ing users to quickly and easily utilize the features of a relational database �ithout the burden of handling complex administrative tasks.

Cloud users and database administrators can provision and manage multiple database instances as needed.

Page 19: OpenStack - An Overview

19

Lauching a VM - Video

htteps://���.youtube.com/�atch?v=KBP1t1daSj8&feature=youtu.be

Page 20: OpenStack - An Overview

20

Attaching a Volume - Video

htteps://���.youtube.com/�atch?v=�_9GuLejub8&feature=youtu.be

Page 21: OpenStack - An Overview

21

How to use the APIs

An Application Programming Interface (API) offeers a �ay to use the capabilities of a service by using predefirned functions.

Each core project �ill expose one or more HTTP/RESTful interfaces for the purpose interacting �ith the outside �orld

You can access the APIs �riting automation scripts in Python

To use the APIs �ith Python you can install each tool using the pip on command line:

pip install python-keystoneclient

Aftwer that you can source your openrc

When the openrc firle has been sourced, Python can retrieve the credentials from the enviroment

Page 22: OpenStack - An Overview

22

How to use the APIs

You can extract this information and get credentials to the authetication

Example of authentication a ne� nova client and list the instances:

Page 23: OpenStack - An Overview

23

How to use the APIs

Booting a ne� instance

Example of creation of a ne� instance:

Page 24: OpenStack - An Overview

24

Lauching a new Instance - Video

htteps://���.youtube.com/�atch?v=2jAgtjtNO0M&feature=youtu.be

Page 25: OpenStack - An Overview

25

What is new in Icehouse?

OpenStack Icehouse has nearly 350 ne� features to support softw�are development, managing data and application infrastructure at scale.

Trove

User/Schema management

Users can do CRUD management on MYSQL Users and Schemas through the Trove API

Flavor / Cinder Volume resizes

Resize up/down the flavor that defines the Trove instance

Resize up the optional Cinder Volume size if the datastore requires a larger volume

Page 26: OpenStack - An Overview

26

What is new in Icehouse?

Nova

New support for rolling upgrades minimizes the impact to running workloads during the upgrade process.

Notifications are now generated upon the creation and deletion of keypairs.

The Compute API now exposes the hypervisor IP address, allowing it to be retrieved by administrators using the nova hypervisor-show command.

Horizon

Now supports 16 languages including German, Hindi and Serbian.

Additional improvements to the general user interface and experience were also implemented

Page 27: OpenStack - An Overview

27

What is new in Icehouse?

Glance

The calculation of storage quotas has been improved.

Ceilometer

Alarming improvements

time-constrained alarms, providing flexibility to set the bar higher or lower depending on time of day or day of the week.

Telemetry features improved access to metering data used for automated actions or billing purposes.

Cinder

Ability to change the type of an existing volume (retype)

Ceilometer notifications on attach/dettach

Page 28: OpenStack - An Overview

28

What is new in Icehouse?

Keystone

Ne� v3 API Features

POST /v3/users/{user_id}/pass�ord allo�s API users to update their o�n pass�ords

/v3/regions provides a public interface for describing multi-region deployments

GET v3/auth/token?nocatalog allo�s API users to opt-out of receiving the service catalog �hen performing online token validation

Neutron

Icehouse focused on stability Neutron codebase

Many of the existing plugins and drivers were revised to address know performance and stability issues

Page 29: OpenStack - An Overview

29

Enough for this time