Slide 1

Slide 1 text

Ansible @ Scale Inside of Rackspace 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 What are we doing with Ansible? •  Deployment of our Private clouds (RPC) built on OpenStack! •  DevOps Automation and Advisory Service! •  Public/Private Cloud Administration/Upgrades! •  Deploying Hadoop for clouds"

Slide 4

Slide 4 text

4 www.rackspace.com Why Ansible? •  Clarity and ease of use! •  Creating playbooks is highly accessible for developers! •  Other groups in Rackspace already using Ansible, and Rackspace has a good relationship with them! •  Existing Ansible modules for overall Linux management and OpenStack! •  Ease of use in configuring hosts and containers! •  Only SSH and Python required on the target device, no clients/agents! •  Components and configurations can be upgraded or modified in isolation or combination"

Slide 5

Slide 5 text

Deployment of our Private clouds (RPC) 
 built on OpenStack

Slide 6

Slide 6 text

6 Rackspace Private Cloud v9.0 – built on OpenStack Reference Architecture Artifact

Slide 7

Slide 7 text

7 www.rackspace.com Rackspace Private Cloud v9.0 Under the Covers 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 8

Slide 8 text

8 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 9

Slide 9 text

DevOps Automation 
 &
 Advisory Service


Slide 10

Slide 10 text

10 www.rackspace.com DevOps with Ansible •  The DevOps Automation Service is focused on providing customer solutions to automate application environments. ! •  From a high level, the DevOps Automation Service is responsible for helping to provide architecture recommendations based on Rackspace best known methods:! •  automating customer application environments with code" •  supporting customers with changes necessary to support their application" •  providing monitoring and application insight" •  providing testing to configuration changes via internal continuous integration testing pipelines."

Slide 11

Slide 11 text

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

Slide 12

Slide 12 text

Public/Private Cloud Administration

Slide 13

Slide 13 text

13 www.rackspace.com Why not automate it once and be done… Customer Scenario was:! •  Wanted to split their private cloud resources in half, isolating two core parts of the company." •  Since OpenStack is ‘special’ it only made sense to create a playbook to automate all steps needed to accomplish this." •  Outcome of that was:
 
 https://github.com/wbentley15/openstack-tenant-isolation"

Slide 14

Slide 14 text

Deploying Hadoop for Clouds

Slide 15

Slide 15 text

15 www.rackspace.com Deploying Hadoop for clouds Customer Scenario was:! •  Needed the ability to deploy Hadoop clusters quickly on their bare metal servers." •  To accomplish this RAX created playbooks to accomplish this for our customer (of course selfish intentions existed too :D)." •  Outcome of that was the ability to deploy Hadoop stacks on the cloud, OnMetal (RAX) public cloud and bare metal gear:
 
 https://github.com/rackerlabs/ansible-hadoop"

Slide 16

Slide 16 text

16 www.rackspace.com What I Love About Ansible •  Open Source!!! •  Ansible’s goal first and foremost is simplicity and maximum ease of use •  Code is written in Python •  Playbooks are written in the YAML format •  Clearly defined best practices

Slide 17

Slide 17 text

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

Slide 18

Slide 18 text

18 Walter a n d I a m officially addicted to Ansible