8
Copyright © 2015 World Wide Technology, Inc. All rights reserved. Software-Defined Networking Ansible Tower | Docker | ACI ATC Core Builders Meeting – 22 May 2015 Joel W. King Technical Solutions Architect Enterprise Networking Solutions Engineering and Innovations

Ansible Tower | Docker | Cisco ACI

Embed Size (px)

Citation preview

Page 1: Ansible Tower | Docker | Cisco ACI

Copyright © 2015 World Wide Technology, Inc. All rights reserved.

Software-Defined Networking

Ansible Tower | Docker | ACIATC Core Builders Meeting – 22 May 2015

Joel W. KingTechnical Solutions ArchitectEnterprise Networking SolutionsEngineering and Innovations

Page 2: Ansible Tower | Docker | Cisco ACI

Ansible

• Ansible is an open source automation tool.• Designed to be easy for anyone to understand and learn. • Does not require custom scripting or code….

… however I’ve written code to manage Cisco ACI fabrics.

APIC

Page 3: Ansible Tower | Docker | Cisco ACI

Ansible Tower

• Ansible has two commercial offerings-• Ansible Consulting & Training Services• Ansible Tower

• Ansible Tower – Web GUI front-end to open source Ansible code• ROLE-BASED ACCESS CONTROL• JOB SCHEDULING• PUSH-BUTTON JOB RUNS• AUDIT TRAIL• PULL FROM SOURCE CONTROL

Page 4: Ansible Tower | Docker | Cisco ACI

Ansible Tower Demo

• Playbooks can be stored / version controlledin GitHub.

• Playbook downloadsa fileto multiplehostsin the ATC

SDNControllersin ATC

management network 10.255.40.207 10.255.40.78

SCM Update

Page 5: Ansible Tower | Docker | Cisco ACI

Docker

• What is Docker?• Open platform for developing, shipping, and running applications.• Separates applications from the infrastructure.

• How does Docker do this?• Combines a container virtualization platform,• Plus software to build apps into containers, distribute / ship, and deploy.

• Containers are• Isolated and secure application platform,• OS image + user-added files + meta-data,• Similar to a directory,• Hold everything for an app to run.

clientserverACI

demofabric

app

Netcat

Page 6: Ansible Tower | Docker | Cisco ACI

• Tower initiates Python modulesto apply policy to tenant in ACIfabric.

• Tower initiates Python applicationinstalled in Docker containeron client machine.

Ansible Tower – Apply ACI policy and run Docker app

x-docker-client

x-docker-server-1

.10

.1

.1

.10

192.0.2.0 / 24TEST-NET-1

198.51.100.0 / 24TEST-NET-2

Bridge DomainTEST-NET-2

Bridge DomainTEST-NET-1

management network policy

app

Page 7: Ansible Tower | Docker | Cisco ACI

Key take-away

• Networks increasingly are operated with combination of open source software and vendor hardware and software plus user written software.• Git / GitHub – open source version control• Ansible – open source automation tool• Docker - open platform to build, ship, and run distributed applications

• Open source enterprise offerings• Ansible Tower – Commercial GUI front-end to Ansible (also training)• Docker Inc. - Support, training, and professional services

• Vendor Hardware and Software –• Cisco Application Centric Infrastructure (ACI)

• User written software• aci_install_config.py Python module called by Ansible to configure fabric using ACI controller (APIC)• aci_gather_facts.py Python module called by Ansible to query APIC

Page 8: Ansible Tower | Docker | Cisco ACI