Slide 1

Slide 1 text

Deploying OpenStack with OSAD (OS Ansible Deployment) Walter Bentley, RPC Solutions Architect Twitter: @djstayflypro LinkedIn: http://goo.gl/r2p21i Github: wbentley15 Blog: hitchnyc.com

Slide 2

Slide 2 text

2 I started my 17-year IT career as an MS .ASP developer and transitioned into supporting web-based applications. The bulk of my time was spent providing production support as an on-call engineer. Who Am I?

Slide 3

Slide 3 text

3 www.rackspace.com What is OpenStack® ?

Slide 4

Slide 4 text

4 www.rackspace.com OpenStack® Services KEYSTONE IDENTITY GLANCE IMAGE MANAGEMENT NOVA COMPUTE LAYER SWIFT OBJECT STORE CINDER BLOCK STORAGE NEUTRON NETWORKING HORIZON DASHBOARD/UI HEAT ORCHESTRATION CEILOMETER TELEMETRY TROVE DBaaS SAHARA DATA PROCESSING

Slide 5

Slide 5 text

5 www.rackspace.com OPENSTACK COMMUNITY: BROAD SUPPORT AND CONTRIBUTION ECOSYSTEM SIZE 
 (Members + Sponsors + Supporters) CUMULATIVE 
 CONTRIBUTORS AVERAGE MONTHLY 
 CONTRIBUTORS CODE CONTRIBUTIONS 2,424 >400 110,019 483
 Contributing Companies 21,230 INDIVIDUAL MEMBERS Rackspace, Red Hat, HP, IBM, Mirantis Top 5 Contributors FOUNDATION STARTED IN SEPTEMBER 2012 20M+ LINES OF CODE

Slide 6

Slide 6 text

6 www.rackspace.com What is Ansible? •  IT automation tool that can be used to: •  Configure systems •  Deploy software •  Orchestration •  eventually replace most infrastructure folks…just kidding…maybe? •  Ansible’s goal first and foremost is simplicity and maximum ease of use •  Manages systems using Secure Shell (SSH) •  No remote daemon or agent required!!! •  Code is organized into something called, playbooks, of which is written in the YAML language http://docs.ansible.com/intro.html

Slide 7

Slide 7 text

7 www.rackspace.com Ansible Best Practices/Modules http://docs.ansible.com/playbooks_best_practices.html http://docs.ansible.com/list_of_all_modules.html

Slide 8

Slide 8 text

No content

Slide 9

Slide 9 text

9 OpenStack Ansible Deployment (OSAD) Hybrid Stable & Scalable Flexible OSAD was created to meet the following 3 principles:"

Slide 10

Slide 10 text

10 Rackspace Private Cloud – built on OpenStack Reference Architecture Artifact

Slide 11

Slide 11 text

11 www.rackspace.com OSAD Features and Benefits •  Ansible! •  Linux Containers (LXC)! •  Linux Bridge agent! •  Full Neutron deployment! •  Includes all PROD ready OpenStack services! •  Can be used to deploy an AIO or fully distributed multi-node HA layout!

Slide 12

Slide 12 text

12 www.rackspace.com OpenStack Community Adoption In the end of November, the community voted to accept our playbooks as a Stackforge repository, making them the basis of Ansible support for OpenStack going forward! •  https://review.openstack.org/#/c/132703 •  Community Page: https://review.openstack.org/#/admin/projects/stackforge/os-ansible-deployment •  Issues: https://bugs.launchpad.net/~openstack-ansible •  IRC on Freenode: #openstack-ansible Code Location: https://github.com/stackforge/os-ansible-deployment This means a lot to Rackspace and opens up the door for community contribution!

Slide 13

Slide 13 text

OSAD Under the Covers

Slide 14

Slide 14 text

14 www.rackspace.com OSAD Under the Covers High-level prerequisites:! •  Ubuntu 14.04 (Trusty)! •  SSH Client! •  NTP Client! •  Python 2.7 or later! •  Use of Linux networking features: Bridges and Namespaces! •  Container management: br-mgmt (Mandatory) " •  OpenStack Networking tunnel/overlay: br-vxlan (Mandatory)! •  OpenStack Networking provider: br-vlan (Mandatory)! •  Storage: br-storage (Optional)!

Slide 15

Slide 15 text

15 www.rackspace.com OSAD Under the Covers (cont.) To deploy the OpenStack Private Cloud, it was broken down into three main playbooks:! •  ansible-playbook -e @/etc/rpc_deploy/user_variables.yml playbooks/setup/host-setup.yml! •  ansible-playbook -e @/etc/rpc_deploy/user_variables.yml playbooks/infrastructure/haproxy-install.yml (optional)! •  ansible-playbook -e @/etc/rpc_deploy/user_variables.yml playbooks/infrastructure/infrastructure- setup.yml! •  ansible-playbook -e @/etc/rpc_deploy/user_variables.yml playbooks/openstack/openstack-setup.yml
 ! All playbooks are dependent on two configuration files:! •  rpc_user_config.yml" •  user_variables.yml"

Slide 16

Slide 16 text

16 www.rackspace.com Why not create some roles and playbooks to automate all those pre-configurations!

Slide 17

Slide 17 text

17 www.rackspace.com Tips and Tricks •  Deploy using ‘Tags’ version on GitHub repo! •  Check GitHub repo for new versions and variables being introduced! •  Triple check your network setup! •  Re-deployment steps (aka the clean-up process)! •  Galera health check playbook! •  Running playbooks with ‘-l’"

Slide 18

Slide 18 text

18 www.rackspace.com Reference Materials Rackspace Private Cloud Installation Guide:
 http://docs.rackspace.com/rpc/api/v10/bk-rpc-installation/content/ch-overview.html! ! Blog for Deploying RPC with Ansible:
 https://developer.rackspace.com/blog/deploying-rackspace-private-cloud-v9-with-ansible"

Slide 19

Slide 19 text

19 www.rackspace.com Q&A Session Twitter: @djstayflypro Email: [email protected]

Slide 20

Slide 20 text

Thank You! Always available for further questions!