andy mccrae, rackspace - using ansible to deploy and automate openstack, openstack israel 2015

19
Andy McCrae Twitter: @andymccrae Github: andymcc Using Ansible to Deploy and Automate OpenStack 1 1

Upload: openstack-israel

Post on 12-Aug-2015

292 views

Category:

Technology


2 download

TRANSCRIPT

Andy McCraeTwitter: @andymccraeGithub: andymcc

Using Ansible to Deploy and Automate OpenStack

11

2

Who am I?

3

@robertcathey

Cloud infra is hard. OpenStack is cloud infra. OpenStack is hard. This is news, apparently.

“”

4

Why are we here?

In late 2013, the Rackspace Private Cloud team set out to solve our common deployment, maintenance, scalability, and stability problems.

5

Distribution packaging of OpenStack

● Out of date packages ● Out of band configuration● Packages include proprietary patches● Time to bug resolution is longer than it should● Broken dependencies

6

Legacy architecture does not scale

● Almost all deployment systems reference an architecture that suffers from the “controller 1 controller 2” model

● VIP failover for OpenStack supporting services bound to break and when it does it’ll break spectacularly!

7

What we devised

A source-based installation of OpenStack, built within LXC containers, using a multi-master architecture orchestrated and deployed via Ansible.

8

Why Ansible?

● Community engagement

● Orchestration

● Almost no code

● Low barrier to entry

● Crazy powerful, stupid simple

9

Why containers?

● LXC ≈ More bare metal

● Compatible with many networking architectures

● Supports an LVM backend

● Stable

10

What is OSAD?

OSAD == OpenStack Ansible Deployment

● Uses LXC containers to isolate components and services

● Deploys OpenStack from upstream sources

● Runs on Ubuntu 14.04

● Built for production

● No proprietary secrete sauce

○ But you could bolt on as much as you want

● Created following the KISS principle

11

● All Ansible tasks and roles target multiple nodes, even if that number is a multiple of one (1)

○ EVERYTHING is tagged!

● Process separation on infrastructure components (controller nodes)

○ Microservice-like, where it makes sense

OSAD architecture

12

● Galera multi-master cluster

● RabbitMQ with mirrored queues and deterministic sorting of the master queues

● Pip Package index build for your environment stored within your environment

OSAD infrastructure components

13

● OSAD does not know about the “all in one” deployment

○ LXC enables the base system to deploy a multi-node cloud even with only one physical node

○ An AIO in our gate job emulates a 32 node cloud

● Neutron with the Linux Bridge agent offer stability and supportability

○ Open vSwitch is feature-full but Linux Bridge “just works”™

OSAD scale

14

Community project

● We support Juno and Icehouse but the code contains Rackspace-isms

● Kilo is our first “community” release of OSAD

● 41 contributors presently in the project

○ Not all Rackers

15

● Deployer experience: Ansible● Vanilla OpenStack: Source-based installation● Scalability: Built within LXC containers● Stability: Obviously!

OSAD and what we’re about

16

OpenStack® Architecture

KEYSTONEIDENTITY

GLANCEIMAGE MANAGEMENT

NOVACOMPUTE LAYER SWIFT

OBJECT STORE

CINDERBLOCK STORAGE

NEUTRONNETWORKING

HORIZONDASHBOARD/UI

CEILOMETERTELEMETRY

TROVEDBaaS

HEATORCHESTRATION

17

OpenStack-ansible-deployment (OSAD) Sample Architecture

Public Network

Management Network

VM Network

Storage Network

18

Demo

19

Q & A

Twitter: @andymccraeIRC: andymccr

Email: [email protected]: andymcc