40
Presentation By: Roozbeh Shafiee Spring 2015 IRAN OpenStack Users Group MASTERING OPENSTACK (Episode 01) Simple Architectures

Mastering OpenStack - Episode 01 - Simple Architectures

Embed Size (px)

Citation preview

Presentation By:

Roozbeh Shafiee

Spring 2015

IRAN OpenStack Users Group

MASTERINGOPENSTACK

(Episode 01)

Simple Architectures

IRAN Community| OpenStack.ir

OpenStack Simple Architectures

Agenda:

● Requirements Before Beginning

● OpenStack Components

● OpenStack Usage Porposes

● Advises Before Starting A Project

● Components Relations

● Lagcy Networking

● Iran OpenStack Community

|

Requirements Before Beginning

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

Requirements Before Beginning:

● Dominance on Virtulization and HA Topics (RHCVA or LPIC-3)

● Linux Administration Skills ( Ubuntu/Debian or RHEL/CentOS )

● Database Concepts ( SQL and NoSQL )

● Basic Network Knowledge ( Cisco CCNA )

● Hardware Maintenance Experience ( Servers and Storages )

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

OpenStack Components

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

OpenStack Components (Kilo Release):

● Compute - Nova

● Networking - Neutron

● Object Storage - Swift

● Block Storage – Cinder

● Image Service - Glance

● Identity - Keystone

● Dashboard - Horizon

● Telemetry - Ceilometer

● Orchestration - Heat

● Database - Trove

● Data Processing - Sahara

● Bare-Metal Provisioning – Ironic

● Queue Service - Zaqar

● Shared file system - Manila

● DNS Service - Designate

● Key Management - Barbican

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

OpenStack Components Schema:

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

OpenStack Simple View Schema:

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

OpenStack Compute – Nova:

● Conceptually similar to Amazon EC2

● Can leverage multiple hypervisors (Xen, KVM, VMware ESXi, Hyper-V)

● Made up of several sub-components (nova-api, nova-compute,

● nova-schedule)

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

OpenStack Networking – Neutron:

● Provides “network as a service” functionality

● Allows for the programmatic creation of per-tenant networks

● Uses a plug-in architecture; plugins exist for a number of different

back-end implementations, including Nicira NVP, Open vSwitch (OVS),

Linux bridge, Cisco, and others

● Has essentially replaced nova-network

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

OpenStack Object Storage – Swift:

● Think of it as similar to Amazon S3

● Provides distributed object storage

● Supports the OpenStack Object API as well as raw HTTP

● Authentication is handled via OpenStack Identity (typically)

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

OpenStack Block Storage – Cinder:

● Can be compared in concept to Amazon EBS

● Provides block storage functionality to instances running on Compute

● Recall that instances are stateless

● Block Storage provides persistent storage for instances

● Similar to Compute, it has several sub-components (cinder-api,

cinder-volume, cinder-scheduler)

● Leverages storage drivers to interact with underlying storage platforms

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

OpenStack Image Service – Glance:

● This can be compared to Amazon’s AMI catalog

● Provides image storage, image retrieval, and image discovery services

● These images are leveraged to launch instances (VMs)

● Can leverage the Object Store (“Swift”) or other storage platforms,including

Amazon S3, filesystems, and HTTP

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

OpenStack Identity Service – Keystone:

● Provides policy and authentication services for other OpenStack services

● Leverages a pluggable architecture that can support LDAP, SQL, and other

backend services

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

OpenStack Dashboard – Horizon:

● A web application that runs on Apache

● Provides a graphical user interface (GUI) for other OpenStack services

● Leverages the APIs of the other OpenStack services

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

OpenStack Telemetry – Ceilometer:

● It is easier to roll back a failed deployment and ensure thorough cleanup

● Administrators can delegate resource creation privileges to non-administrative

users

● Improvements included implementation of new resource types and improved

scalability

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

OpenStack Orchestration – Heat:

● It is easier to roll back a failed deployment and ensure thorough cleanup

● Administrators can delegate resource creation privileges to non-administrative

users

● Improvements included implementation of new resource types and improved

scalability

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

OpenStack Database Service – Trove:

● The database service went through its second release cycle in Juno

● MySQL replication

● Mongo clustering, Postgres, and Couchbase.

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

OpenStack Data Processing – Sahara:

● Automates provisioning and management of big data clusters using Hadoop

and Spark

● Big data analytics are a priority for many organizations and a popular use case

for OpenStack

● This service lets OpenStack users provision needed resources more quickly

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

OpenStack Bare Metal Provisioning – Ironic:

● An integrated OpenStack program which aims to provision bare metal machines

instead of virtual machines

● Forked from the Nova baremetal driver

● Best thought of as a bare metal hypervisor API and a set of plugins which interact

with the bare metal hypervisors

● Use PXE and IPMI in concert to provision and turn on/off machines

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

OpenStack Usage Purposes

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

OpenStack Some Usage Purposes:

● High Performance Computing (HPC)

● Content Delivery Network (CDN)

● Multi Site - Geo-location Sensitive Data

● Big Data Analytics

● Hybrid Cloud

● Network Function Virtualization (NFV)

● Media Streaming

● Virtual Desktop Infrastructure (VDI)

● Voice over IP (VoIP)

● And many more...

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

Advises Before Starting

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

Advises Before Starting:

● Using enterprise-ready operating systems such as Ubuntu (LTS) and RHEL

● Using standard physical servers and storages by reputable Hardware vendors

● Team working with enthusiastic members

● Document all states of the project

● Report probably bugs to OpenStack development team

● Follow OpenStack distribution to find best solution for projects

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

Components Relations

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

How Do OpenStack Components Work?

● Daemon

● Script ( Mostly Python and Shell )

● Command-Line Interface ( CLI )

All services authenticate through a common identity service and individual services

Interact with each other through public APIs except where privileged administrator

Commands are necessary.

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

Legacy Networking(nova-network)

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

Simple Architecture – Legacy Networking (Nova)

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

Tools and Dependencies:

● OpenStack Release: Kilo

● Host Operating System: Ubuntu 14.04 / RHEL 7.1

● OpenStack Package Repository: Ubuntu Cloud Archive / RDO

● Hypervisor: KVM

● Database: MySQL

● Message Queue: RabbitMQ (Ubuntu) / Qpid (RHEL)

● Networking Service: Nova-Network

● Network-Manager: FlatDHCP

● Image Service (Glance) Backend: File

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

● Identity Service (Keystone) Driver: SQL

● Block Storage Service (Cinder) Backend: LVM/iSCSI

● Live Migration Backend: Shared Storage using NFS

● Object Storage: OpenStack Swift

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

Don't Use OpenStack Packages From Main Repositories

We recommend that you do not use the default Ubuntu OpenStack install packages

and instead use the “Ubuntu Cloud Archive” PPA from Launchpad. The Cloud Archive

is a package repository supported by Canonical that allows you to upgrade to future

OpenStack releases while remaining on Ubuntu 14.04.

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

Why not use the OpenStack Network Service (neutron) ?

This simple architecture does not use the OpenStack Network Service (neutron),

because it does not yet support multi-host networking and our organizations (univer‐

sity, government) have access to a large range of publicly-accessible IPv4 addresses.

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

Why Multi-Host Networking ?

Multi-host is a high-availability option for the network configuration, where the

nova-network service is run on every compute node instead of running on only a

single node.

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

What Does OpenStack Controller Node Contain ?

● Horizon Dashboard

● API Services

● Database (MySQL)

● Message Queue Server (RabbitMQ)

● Scheduler For Choosing Compute Resources ( nova-scheduler )

● Identity Services (Keystone, nova-consoleauth )

● Image Services ( glance-api , glance-registry )

● Services For Console Access of Guests, and Block Storage Services, including

the scheduler for storage resources ( cinder-api and cinder-scheduler )

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

What Does OpenStack Compute Node Contain ?

● Hypervisor (KVM)

● Libvirt

● nova-compute

● Nova-api-metadata (generally only used when running in multi-host mode)

● nova-vncproxy

● nova-network

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

What's The Scenario in Network Section ?

● The network consists of two switches (One for the management/private and the

other one for public traffic)

● The cloud controller and the compute nodes have two network cards

● The OpenStack Block Storage and NFS storage servers only need to access the

private network (Only need one network card)

● Multiple cards run in a bonded configuration are recommended if possible.

● Floating IP access is direct to the Internet, whereas Flat IP access goes

through a NAT.

IRAN Community OpenStack.ir

OpenStack Simple Architectures

| IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

Iran OpenStack Community

IRAN Community OpenStack.ir

OpenStack Simple Architectures

|

Stay in Touch and Join Us:

● Home Page: OpenStack.ir

● Meetup Page: Meetup.com/Iran-OpenStack

● Mailing List: [email protected]

● Twitter: @OpenStackIR , #OpenStackIRAN

● IRC Channel on FreeNode#OpenStack-ir

IRAN Community OpenStack.ir

OpenStack Simple Architectures

Roozbeh ShafieeIran OpenStack Community Manager

[email protected]

OpenStack.ir

Thank You

We need to work together to build a better community