oscon 2013 - planning an openstack cloud - tom fifield

30
Planning your OpenStack Cloud Tom Fifield [email protected] @TomFifield

Upload: oscon-byrum

Post on 12-May-2015

1.234 views

Category:

Technology


0 download

DESCRIPTION

The flexibility of OpenStack is a dual-edged sword, giving you unprecedented control over your infrastructure, but potentially becoming a nightmare for the indecisive manager, architect or sysadmin! In this presentation, Tom Fifield – co-author of the OpenStack Operations Guide, and Community Manager at the OpenStack Foundation – takes you through some of the decisions you will face when planning your OpenStack cloud. In addition to a brief introduction on OpenStack and advice on how to interact with the community, he will cover topics such as: How to approach your deployment, ranging from DIY to a turn-key solution from the ecosystem Storage and networking decisions, including plugin options Automating deployment and configuration with popular tools like Puppet and Chef Through discussion of the ecosystem, customization and scaling, you’ll walk away with an understanding of ‘what it takes’ to build your OpenStack cloud.

TRANSCRIPT

Page 1: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

Planning your OpenStack Cloud

Tom [email protected]@TomFifield

Page 2: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

225.07.13

Introduction

Software Engineering → Particle Physics → Building Clouds → OpenStack Community Manager

Much of this presentation is based on the “OpenStack Operations Guide”

Page 3: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

325.07.13

What is OpenStack?

Page 4: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

425.07.13

What is OpenStack? Technology Platform

Compute Provision and manage large pools of on-demand computing resources

Object Storage Petabytes of reliable storage on standard gear

Block Storage Volumes on commodity storage gear, and drivers for more vendor systems

Networking Software defined networking automation with pluggable backends

Dashboard Self-service, role-based web interface for users and administrators

Shared Services Multi-tenant authentication system that ties to existing stores (e.g. LDAP), Image Service

Page 5: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

525.07.13

Choose your level

DIY

Training

Systems Integration

Appliance

Software

Support

Public Cloud

POC

Buy a box. Unwrap it. Plug in power and network. Have cloud.

Purchase hardware. Purchase software. Install. Have cloud.

Please add feature X. Make it work with my billing system.

Where did we go wrong?

Train Staff. …. Have Cloud

It’s just another software product, right?

Swipe creditcard. Have cloud.

Make a new VM, cd devstack && ./stack.sh

Page 6: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

625.07.13

Choose your level

DIY

Training

Systems Integration

Appliance

Software

Support

Buy a box. Unwrap it. Plug in power and network. Have cloud.

Purchase hardware. Purchase software. Install. Have cloud.

Please add feature X. Make it work with my billing system.

Where did we go wrong?

Train Staff. …. Have Cloud

It’s just another software product, right?

Swipe creditcard. Have cloud.

Make a new VM, cd devstack && ./stack.sh

Public Cloud

POC

Page 7: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

725.07.13

Choose your level

DIY

Training

Systems Integration

Software

Support

Buy a box. Unwrap it. Plug in power and network. Have cloud.

Purchase hardware. Purchase software. Install. Have cloud.

Please add feature X. Make it work with my billing system.

Where did we go wrong?

Train Staff. …. Have Cloud

It’s just another software product, right?

Swipe creditcard. Have cloud.

Make a new VM, cd devstack && ./stack.sh

Public Cloud

POC

Appliance

Page 8: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

825.07.13

Choose your level

DIY

Training

Systems Integration

Support

Buy a box. Unwrap it. Plug in power and network. Have cloud.

Purchase hardware. Purchase software. Install. Have cloud.

Please add feature X. Make it work with my billing system.

Where did we go wrong?

Train Staff. …. Have Cloud

It’s just another software product, right?

Swipe creditcard. Have cloud.

Make a new VM, cd devstack && ./stack.sh

Public Cloud

POC

Appliance

Software

Page 9: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

925.07.13

Choose your level

DIY

Training

Support

Buy a box. Unwrap it. Plug in power and network. Have cloud.

Purchase hardware. Purchase software. Install. Have cloud.

Please add feature X. Make it work with my billing system.

Where did we go wrong?

Train Staff. …. Have Cloud

It’s just another software product, right?

Swipe creditcard. Have cloud.

Make a new VM, cd devstack && ./stack.sh

Public Cloud

POC

Appliance

Software

Systems Integration

Page 10: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

1025.07.13

Choose your level

DIY

Training

Buy a box. Unwrap it. Plug in power and network. Have cloud.

Purchase hardware. Purchase software. Install. Have cloud.

Please add feature X. Make it work with my billing system.

Where did we go wrong?

Train Staff. …. Have Cloud

It’s just another software product, right?

Swipe creditcard. Have cloud.

Make a new VM, cd devstack && ./stack.sh

Public Cloud

POC

Appliance

Software

Systems Integration

Support

Page 11: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

1125.07.13

Choose your level

DIY

Buy a box. Unwrap it. Plug in power and network. Have cloud.

Purchase hardware. Purchase software. Install. Have cloud.

Please add feature X. Make it work with my billing system.

Where did we go wrong?

Train Staff. …. Have Cloud

It’s just another software product, right?

Swipe creditcard. Have cloud.

Make a new VM, cd devstack && ./stack.sh

Public Cloud

POC

Appliance

Systems Integration

Support

Software

Training

Page 12: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

1225.07.13

Choose your level

Buy a box. Unwrap it. Plug in power and network. Have cloud.

Purchase hardware. Purchase software. Install. Have cloud.

Please add feature X. Make it work with my billing system.

Where did we go wrong?

Train Staff. …. Have Cloud

It’s just another software product, right?

Swipe creditcard. Have cloud.

Make a new VM, cd devstack && ./stack.sh

Public Cloud

POC

DIY

Appliance

Software

Systems Integration

Support

Training

Page 13: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

1325.07.13

Page 14: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

1425.07.13

You have selected ….

It’s just another software product, right?DIY

Page 15: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

1525.07.13

StorageEphemeral storage Block storage Object storage

Used to… Run operating system and scratch space

Add additional persistent storage to a virtual machine (VM)

Store data, including VM images

Accessed through…

A file system A block device that can be partitioned, formatted and mounted (such as, /dev/vdc)

REST API

Accessible from…

Within a VM Within a VM Anywhere

Managed by…

OpenStack Compute (Nova)

OpenStack Block Storage (Cinder)

OpenStack Object Storage (Swift)

Persists until…

VM is terminated Deleted by user Deleted by user

Sizing determined by…

Administrator configures size settings, known as flavors

Specified by user in initial request

Amount of available physical storage

Example of usage…

10 GB first disk, 30GB second disk

1 TB disk 10s of TBs of dataset storage

want this?which plugin?

Page 16: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

1625.07.13

Network

Nova-network vs Neutron How many networks? Addressing? Open vSwitch, CISCO Nexus, Linux Bridge, Nicira NCP, Ryu,

NEC, Big Switch, Hyper-V, MidoNet, Brocade, PLUMGrid, Extreme, Ruijiu, Mellanix or Juniper?

Page 17: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

1725.07.13

Cloud ‘controller’ design ...Consideration Ramification

How many instances will run at once?

Size your database server accordingly, and scale out beyond one cloud controller if many instances will report status at the same time and scheduling where a new instance starts up needs computing power.

How many compute nodes will run at once?

Ensure that your messaging queue handles requests successfully and size accordingly.

How many users will access the API?

If many users will make multiple requests, make sure that the CPU load for the cloud controller can handle. it.

How many users will access the dashboard?

The dashboard makes many requests, even more than the API access, so add even more CPU if your dashboard is the main interface for your users.

How many nova-api to run?

You need to size the controller with a core per service.

How long does a single instance run?

Starting instances and deleting instances is demanding on the compute node but also demanding on the controller node because of all the API queries and scheduling needs.

Does your auth system also verify externally?

Ensure network connectivity between the cloud controller and external authentication system are good and that the cloud controller has the CPU power to keep up with requests.

Page 18: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

1825.07.13

Automated Deployment

An automated deployment system installs and configures operating systems on new servers, without intervention, after the absolute minimum amount of manual work. However, consider disk partitioning and network

configuration Many ways of doing this – see what is working for your distro Remote management

Page 19: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

1925.07.13

Automated Configuration

Establish and maintain the consistency of a system with no human intervention.

Change managers love this – can test and roll back Plan your configuration items Puppet, Chef, Ansible, SaltStack recipes provided by the

community

Page 20: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

2125.07.13

Scaling UpCells Regions Availability

ZonesHost Aggregates

Use when you need

A single API endpoint for compute, or you require a second level of scheduling.

Discrete regions with separate API endpoints and no coordination between regions.

Logical separation within your nova deployment for physical isolation or redundancy.

To schedule a group of hosts with common features.

Example A cloud with multiple sites where you can schedule VMs "anywhere" or on a particular site.

A cloud with multiple sites, where you schedule VMs to a particular site and you want a shared infrastructure.

A single site cloud with equipment fed by separate power supplies.

Scheduling to hosts with trusted hardware support.

Overhead A new service, nova-cellsEach cell has a full nova installation except nova-api

A different API endpoint for every region. Each region has a full nova installation.

Configuration changes to nova.conf

Configuration changes to nova.conf

Shared services

Keystonenova-api

Keystone KeystoneAll nova services

KeystoneAll nova services

Not pictured: Object Storage, which scales very easily by adding machines as needed, or through global clusters

Page 21: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

2325.07.13

Customisation

OpenStack doesn’t quite do what you need? Add it, but contribute back if possible

Many things are pluggable Eg Object Storage middleware pipeline Eg Compute Scheduler Eg Dashboard

Get a DevStack running and play!

Page 22: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

2425.07.13

Interacting with the Community

All development is Open Etherpad →Blueprint → Coded → Reviewed → Released

Collaboratively design features Competitors working together Every line of code reviewed by at least two people An extensive continuous integration and testing infrastructure

Documentation, Translation, Infrastructure is all collaborative

Page 23: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

2525.07.13

When it fails “Oh, it was just the firewall to the queue server again.”

Check

out

Tales

Fro

m th

e

Cryp^

H^H^H

^H C

loud!

Page 24: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

2625.07.13

When it fails: you are not alone

Ask OpenStack! (http://ask.openstack.org) https://wiki.openstack.org/wiki/MailingLists https://wiki.openstack.org/IRC Your local user group The comments section on that almost-related blog

Page 25: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

2725.07.13

Recap

Choose a level Look at your Storage options Plan your network Get some metrics to design your cloud controller Automate, Automate, Automate Scale up Customise Join the community!

Page 27: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

What you get: Developers

Contributors per month (ohloh)

Page 28: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

What you get: BackupParticipating Companies

Launch Austin Bexar Cactus Diablo Essex 2-year anniversary Grizzly0

50

100

150

200

250

Page 29: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

3125.07.13

See you in Hong Kong

November 5-8, register now! Call for speakers closes July 31st

Design Sessions: not a classic track with speakers and presentations - generally an open brainstorming discussion on a given subject

Conference Sessions: Keynotes, Case Studies, Ecosystem, Operations, Strategy, Workshops

openstack.org/summit

Page 30: OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield

3225.07.13

All text and image content in this document is licensed under the Creative Commons Attribution-Share Alike 3.0 License (unless otherwise specified). "OpenStack" is a registered trademark and respective logos and icons are subject to international copyright laws. The use of these therefore is subject to the brand policy.

Thank you …

… for supporting OpenStack!Ask Questions at ask.openstack.org

@[email protected]