v 
Simplifying the Network with Ansible 
& 
Cumulus® Linux® 
Sep 3rd 2014
Introduction 
Michael DeHaan 
CTO, Ansible Inc. 
Meena Sankaran 
Ecosystem & Solutions 
Cumulus Networks
The Ansible Project 
§ Open Source IT Automation Tool 
§ Top 5 Project on GitHub last year for numbers of contributors 
(now ~840) 
§ 7500+ stars, 2200 Forks, Millions of Downloads
Example Ansible Users
Why Ansible ? 
§ Automation language approaches English 
§ Order-based, well suited for both imperative and declarative 
operations 
§ Designed from Day 1 for Multi-Tier Operation 
§ Agentless: No Extra Software Install Required 
§ Uses Native SSH, which you already have
Example of Playbook Language 
Example of Playbook Language
Ansible, Inc. 
§ Company behind Ansible 
§ Produces Ansible-Tower, a GUI and Central Server automation solution for 
Ansible, also offers support/services
A nsible Tower 
ansible.com/tower 
Optional Central Console Logging, 
RBAC, Compliance 
Scheduling Push Button Automation
Benefits of Ansible + Cumulus Linux 
§ Cumulus exposes IT automation as native Linux 
§ Ansible can treat Cumulus Linux powered hardware as just another computer 
§ Config files are extremely simple to template and deploy 
§ A single point of management for both compute and networking infrastructures 
§ Powerful support for role-based and team-based access to management
Unifying The Automation Stack 
§ Cloud/Virt Provisioning (ex: OpenStack) 
§ Base OS configuration 
§ Application Deployment 
§ Application Lifecycle 
§ Network Device Configuration
What is Cumulus® Linux®? 
Best of Networking and Linux come together 
A multi-platform operating system for networking 
hardware that makes building, managing and 
automating massive-capacity next-generation 
datacenter networks simple. 
§ IPv4/IPv6 routing and bridging at line rate 
§ Network Operating System and App Ecosystem 
§ Cumulus® Linux® is Linux®
® 
Choice of Apps - Rich Open Ecosystem 
Routing NW Automation Monitoring NW Virtualization Orchestration Other 
Cumulus® Linux® 
Open Networking Hardware 
Empowered Natively 
by Linux Tools 
v 
No vendor lock-in
The Modern Datacenter with Cumulus® Linux® and Ansible 
Problems trying to be solved: 
§ Rapid network provisioning 
§ Automation of Routine Tasks 
§ Next-Gen Ideas to make Networks Smarter 
Lets talk some scenarios where this makes sense for switches…… 
Host running Ansible 
(could be a Cumulus Linux 
on a Bare Metal Switch, or 
VM, etc) 
OOBM
The Modern Datacenter with Cumulus® Linux® and Ansible 
OOBM 
Scenario 1: Rapid Network Provisioning
The Modern Datacenter with Cumulus® Linux® and Ansible 
OOBM 
eBGP tcp multipath 
AS65001 
Scenario 1: Rapid Network Provisioning 
AS65002 
AS65003 
AS65004 
AS65005 
AS65006 
AS65007 
AS65008 AS65009 AS65010 AS65011
Ansible Snapshot -1 
PLAY RECAP 
***************************************************************host0 
: ok=6 changed=5 unreachable=0 failed=0 
leaf0 : ok=10 changed=9 unreachable=0 failed=0 
leaf1 : ok=10 changed=9 unreachable=0 failed=0 
leaf2 : ok=10 changed=9 unreachable=0 failed=0 
leaf3 : ok=10 changed=9 unreachable=0 failed=0 
tier1spine0 : ok=10 changed=9 unreachable=0 failed=0 
tier1spine1 : ok=10 changed=9 unreachable=0 failed=0 
tier1spine2 : ok=10 changed=9 unreachable=0 failed=0 
tier1spine3 : ok=10 changed=9 unreachable=0 failed=0 
tier2spine0 : ok=10 changed=9 unreachable=0 failed=0 
tier2spine1 : ok=10 changed=9 unreachable=0 failed=0 
tier2spine2 : ok=10 changed=9 unreachable=0 failed=0 
tier2spine3 : ok=10 changed=9 unreachable=0 failed=0
The Modern Datacenter with Cumulus® Linux® and Ansible 
OOBM 
Scenario 2: Hot Swapping The Whole Switch
Ansible Snapshot - 2 
PLAY RECAP ******************************************************************** 
host0 : ok=4 changed=0 unreachable=0 failed=0 
leaf0 : ok=7 changed=0 unreachable=0 failed=0 
leaf1 : ok=7 changed=0 unreachable=0 failed=0 
leaf2 : ok=7 changed=0 unreachable=0 failed=0 
leaf3 : ok=7 changed=0 unreachable=0 failed=0 
tier1spine0 : ok=7 changed=0 unreachable=0 failed=0 
tier1spine1 : ok=10 changed=9 unreachable=0 failed=0 
tier1spine2 : ok=7 changed=0 unreachable=0 failed=0 
tier1spine3 : ok=7 changed=0 unreachable=0 failed=0 
tier2spine0 : ok=7 changed=0 unreachable=0 failed=0 
tier2spine1 : ok=7 changed=0 unreachable=0 failed=0 
tier2spine2 : ok=7 changed=0 unreachable=0 failed=0 
tier2spine3 : ok=7 changed=0 unreachable=0 failed=0
The Modern Datacenter with Cumulus® Linux® and Ansible 
OOBM 
Scenario 3: Configuration Management
Ansible Snapshot - 3 
TASK: [demo| configure /etc/network/interfaces] ************************ 
ok: [tier1spine0] 
ok: [tier1spine2] 
ok: [tier2spine0] 
ok: [tier1spine3] 
changed: [tier1spine1] 
ok: [tier2spine1] 
ok: [tier2spine3] 
ok: [tier2spine2]
The Modern Datacenter with Cumulus® Linux® and Ansible 
OOBM 
Leaf3 Leaf7 
Scenario 4: Gracefully Change the Network 
y 
Spine2
Scenario 4: Gracefully Change the Network 
The Ansible Playbook: 
• configure Spine2 with higher metric (OSPF cost or 
prepend AS for BGP) to make it less desirable 
• check routes on Leaf3 to make sure Spine2 is no 
longer being used 
• Update network admin to let him know Spine2 is ready 
for decommissioning
The Modern Datacenter with Cumulus® Linux® and Ansible 
OOBM 
Spine2 (B) 
Leaf3 Leaf7 
Scenario 4: Gracefully Change the Network
Next Steps 
§ Resources available at 
http://cumulusnetworks.com/solutions/networking-automation/ 
§ Cumulus Workbench 
§ GitHub – Sample Configuration 
§ Demo Videos 
§ Blog Posts 
§ Knowledge Base Articles 
§ User-Guides 
§ Customer Support available through the sales field teams at Ansible 
and Cumulus Networks
Demo Topology – 2 Leaf , 2 Spine
Bringing the Linux Revolution to Networking 
§ Thank You! 
© 2014 Cumulus Networks. Cumulus Networks, the Cumulus Networks Logo, and Cumulus Linux are trademarks or registered trademarks of Cumulus Networks, Inc. or its affiliates 
in the U.S. and other countries. Other names may be trademarks of their respective owners. The registered trademark Linux® is used pursuant to a sublicense from LMI, the 
exclusive licensee of Linus Torvalds, owner of the mark on a world-wide basis.

Ansible & Cumulus Networks - Simplify Network Automation

  • 1.
    v Simplifying theNetwork with Ansible & Cumulus® Linux® Sep 3rd 2014
  • 2.
    Introduction Michael DeHaan CTO, Ansible Inc. Meena Sankaran Ecosystem & Solutions Cumulus Networks
  • 3.
    The Ansible Project § Open Source IT Automation Tool § Top 5 Project on GitHub last year for numbers of contributors (now ~840) § 7500+ stars, 2200 Forks, Millions of Downloads
  • 4.
  • 5.
    Why Ansible ? § Automation language approaches English § Order-based, well suited for both imperative and declarative operations § Designed from Day 1 for Multi-Tier Operation § Agentless: No Extra Software Install Required § Uses Native SSH, which you already have
  • 6.
    Example of PlaybookLanguage Example of Playbook Language
  • 7.
    Ansible, Inc. §Company behind Ansible § Produces Ansible-Tower, a GUI and Central Server automation solution for Ansible, also offers support/services
  • 8.
    A nsible Tower ansible.com/tower Optional Central Console Logging, RBAC, Compliance Scheduling Push Button Automation
  • 9.
    Benefits of Ansible+ Cumulus Linux § Cumulus exposes IT automation as native Linux § Ansible can treat Cumulus Linux powered hardware as just another computer § Config files are extremely simple to template and deploy § A single point of management for both compute and networking infrastructures § Powerful support for role-based and team-based access to management
  • 10.
    Unifying The AutomationStack § Cloud/Virt Provisioning (ex: OpenStack) § Base OS configuration § Application Deployment § Application Lifecycle § Network Device Configuration
  • 11.
    What is Cumulus®Linux®? Best of Networking and Linux come together A multi-platform operating system for networking hardware that makes building, managing and automating massive-capacity next-generation datacenter networks simple. § IPv4/IPv6 routing and bridging at line rate § Network Operating System and App Ecosystem § Cumulus® Linux® is Linux®
  • 12.
    ® Choice ofApps - Rich Open Ecosystem Routing NW Automation Monitoring NW Virtualization Orchestration Other Cumulus® Linux® Open Networking Hardware Empowered Natively by Linux Tools v No vendor lock-in
  • 13.
    The Modern Datacenterwith Cumulus® Linux® and Ansible Problems trying to be solved: § Rapid network provisioning § Automation of Routine Tasks § Next-Gen Ideas to make Networks Smarter Lets talk some scenarios where this makes sense for switches…… Host running Ansible (could be a Cumulus Linux on a Bare Metal Switch, or VM, etc) OOBM
  • 14.
    The Modern Datacenterwith Cumulus® Linux® and Ansible OOBM Scenario 1: Rapid Network Provisioning
  • 15.
    The Modern Datacenterwith Cumulus® Linux® and Ansible OOBM eBGP tcp multipath AS65001 Scenario 1: Rapid Network Provisioning AS65002 AS65003 AS65004 AS65005 AS65006 AS65007 AS65008 AS65009 AS65010 AS65011
  • 16.
    Ansible Snapshot -1 PLAY RECAP ***************************************************************host0 : ok=6 changed=5 unreachable=0 failed=0 leaf0 : ok=10 changed=9 unreachable=0 failed=0 leaf1 : ok=10 changed=9 unreachable=0 failed=0 leaf2 : ok=10 changed=9 unreachable=0 failed=0 leaf3 : ok=10 changed=9 unreachable=0 failed=0 tier1spine0 : ok=10 changed=9 unreachable=0 failed=0 tier1spine1 : ok=10 changed=9 unreachable=0 failed=0 tier1spine2 : ok=10 changed=9 unreachable=0 failed=0 tier1spine3 : ok=10 changed=9 unreachable=0 failed=0 tier2spine0 : ok=10 changed=9 unreachable=0 failed=0 tier2spine1 : ok=10 changed=9 unreachable=0 failed=0 tier2spine2 : ok=10 changed=9 unreachable=0 failed=0 tier2spine3 : ok=10 changed=9 unreachable=0 failed=0
  • 17.
    The Modern Datacenterwith Cumulus® Linux® and Ansible OOBM Scenario 2: Hot Swapping The Whole Switch
  • 18.
    Ansible Snapshot -2 PLAY RECAP ******************************************************************** host0 : ok=4 changed=0 unreachable=0 failed=0 leaf0 : ok=7 changed=0 unreachable=0 failed=0 leaf1 : ok=7 changed=0 unreachable=0 failed=0 leaf2 : ok=7 changed=0 unreachable=0 failed=0 leaf3 : ok=7 changed=0 unreachable=0 failed=0 tier1spine0 : ok=7 changed=0 unreachable=0 failed=0 tier1spine1 : ok=10 changed=9 unreachable=0 failed=0 tier1spine2 : ok=7 changed=0 unreachable=0 failed=0 tier1spine3 : ok=7 changed=0 unreachable=0 failed=0 tier2spine0 : ok=7 changed=0 unreachable=0 failed=0 tier2spine1 : ok=7 changed=0 unreachable=0 failed=0 tier2spine2 : ok=7 changed=0 unreachable=0 failed=0 tier2spine3 : ok=7 changed=0 unreachable=0 failed=0
  • 19.
    The Modern Datacenterwith Cumulus® Linux® and Ansible OOBM Scenario 3: Configuration Management
  • 20.
    Ansible Snapshot -3 TASK: [demo| configure /etc/network/interfaces] ************************ ok: [tier1spine0] ok: [tier1spine2] ok: [tier2spine0] ok: [tier1spine3] changed: [tier1spine1] ok: [tier2spine1] ok: [tier2spine3] ok: [tier2spine2]
  • 21.
    The Modern Datacenterwith Cumulus® Linux® and Ansible OOBM Leaf3 Leaf7 Scenario 4: Gracefully Change the Network y Spine2
  • 22.
    Scenario 4: GracefullyChange the Network The Ansible Playbook: • configure Spine2 with higher metric (OSPF cost or prepend AS for BGP) to make it less desirable • check routes on Leaf3 to make sure Spine2 is no longer being used • Update network admin to let him know Spine2 is ready for decommissioning
  • 23.
    The Modern Datacenterwith Cumulus® Linux® and Ansible OOBM Spine2 (B) Leaf3 Leaf7 Scenario 4: Gracefully Change the Network
  • 24.
    Next Steps §Resources available at http://cumulusnetworks.com/solutions/networking-automation/ § Cumulus Workbench § GitHub – Sample Configuration § Demo Videos § Blog Posts § Knowledge Base Articles § User-Guides § Customer Support available through the sales field teams at Ansible and Cumulus Networks
  • 25.
    Demo Topology –2 Leaf , 2 Spine
  • 27.
    Bringing the LinuxRevolution to Networking § Thank You! © 2014 Cumulus Networks. Cumulus Networks, the Cumulus Networks Logo, and Cumulus Linux are trademarks or registered trademarks of Cumulus Networks, Inc. or its affiliates in the U.S. and other countries. Other names may be trademarks of their respective owners. The registered trademark Linux® is used pursuant to a sublicense from LMI, the exclusive licensee of Linus Torvalds, owner of the mark on a world-wide basis.