openstack 101 technical overview

31
Sandy Walsh OpenStack Core Developer, Rackspace @TheSandyWalsh www.sandywalsh.com OpenStack 101 Technical Overview

Upload: open-stack

Post on 14-May-2015

9.095 views

Category:

Technology


1 download

DESCRIPTION

Sandy Walsh OpenStack 101 Technical Overview

TRANSCRIPT

Page 1: OpenStack 101 Technical Overview

Sandy WalshOpenStack Core Developer, Rackspace

@TheSandyWalshwww.sandywalsh.com

OpenStack 101Technical Overview

Page 2: OpenStack 101 Technical Overview
Page 3: OpenStack 101 Technical Overview
Page 4: OpenStack 101 Technical Overview
Page 5: OpenStack 101 Technical Overview
Page 6: OpenStack 101 Technical Overview
Page 7: OpenStack 101 Technical Overview

Project genesis

Cloud servers Cloud files Open source

Page 8: OpenStack 101 Technical Overview

Project genesis

NovaCC Open source

Page 9: OpenStack 101 Technical Overview

Project genesis

Cloud servers Cloud files Open source

Nova (compute) Swift (storage)

NovaCC Open source

Page 10: OpenStack 101 Technical Overview

June 2010

Page 11: OpenStack 101 Technical Overview

Mission statement

“To produce the ubiquitous open source cloud computing platform that will meet the needs of public and private cloud providers regardless of size, by being simple to implement and massively scalable.”

Page 12: OpenStack 101 Technical Overview

Open

Open source (apache) Open design (blueprints) Open development (branches) Open community (tech leads)

Page 13: OpenStack 101 Technical Overview

90 developers

Page 14: OpenStack 101 Technical Overview

OpenStack projects

Core projectsOpenStack Object storage (Swift)OpenStack Image registry and delivery (Glance)OpenStack Compute (Nova)

FutureStackBurrow (queue service)Dashboard (Web UI)Keystone (common authentication)Quantum / Melange / Donabe (network)LunR (block storage)RedDwarf (database as a service)...

Page 15: OpenStack 101 Technical Overview

OpenStack Basic Design Tenetshttp://wiki.openstack.org/BasicDesignTenets

1. Scalability and elasticity are our main goals

2. Any feature that limits our main goals must be optional

3. Everything should be asynchronous. If you can't do something asynchronously, see #2

4. All required components must be horizontally scalable

5. Always use Shared Nothing architecture or ShardingIf you can't Share Nothing/Shard, see #2

6. Distribute everything, especially logic. Move logic to where state naturally exists.

7. Accept eventual consistency and use it where it is appropriate.

8. Test everything.We require tests with submitted code.

Page 16: OpenStack 101 Technical Overview

OpenStack

EC2

API

Auth

HTTP

Client

Page 17: OpenStack 101 Technical Overview

OpenStack

EC2

API

Auth

HTTP

Host

Network

Volume

Compute

Host

Compute

Client

Page 18: OpenStack 101 Technical Overview

OpenStack

EC2

API

Auth

HTTP

Host

Network

Volume

Compute

Host

Compute

Client

WSGI+Paste middleware EC2/OpenStack API

Flat, FlatDHCP, Vlan IPv4 / IPv6

Libvirt : QEMU, KVM, UML, LXC Xen and XenServer Hyper-V VMware vSphere

Local LVM volume groups iSCSI Sheepdog HP/Lefthand SANs

DB/LDAP auth plugin

Page 19: OpenStack 101 Technical Overview

OpenStack

EC2

API

Auth

RabbitMQ QueuesHTTP

Host

Network

Volume

Compute

Host

Compute

Client

Page 20: OpenStack 101 Technical Overview

OpenStack

EC2

API

Auth

RabbitMQ QueuesHTTP

Scheduler

Network

Volume

Glance

SchedulerAPI Stubs

NetworkAPI Stubs

VolumeAPI Stubs

ComputeAPI Stubs

Host

Network

Volume

Compute

Host

Compute

Client

Page 21: OpenStack 101 Technical Overview

OpenStack

EC2

API

Auth

RabbitMQ QueuesHTTP

Scheduler

Network

Volume

Glance

SchedulerAPI Stubs

NetworkAPI Stubs

VolumeAPI Stubs

ComputeAPI Stubs

Host

Scheduler

Network

Volume

Compute

Host

Compute

Client

Page 22: OpenStack 101 Technical Overview

OpenStack

EC2

API

Auth

RabbitMQ QueuesHTTP

Scheduler

Network

Volume

Glance

SchedulerAPI Stubs

NetworkAPI Stubs

VolumeAPI Stubs

ComputeAPI Stubs

PubSubHubBubNotifications

Host

Scheduler

Network

Volume

Compute

Host

Compute

Client

Page 23: OpenStack 101 Technical Overview

OpenStack

EC2

API

SchedulerAPI Stubs

NetworkAPI Stubs

VolumeAPI Stubs

ComputeAPI Stubs

PubSubHubBubNotifications

Host

Scheduler

Network

Volume

Compute

Host

Compute

Zone

Auth

Page 24: OpenStack 101 Technical Overview

NorthAmerica

WestCoast

EastCoast

Page 25: OpenStack 101 Technical Overview

Do not reveal Child Zone/Service architecture outside Zone

Page 26: OpenStack 101 Technical Overview

PublicInternet

Zone X

Zone W

Zone YZone Z

Zone A

Zone B

Private Public

Bursting

Page 27: OpenStack 101 Technical Overview
Page 28: OpenStack 101 Technical Overview

DemoArchitecture

XenServer

Dom0

DomU Nova + Glance

DomU Guest

DomU Guest

i5 Mobile8G ram500G disk

Page 29: OpenStack 101 Technical Overview

The Future

New release schedule Each project releases ~monthly milestones Coordinated core projects release every 6 months

« Diablo » release Release planned on September 22 Distributed scheduling, boot from volumes,

external volumes/network APIs, OpenVZ support...

Page 30: OpenStack 101 Technical Overview

Come and join the funhttp://launchpad.net/openstackhttp://wiki.openstack.orghttp://planet.openstack.org

IRC (Freenode)#openstack#openstack-dev

Mailing-listhttps://launchpad.net/~openstack

Page 31: OpenStack 101 Technical Overview

Sandy WalshOpenStack Core Developer, Rackspace

@TheSandyWalshwww.sandywalsh.com