Openstack ansible

18
Deploying OpenStack with Ansible Athens OpenStack User Group #OSATH 18 th Meetup, 17 th April 2016 George Paraskevas, [email protected]

Transcript of Openstack ansible

Page 1: Openstack ansible

Deploying OpenStack with Ansible

Athens OpenStack User Group #OSATH

18th Meetup, 17th April 2016George Paraskevas,

[email protected]

Page 2: Openstack ansible

Who am I

George ParaskevasSystems Engineer @ Stackmasters

OpenStack Administrator

Page 3: Openstack ansible

Agenda

• What is OpenStack

• What is openstack-Ansible

• Design principles

• Releases

• Q&A

Page 4: Openstack ansible

What is OpenStack

• OpenStack is an open source software for building private and public IaaS clouds

Page 5: Openstack ansible

What is openstack-ansible

• A set of ansible playbooks to manage an OpenStack cloud• Deploy

• Maintain

• Upgrade

• Supports source based installation

• Uses LXC containers

• Contributed by Rackspace since kilo release

Page 6: Openstack ansible

Why Ansible?

• Easy to write and read• YAML

• Easy to install• SSH and Python only dependencies

• Agentless

• Community driven

• Powerful and modular

• Highly reliable• Idempotent modules

Page 7: Openstack ansible

Why containers?

Containers provide:• Isolation

• Support many networking architectures• Bridged

• Vlans

• Stable and mature technology

• LVM as backed• snapshots

Page 8: Openstack ansible

Design principles

• Vanilla OpenStack• Source based installation based on PIP wheels

• High Availability

• Manageability

Page 9: Openstack ansible

Architecture

• Isolates components and services within containers

• Runs on Ubuntu 14.04

• Ansible task tagging

• Targets multiple nodes

• Deploys OpenStack from upstream sources

• Extensible

Page 10: Openstack ansible

Infrastructure components

• Galera/MariaDB cluster for database backend

• RabbitMQ cluster

• PIP repository

• Memcached

• Rsyslog

Page 11: Openstack ansible

Openstack components

• Neutron with ML2 and LinuxBridge as mechanism

• Swift

• Heat

• Ceph integration

• Ceilometer

• Ironic

• Designate

• And more…

Page 12: Openstack ansible

RPC and community release

• Was Rackspace specific until Kilo

• Kilo was the first community release

• Rackspace specific playbooks moved to rpc repository• https://github.com/rcbops/rpc-openstack

• Moved to OpenStack namespace in 2015• https://github.com/openstack/openstack-ansible

Page 13: Openstack ansible

Deployment

• Clone the repo• # cd /opt && git clone –b liberty https://github.com/openstack/openstack-

ansible.git

• Configure inventory variables and secrets

• Run the playbooks• # openstack-Ansible setup-everything.yml

Page 14: Openstack ansible

Configuration

• Openstack-Ansible configuration resides under:• /etc/openstack_deloy

• Inventory• /etc/openstack_deploy/openstack_user_config.yml

• Variables and secrets• /etc/openstack_deploy/user_secrets.yml

• /etc/openstack_deploy/user_variables.yml

Page 15: Openstack ansible

Control plain Node addition

shared-infra_hosts:

infra1:

192.168.10.12

Infra2:

192.168.10.13

# openstack-ansible setup-everything.yml –limit os-infra_all \ shared-infra_all \ identity_all

Page 16: Openstack ansible

Compute Node addition

Compute_hosts:

compute1:

192.168.10.42

compute2:

192.168.10.43

# openstack-ansible setup-everything.yml –limit nova_compute

Page 17: Openstack ansible

Beyond openstack-ansible

• Great example of Ansible use

• Great example of an OpenStack infrastructure

• Great AIO installation for testing

• Great way to become a contributor• #openstack-ansible

• https://github.com/openstack/openstack-ansible

[email protected]

Page 18: Openstack ansible

Thank you!

Athens OpenStack User Group #OSATHhttp://www.meetup.com/Athens-OpenStack-User-Group

George Paraskevas [email protected]