SlideShare uma empresa Scribd logo
1 de 27
Baixar para ler offline
Confidential. Copyright © Arista 2016. All rights reserved.
Confidential. Copyright © Arista 2016. All rights reserved.
Ansible Integration!
[ a simple, elegant approach to configuration management ]
1
+
Confidential. Copyright © Arista 2016. All rights reserved.
Ansible Background
•  Goal: simplicity and ease of use
•  Playbooks written in easy-to-read YAML
•  Core code written in Python
•  Modules can be written in any language you like
•  Agent-less architecture (no client daemon)
•  Tower: Operationalize Ansible
•  Idempotency
•  Community-driven (1300 >> 1)
Confidential. Copyright © Arista 2016. All rights reserved.
3
A New Solution...!
[ modules built right into Ansible 2.1 ]
Confidential. Copyright © Arista 2016. All rights reserved.
Ansible Modules
500+ built-in modules including:
apt, yum, copy, command, cron, dns, docker,
easy_install, ec2 (amazon modules), file,
filesystem, find, git, known_hosts, mysql,
mongodb, nagios, npm, openstack, rax
(rackspace) pip, shell, snmp_facts…
New network modules in Ansible 2.1
•  eos_template
•  eos_command
•  eos_eapi
•  eos_config
Sample options for the yum module
Confidential. Copyright © Arista 2016. All rights reserved.
eos_* Core Modules
[ New in Ansible 2.1+ ]
Advantages
●  No third-party libraries needed
●  No additional config or client running on the switch
●  Leverages eAPI/CLI(SSH) connection
●  Work directly with running-configuration
●  Easy to use/understand
●  Offline-mode (generate configuration lines)
Confidential. Copyright © Arista 2016. All rights reserved.
6
Configuration Management!
[ manage EOS configuration with eos_template]
Confidential. Copyright © Arista 2016. All rights reserved.
Ansible 101 - Identify Templates
leaf-bleaf-a
vlan	
  2	
  
	
  	
  	
  name	
  production	
  
vlan	
  3	
  
	
  	
  	
  name	
  app	
  
	
  
interface	
  Ethernet1	
  
	
  	
  	
  description	
  [BGP]Spine1	
  
	
  	
  	
  no	
  switchport	
  
	
  	
  	
  ip	
  address	
  10.1.1.1/31	
  
	
  
interface	
  Ethernet2	
  
	
  	
  	
  description	
  [BGP]Spine2	
  
	
  	
  	
  no	
  switchport	
  
	
  	
  	
  ip	
  address	
  10.1.2.1/31	
  
vlan	
  2	
  
	
  	
  	
  name	
  production	
  
vlan	
  3	
  
	
  	
  	
  name	
  app	
  
	
  
interface	
  Ethernet1	
  
	
  	
  	
  description	
  [BGP]Spine1	
  
	
  	
  	
  no	
  switchport	
  
	
  	
  	
  ip	
  address	
  10.1.1.3/31	
  
	
  
interface	
  Ethernet2	
  
	
  	
  	
  description	
  [BGP]Spine2	
  
	
  	
  	
  no	
  switchport	
  
	
  	
  	
  ip	
  address	
  10.1.2.3/31	
  
Vlan template
Ethernet
Interface
Template
Confidential. Copyright © Arista 2016. All rights reserved.
Ansible 101 – Create a Data Model
leaf-a
vlan	
  2	
  
	
  	
  	
  name	
  production	
  
vlan	
  3	
  
	
  	
  	
  name	
  app	
  
	
  
interface	
  Ethernet1	
  
	
  	
  	
  description	
  [BGP]Spine1	
  
	
  	
  	
  no	
  switchport	
  
	
  	
  	
  ip	
  address	
  10.1.1.1/31	
  
	
  
interface	
  Ethernet2	
  
	
  	
  	
  description	
  [BGP]Spine2	
  
	
  	
  	
  no	
  switchport	
  
	
  	
  	
  ip	
  address	
  10.1.2.1/31	
  
vlan:	
  
	
  	
  vlanid:	
  2	
  
	
  	
  name:	
  production	
  
interface:	
  
	
  	
  name:	
  Ethernet1	
  
	
  	
  description:	
  [BGP]Spine1	
  
	
  	
  address:	
  10.1.1.1/31	
  
	
  	
  	
  
Confidential. Copyright © Arista 2016. All rights reserved.
Ansible 101 – Create Vlan Jinja Template
leaf-a
vlan	
  2	
  
	
  	
  	
  name	
  production	
  
vlan	
  3	
  
	
  	
  	
  name	
  app	
  
	
  
interface	
  Ethernet1	
  
	
  	
  	
  description	
  [BGP]Spine1	
  
	
  	
  	
  no	
  switchport	
  
	
  	
  	
  ip	
  address	
  10.1.1.1/31	
  
	
  
interface	
  Ethernet2	
  
	
  	
  	
  description	
  [BGP]Spine2	
  
	
  	
  	
  no	
  switchport	
  
	
  	
  	
  ip	
  address	
  10.1.2.1/31	
  
vlans:	
  
	
  -­‐	
  vlanid:	
  2	
  
	
  	
  	
  name:	
  production	
  
	
  -­‐	
  vlanid:	
  3	
  
	
  	
  	
  name:	
  app	
  
	
  
{%	
  for	
  vlan	
  in	
  vlans	
  %}	
  
vlan	
  {{	
  vlan.vlanid	
  }}	
  
	
  	
  	
  name	
  {{	
  vlan.name	
  }}	
  
{%	
  endfor	
  %}	
  	
  
	
  	
  	
  
Jinja Template [ vlans.j2 ]
Confidential. Copyright © Arista 2016. All rights reserved.
Ansible 101 – Create Eth Jinja Template
leaf-a
vlan	
  2	
  
	
  	
  	
  name	
  production	
  
vlan	
  3	
  
	
  	
  	
  name	
  app	
  
	
  
interface	
  Ethernet1	
  
	
  	
  	
  description	
  [BGP]Spine1	
  
	
  	
  	
  no	
  switchport	
  
	
  	
  	
  ip	
  address	
  10.1.1.1/31	
  
	
  
interface	
  Ethernet2	
  
	
  	
  	
  description	
  [BGP]Spine2	
  
	
  	
  	
  no	
  switchport	
  
	
  	
  	
  ip	
  address	
  10.1.2.1/31	
  
interfaces:	
  
	
  -­‐	
  name:	
  Ethernet1	
  
	
  	
  	
  description:	
  [BGP]Spine1	
  
	
  	
  	
  address:	
  10.1.1.1/31	
  
	
  -­‐	
  name:	
  Ethernet2	
  
	
  	
  	
  description:	
  [BGP]Spine2	
  
	
  	
  	
  address:	
  10.1.2.1/31	
  
	
  
{%	
  for	
  intf	
  in	
  interfaces	
  %}	
  
interface	
  {{	
  intf.name	
  }}	
  
	
  	
  	
  description	
  {{	
  intf.description	
  }}	
  
	
  	
  	
  no	
  switchport	
  
	
  	
  	
  ip	
  address	
  {{	
  intf.address	
  }}	
  
{%	
  endfor	
  %}	
  	
  
	
  	
  	
  
Jinja Template [ intf.j2 ]
Confidential. Copyright © Arista 2016. All rights reserved.
host_vars/leaf-b:
interfaces:	
  
	
  -­‐	
  name:	
  Ethernet1	
  
	
  	
  	
  description:	
  [BGP]Spine1	
  
	
  	
  	
  address:	
  10.1.1.2/31	
  
	
  -­‐	
  name:	
  Ethernet2	
  
	
  	
  	
  description:	
  [BGP]Spine2	
  
	
  	
  	
  address:	
  10.1.2.2/31	
  
- hosts: pod1_leafs
tasks:
- name: Configure Arista Vlans
eos_template:
src=vlan.j2
- name: ConfigureArista Eth Interfaces
eos_template:
src=intf.j2
group_vars/pod1_leaf:
vlans:
- vlanid: 2
name: production
- vlanid: 3
name: app
hosts file:
[pod1_leafs]
leaf-a
leaf-b
1. Who runs the play?
4. Gather host vars
5. Run tasks
3. Any group vars?
2. Who’s in that group?
(Fork per player)
Ansible 101 – Running the playbook
host_vars/leaf-a:
interfaces:	
  
	
  -­‐	
  name:	
  Ethernet1	
  
	
  	
  	
  description:	
  [BGP]Spine1	
  
	
  	
  	
  address:	
  10.1.1.1/31	
  
	
  -­‐	
  name:	
  Ethernet2	
  
	
  	
  	
  description:	
  [BGP]Spine2	
  
	
  	
  	
  address:	
  10.1.2.1/31	
  
Confidential. Copyright © Arista 2016. All rights reserved.
Eos_Template: How it Works
Confidential. Copyright © Arista 2016. All rights reserved.
Conceptually
- host_vars
- group_vars
- sql database
- cmdb
- git repo
- static config
- Ansible Tasks
- Ansible Roles
- Config Blocks
- Jinja Templates
Data
Execution Running
Config
[frequent changes]
[seldom changes]
Confidential. Copyright © Arista 2016. All rights reserved.
14
Continuous Compliance!
[ verify EOS state with eos_command ]
Confidential. Copyright © Arista 2016. All rights reserved.
Validating System Details
-­‐	
  name:	
  Gather	
  Show	
  Version	
  From	
  EOS	
  
	
  	
  eos_command:	
  
	
  	
  	
  	
  commands:	
  
	
  	
  	
  	
  	
  	
  -­‐	
  ‘show	
  version’	
  
	
  	
  register:	
  showvers	
  
	
  
-­‐	
  name:	
  Check	
  EOS	
  System	
  Parameters	
  
	
  	
  assert:	
  
	
  	
  	
  	
  that:	
  
	
  	
  	
  	
  	
  	
  -­‐	
  “’4.16.6M’	
  ==	
  showvers['stdout'][0]['version']”	
  
	
  	
  	
  	
  	
  	
  -­‐	
  “’DCS-­‐7150S-­‐24'	
  ==	
  showvers['stdout'][0]['modelName’]”	
  
Confidential. Copyright © Arista 2016. All rights reserved.
Validating Ephemeral State
-­‐	
  name:	
  Gather	
  MLAG	
  Status	
  from	
  EOS	
  
	
  	
  eos_command:	
  
	
  	
  	
  	
  commands:	
  
	
  	
  	
  	
  	
  	
  -­‐	
  ‘show	
  mlag’	
  
	
  	
  register:	
  showmlag	
  
	
  
-­‐	
  name:	
  Verify	
  MLAG	
  State	
  
	
  	
  assert:	
  
	
  	
  	
  	
  that:	
  
	
  	
  	
  	
  	
  	
  -­‐	
  "'active'	
  ==	
  showmlag['stdout'][0]['state']"	
  
	
  	
  	
  	
  	
  	
  -­‐	
  "'connected'	
  ==	
  showmlag['stdout'][0]['negStatus']"	
  
	
  	
  	
  	
  	
  	
  -­‐	
  "'up'	
  ==	
  showmlag['stdout'][0]['peerLinkStatus']"	
  
Confidential. Copyright © Arista 2016. All rights reserved.
17
Revision Control!
[ use Git to manage changes ]
Confidential. Copyright © Arista 2016. All rights reserved.
Authorize Changes via Pull Requests
Confidential. Copyright © Arista 2016. All rights reserved.
Synchronize Changes in Tower
•  Tower syncs with Git repo
•  All playbooks
automatically imported
•  Single source of truth
Confidential. Copyright © Arista 2016. All rights reserved.
20
Ansible Roles!
[ reusable, flexible implementation via roles]
Confidential. Copyright © Arista 2016. All rights reserved.
•  Package similar templates/tasks
•  Create flexible and dynamic templates/tasks
•  Create reusable code
•  Easily distribute and manage template/task changes
Use Ansible Roles to:
Confidential. Copyright © Arista 2016. All rights reserved.
Sample Roles from Arista – Ansible Galaxy
[ Ansible Roles that built on top
of arista.eos ]
Confidential. Copyright © Arista 2016. All rights reserved.
Example EOS Role - Varp
[ Abstract Virtual Router Configuration ]
host_vars/veos-­‐3	
  
	
  
virtual_mac_addr:	
  "00:1c:73:00:00:99"	
  
varp_interfaces:	
  
	
  	
  -­‐	
  vlanid:	
  1001	
  
	
  	
  	
  	
  name:	
  Varp_Vlan1001	
  
	
  	
  	
  	
  interface_addr:	
  192.168.1.3/24	
  
	
  	
  	
  	
  virtual_addrs:	
  
	
  	
  	
  	
  	
  	
  -­‐	
  192.168.1.1	
  
	
  	
  -­‐	
  vlanid:	
  1002	
  
	
  	
  	
  	
  name:	
  Varp_Vlan1002	
  
	
  	
  	
  	
  interface_addr:	
  192.168.2.3/24	
  
	
  	
  	
  	
  virtual_addrs:	
  
	
  	
  	
  	
  	
  	
  -­‐	
  192.168.2.1	
  
	
  
	
  
host_vars/veos-­‐4	
  
	
  
virtual_mac_addr:	
  "00:1c:73:00:00:99"	
  
varp_interfaces:	
  
	
  	
  -­‐	
  vlanid:	
  1001	
  
	
  	
  	
  	
  name:	
  Varp_Vlan1001	
  
	
  	
  	
  	
  interface_addr:	
  192.168.1.4/24	
  
	
  	
  	
  	
  virtual_addrs:	
  
	
  	
  	
  	
  	
  	
  -­‐	
  192.168.1.1	
  
	
  	
  -­‐	
  vlanid:	
  1002	
  
	
  	
  	
  	
  name:	
  Varp_Vlan1002	
  
	
  	
  	
  	
  interface_addr:	
  192.168.2.4/24	
  
	
  	
  	
  	
  virtual_addrs:	
  
	
  	
  	
  	
  	
  	
  -­‐	
  192.168.2.1	
  
	
  
	
  
	
  
#	
  Playbook	
  
-­‐	
  hosts:	
  leafs	
  
	
  	
  roles:	
  
	
  	
  	
  	
  -­‐	
  arista.eos-­‐virtual-­‐router	
  
	
  
	
  
	
  #	
  Run	
  
	
  
ansible-­‐playbook	
  -­‐i	
  hosts	
  play.yml	
  
	
  
	
  
	
  
#	
  hosts	
  file	
  
[leafs]	
  
veos-­‐3	
  
veos-­‐4	
  
	
  
	
  
Confidential. Copyright © Arista 2016. All rights reserved.
Using Roles - Site Configuration
[ Simply include roles ]
#	
  Run	
  
	
  
ansible-­‐playbook	
  -­‐i	
  hosts	
  site.yml	
  
	
  
	
  
	
  
#	
  hosts	
  file	
  
[spine]	
  
veos-­‐1	
  
veos-­‐2	
  
	
  
[leaf]	
  
veos-­‐3	
  
veos-­‐4	
  
	
  
	
  
#	
  Playbook	
  site.yml	
  
-­‐	
  include:	
  spine.yaml	
  
-­‐	
  include:	
  leaf.yaml	
  
#	
  Playbook	
  spine.yml	
  
-­‐	
  hosts:	
  spine	
  
	
  	
  gather_facts:	
  no	
  
	
  
	
  	
  roles:	
  
	
  	
  	
  	
  -­‐	
  arista.eos-­‐system	
  
	
  	
  	
  	
  -­‐	
  arista.eos-­‐interfaces	
  
	
  	
  	
  	
  -­‐	
  arista.eos-­‐bridging	
  
	
  	
  	
  	
  -­‐	
  arista.eos-­‐ipv4	
  
	
  	
  	
  	
  -­‐	
  arista.eos-­‐route-­‐control	
  
	
  	
  	
  	
  -­‐	
  arista.eos-­‐bgp	
  
#	
  Playbook	
  leaf.yml	
  
-­‐	
  hosts:	
  leaf	
  
	
  	
  gather_facts:	
  no	
  
	
  
	
  	
  roles:	
  
	
  	
  	
  	
  -­‐	
  arista.eos-­‐system	
  
	
  	
  	
  	
  -­‐	
  arista.eos-­‐interfaces	
  
	
  	
  	
  	
  -­‐	
  arista.eos-­‐bridging	
  
	
  	
  	
  	
  -­‐	
  arista.eos-­‐ipv4	
  
	
  	
  	
  	
  -­‐	
  arista.eos-­‐route-­‐control	
  
	
  	
  	
  	
  -­‐	
  arista.eos-­‐bgp	
  
	
  	
  	
  	
  -­‐	
  arista.eos-­‐mlag	
  
	
  	
  	
  	
  -­‐	
  arista.eos-­‐virtual-­‐router	
  
	
  
Confidential. Copyright © Arista 2016. All rights reserved.
Sample Demo
[ Zero Touch into Tower ]
https://youtu.be/VB29kjSOp7E
Setup
1.  Spine/leaf in bowtie
2.  All nodes in ZTP mode
3.  Nodes statically +
dynamically identified by
ZTPServer
4.  Nodes get base config:
a.  hostname
b.  mgmt ip
c.  eAPI enabled
5.  Nodes register themselves
with Tower
6.  Run Job Template in
Tower to provision nodes.
Confidential. Copyright © Arista 2016. All rights reserved.
Getting Started
Main Ansible Documentation
Ask about our Ravello Blueprint
Arista + Ansible 2.1 Quickstart
YouTube Tutorials
Ask for Help - ansible-dev@arista.com
Confidential. Copyright © Arista 2016. All rights reserved.
27
Thanks!

Mais conteúdo relacionado

Mais procurados

Arista reinventing data center switching
Arista   reinventing data center switchingArista   reinventing data center switching
Arista reinventing data center switchingVLCM2015
 
CCNA2 Verson6 Chapter6
CCNA2 Verson6 Chapter6CCNA2 Verson6 Chapter6
CCNA2 Verson6 Chapter6Chaing Ravuth
 
CCNA 2 Routing and Switching v5.0 Chapter 5
CCNA 2 Routing and Switching v5.0 Chapter 5CCNA 2 Routing and Switching v5.0 Chapter 5
CCNA 2 Routing and Switching v5.0 Chapter 5Nil Menon
 
Оверлейные сети ЦОД Технологии VXLAN и EVPN
Оверлейные сети ЦОД Технологии VXLAN и EVPN Оверлейные сети ЦОД Технологии VXLAN и EVPN
Оверлейные сети ЦОД Технологии VXLAN и EVPN Cisco Russia
 
Alphorm.com Formation CCNP ENCOR 350-401 (3of8) : Sans Fil
Alphorm.com Formation CCNP ENCOR 350-401 (3of8) : Sans FilAlphorm.com Formation CCNP ENCOR 350-401 (3of8) : Sans Fil
Alphorm.com Formation CCNP ENCOR 350-401 (3of8) : Sans FilAlphorm
 
A comparison of segment routing data-plane encodings
A comparison of segment routing data-plane encodingsA comparison of segment routing data-plane encodings
A comparison of segment routing data-plane encodingsGunter Van de Velde
 
TechWiseTV Workshop: Software-Defined Access
TechWiseTV Workshop: Software-Defined AccessTechWiseTV Workshop: Software-Defined Access
TechWiseTV Workshop: Software-Defined AccessRobb Boyd
 
CCNA-LAB-GUIDE-V3_LAST-ADDITION (4).pdf
CCNA-LAB-GUIDE-V3_LAST-ADDITION (4).pdfCCNA-LAB-GUIDE-V3_LAST-ADDITION (4).pdf
CCNA-LAB-GUIDE-V3_LAST-ADDITION (4).pdfpoojaswami31
 
Cisco nexus series
Cisco nexus seriesCisco nexus series
Cisco nexus seriesAnwesh Dixit
 

Mais procurados (20)

Cisco ASA Firewalls
Cisco ASA FirewallsCisco ASA Firewalls
Cisco ASA Firewalls
 
Arista reinventing data center switching
Arista   reinventing data center switchingArista   reinventing data center switching
Arista reinventing data center switching
 
CCNA2 Verson6 Chapter6
CCNA2 Verson6 Chapter6CCNA2 Verson6 Chapter6
CCNA2 Verson6 Chapter6
 
Wi-fi
Wi-fiWi-fi
Wi-fi
 
CCNA 2 Routing and Switching v5.0 Chapter 5
CCNA 2 Routing and Switching v5.0 Chapter 5CCNA 2 Routing and Switching v5.0 Chapter 5
CCNA 2 Routing and Switching v5.0 Chapter 5
 
CCNP ROUTE V7 CH4
CCNP ROUTE V7 CH4CCNP ROUTE V7 CH4
CCNP ROUTE V7 CH4
 
Оверлейные сети ЦОД Технологии VXLAN и EVPN
Оверлейные сети ЦОД Технологии VXLAN и EVPN Оверлейные сети ЦОД Технологии VXLAN и EVPN
Оверлейные сети ЦОД Технологии VXLAN и EVPN
 
Entities on Node.JS
Entities on Node.JSEntities on Node.JS
Entities on Node.JS
 
Alphorm.com Formation CCNP ENCOR 350-401 (3of8) : Sans Fil
Alphorm.com Formation CCNP ENCOR 350-401 (3of8) : Sans FilAlphorm.com Formation CCNP ENCOR 350-401 (3of8) : Sans Fil
Alphorm.com Formation CCNP ENCOR 350-401 (3of8) : Sans Fil
 
IPv6
IPv6IPv6
IPv6
 
CCNP Security-Secure
CCNP Security-SecureCCNP Security-Secure
CCNP Security-Secure
 
CCNA Lab Guide
CCNA Lab GuideCCNA Lab Guide
CCNA Lab Guide
 
IPv6
IPv6IPv6
IPv6
 
A comparison of segment routing data-plane encodings
A comparison of segment routing data-plane encodingsA comparison of segment routing data-plane encodings
A comparison of segment routing data-plane encodings
 
TechWiseTV Workshop: Software-Defined Access
TechWiseTV Workshop: Software-Defined AccessTechWiseTV Workshop: Software-Defined Access
TechWiseTV Workshop: Software-Defined Access
 
CCNA-LAB-GUIDE-V3_LAST-ADDITION (4).pdf
CCNA-LAB-GUIDE-V3_LAST-ADDITION (4).pdfCCNA-LAB-GUIDE-V3_LAST-ADDITION (4).pdf
CCNA-LAB-GUIDE-V3_LAST-ADDITION (4).pdf
 
Advanced Topics in IP Multicast Deployment
Advanced Topics in IP Multicast DeploymentAdvanced Topics in IP Multicast Deployment
Advanced Topics in IP Multicast Deployment
 
Preventing Traffic with Spoofed Source IP address
Preventing Traffic with Spoofed Source IP addressPreventing Traffic with Spoofed Source IP address
Preventing Traffic with Spoofed Source IP address
 
Cisco ASA
Cisco ASACisco ASA
Cisco ASA
 
Cisco nexus series
Cisco nexus seriesCisco nexus series
Cisco nexus series
 

Destaque

Arista Networks - Building the Next Generation Workplace and Data Center Usin...
Arista Networks - Building the Next Generation Workplace and Data Center Usin...Arista Networks - Building the Next Generation Workplace and Data Center Usin...
Arista Networks - Building the Next Generation Workplace and Data Center Usin...Aruba, a Hewlett Packard Enterprise company
 
Ansible Meetup NYC 060215
Ansible Meetup NYC 060215Ansible Meetup NYC 060215
Ansible Meetup NYC 060215jedelman99
 
Journey to Software-Defined Cloud Networking
Journey to Software-Defined Cloud NetworkingJourney to Software-Defined Cloud Networking
Journey to Software-Defined Cloud NetworkingOpen Networking Summits
 
MC-LAG Configuration with BGP-base VPLS
MC-LAG Configuration with BGP-base VPLSMC-LAG Configuration with BGP-base VPLS
MC-LAG Configuration with BGP-base VPLSJohnson Liu
 
TIAD 2016 : Network automation with Ansible and OpenConfig/YANG
TIAD 2016 : Network automation with Ansible and OpenConfig/YANGTIAD 2016 : Network automation with Ansible and OpenConfig/YANG
TIAD 2016 : Network automation with Ansible and OpenConfig/YANGThe Incredible Automation Day
 
Chef arista devops days a'dam 2015
Chef arista devops days a'dam 2015Chef arista devops days a'dam 2015
Chef arista devops days a'dam 2015Edwin Beekman
 
TIAD 2016 : Migrating 100% of your production services to containers
TIAD 2016 : Migrating 100% of your production services to containersTIAD 2016 : Migrating 100% of your production services to containers
TIAD 2016 : Migrating 100% of your production services to containersThe Incredible Automation Day
 
Tap DANZing - Arista Networks Redefining the Cost of Accessing Network Traffic
Tap DANZing - Arista Networks Redefining the Cost of Accessing Network TrafficTap DANZing - Arista Networks Redefining the Cost of Accessing Network Traffic
Tap DANZing - Arista Networks Redefining the Cost of Accessing Network TrafficEmulex Corporation
 
Data center network reference pov jeff green 2016 v2
Data center network reference pov jeff green 2016 v2Data center network reference pov jeff green 2016 v2
Data center network reference pov jeff green 2016 v2Jeff Green
 
Extreme Spine Leaf Design
Extreme Spine Leaf DesignExtreme Spine Leaf Design
Extreme Spine Leaf DesignJeff Green
 
Managing sensitive data with Ansible vault
Managing sensitive data with Ansible vaultManaging sensitive data with Ansible vault
Managing sensitive data with Ansible vaultPascal Stauffer
 
Flexible, simple deployments with OpenStack-Ansible
Flexible, simple deployments with OpenStack-AnsibleFlexible, simple deployments with OpenStack-Ansible
Flexible, simple deployments with OpenStack-AnsibleMajor Hayden
 
Ansible for Enterprise
Ansible for EnterpriseAnsible for Enterprise
Ansible for EnterpriseAnsible
 
[세미나] Vagrant 이지원
[세미나] Vagrant 이지원[세미나] Vagrant 이지원
[세미나] Vagrant 이지원지원 이
 
OpenStack-Ansible Security
OpenStack-Ansible SecurityOpenStack-Ansible Security
OpenStack-Ansible SecurityMajor Hayden
 
Ansible administracion simplificada
Ansible   administracion simplificada Ansible   administracion simplificada
Ansible administracion simplificada bcoca
 
Er training smi 2010
Er training smi 2010Er training smi 2010
Er training smi 2010imitam
 

Destaque (20)

Arista Networks - Building the Next Generation Workplace and Data Center Usin...
Arista Networks - Building the Next Generation Workplace and Data Center Usin...Arista Networks - Building the Next Generation Workplace and Data Center Usin...
Arista Networks - Building the Next Generation Workplace and Data Center Usin...
 
Ansible Meetup NYC 060215
Ansible Meetup NYC 060215Ansible Meetup NYC 060215
Ansible Meetup NYC 060215
 
Journey to Software-Defined Cloud Networking
Journey to Software-Defined Cloud NetworkingJourney to Software-Defined Cloud Networking
Journey to Software-Defined Cloud Networking
 
MC-LAG Configuration with BGP-base VPLS
MC-LAG Configuration with BGP-base VPLSMC-LAG Configuration with BGP-base VPLS
MC-LAG Configuration with BGP-base VPLS
 
TIAD 2016 : Network automation with Ansible and OpenConfig/YANG
TIAD 2016 : Network automation with Ansible and OpenConfig/YANGTIAD 2016 : Network automation with Ansible and OpenConfig/YANG
TIAD 2016 : Network automation with Ansible and OpenConfig/YANG
 
Chef arista devops days a'dam 2015
Chef arista devops days a'dam 2015Chef arista devops days a'dam 2015
Chef arista devops days a'dam 2015
 
TIAD 2016 : Migrating 100% of your production services to containers
TIAD 2016 : Migrating 100% of your production services to containersTIAD 2016 : Migrating 100% of your production services to containers
TIAD 2016 : Migrating 100% of your production services to containers
 
Tap DANZing - Arista Networks Redefining the Cost of Accessing Network Traffic
Tap DANZing - Arista Networks Redefining the Cost of Accessing Network TrafficTap DANZing - Arista Networks Redefining the Cost of Accessing Network Traffic
Tap DANZing - Arista Networks Redefining the Cost of Accessing Network Traffic
 
Arista linked in
Arista linked inArista linked in
Arista linked in
 
Data center network reference pov jeff green 2016 v2
Data center network reference pov jeff green 2016 v2Data center network reference pov jeff green 2016 v2
Data center network reference pov jeff green 2016 v2
 
Extreme Spine Leaf Design
Extreme Spine Leaf DesignExtreme Spine Leaf Design
Extreme Spine Leaf Design
 
Animatu 2009
Animatu 2009Animatu 2009
Animatu 2009
 
Ansible & Vagrant
Ansible & VagrantAnsible & Vagrant
Ansible & Vagrant
 
Managing sensitive data with Ansible vault
Managing sensitive data with Ansible vaultManaging sensitive data with Ansible vault
Managing sensitive data with Ansible vault
 
Flexible, simple deployments with OpenStack-Ansible
Flexible, simple deployments with OpenStack-AnsibleFlexible, simple deployments with OpenStack-Ansible
Flexible, simple deployments with OpenStack-Ansible
 
Ansible for Enterprise
Ansible for EnterpriseAnsible for Enterprise
Ansible for Enterprise
 
[세미나] Vagrant 이지원
[세미나] Vagrant 이지원[세미나] Vagrant 이지원
[세미나] Vagrant 이지원
 
OpenStack-Ansible Security
OpenStack-Ansible SecurityOpenStack-Ansible Security
OpenStack-Ansible Security
 
Ansible administracion simplificada
Ansible   administracion simplificada Ansible   administracion simplificada
Ansible administracion simplificada
 
Er training smi 2010
Er training smi 2010Er training smi 2010
Er training smi 2010
 

Semelhante a Arista: DevOps for Network Engineers

2_ESNOG_arista.pptx
2_ESNOG_arista.pptx2_ESNOG_arista.pptx
2_ESNOG_arista.pptxVikram Reddy
 
Kubernetes Networking in Amazon EKS (CON412) - AWS re:Invent 2018
Kubernetes Networking in Amazon EKS (CON412) - AWS re:Invent 2018Kubernetes Networking in Amazon EKS (CON412) - AWS re:Invent 2018
Kubernetes Networking in Amazon EKS (CON412) - AWS re:Invent 2018Amazon Web Services
 
Ansible & Salt - Vincent Boon
Ansible & Salt - Vincent BoonAnsible & Salt - Vincent Boon
Ansible & Salt - Vincent BoonMyNOG
 
[Cisco Connect 2018 - Vietnam] Anh duc le reap the benefits of sdn with cisco...
[Cisco Connect 2018 - Vietnam] Anh duc le reap the benefits of sdn with cisco...[Cisco Connect 2018 - Vietnam] Anh duc le reap the benefits of sdn with cisco...
[Cisco Connect 2018 - Vietnam] Anh duc le reap the benefits of sdn with cisco...Nur Shiqim Chok
 
Harmonia open iris_basic_v0.1
Harmonia open iris_basic_v0.1Harmonia open iris_basic_v0.1
Harmonia open iris_basic_v0.1Yongyoon Shin
 
Snabbflow: A Scalable IPFIX exporter
Snabbflow: A Scalable IPFIX exporterSnabbflow: A Scalable IPFIX exporter
Snabbflow: A Scalable IPFIX exporterIgalia
 
ElixirでFPGAを設計する
ElixirでFPGAを設計するElixirでFPGAを設計する
ElixirでFPGAを設計するHideki Takase
 
CCNA3 Verson6 Chapter1
CCNA3 Verson6 Chapter1CCNA3 Verson6 Chapter1
CCNA3 Verson6 Chapter1Chaing Ravuth
 
One tool, two fabrics: Ansible and Nexus 9000
One tool, two fabrics: Ansible and Nexus 9000One tool, two fabrics: Ansible and Nexus 9000
One tool, two fabrics: Ansible and Nexus 9000Joel W. King
 
Automated Deployment & Benchmarking with Chef, Cobbler and Rally for OpenStack
Automated Deployment & Benchmarking with Chef, Cobbler and Rally for OpenStackAutomated Deployment & Benchmarking with Chef, Cobbler and Rally for OpenStack
Automated Deployment & Benchmarking with Chef, Cobbler and Rally for OpenStackNTT Communications Technology Development
 
Navigating the YANGscape of network automation
Navigating the YANGscape of network automationNavigating the YANGscape of network automation
Navigating the YANGscape of network automationRoman Dodin
 
Cisco Connect Toronto 2018 dc-aci-anywhere
Cisco Connect Toronto 2018   dc-aci-anywhereCisco Connect Toronto 2018   dc-aci-anywhere
Cisco Connect Toronto 2018 dc-aci-anywhereCisco Canada
 
Is OpenStack Neutron production ready for large scale deployments?
Is OpenStack Neutron production ready for large scale deployments?Is OpenStack Neutron production ready for large scale deployments?
Is OpenStack Neutron production ready for large scale deployments?Елена Ежова
 
Ansible automation sa technical deck q2 fy19
Ansible automation sa technical deck q2 fy19Ansible automation sa technical deck q2 fy19
Ansible automation sa technical deck q2 fy19dvillaco
 
Kamailio with Docker and Kubernetes
Kamailio with Docker and KubernetesKamailio with Docker and Kubernetes
Kamailio with Docker and KubernetesPaolo Visintin
 
2014/09/02 Cisco UCS HPC @ ANL
2014/09/02 Cisco UCS HPC @ ANL2014/09/02 Cisco UCS HPC @ ANL
2014/09/02 Cisco UCS HPC @ ANLdgoodell
 

Semelhante a Arista: DevOps for Network Engineers (20)

2_ESNOG_arista.pptx
2_ESNOG_arista.pptx2_ESNOG_arista.pptx
2_ESNOG_arista.pptx
 
Samplab19
Samplab19Samplab19
Samplab19
 
Kubernetes Networking in Amazon EKS (CON412) - AWS re:Invent 2018
Kubernetes Networking in Amazon EKS (CON412) - AWS re:Invent 2018Kubernetes Networking in Amazon EKS (CON412) - AWS re:Invent 2018
Kubernetes Networking in Amazon EKS (CON412) - AWS re:Invent 2018
 
Ansible & Salt - Vincent Boon
Ansible & Salt - Vincent BoonAnsible & Salt - Vincent Boon
Ansible & Salt - Vincent Boon
 
[Cisco Connect 2018 - Vietnam] Anh duc le reap the benefits of sdn with cisco...
[Cisco Connect 2018 - Vietnam] Anh duc le reap the benefits of sdn with cisco...[Cisco Connect 2018 - Vietnam] Anh duc le reap the benefits of sdn with cisco...
[Cisco Connect 2018 - Vietnam] Anh duc le reap the benefits of sdn with cisco...
 
Harmonia open iris_basic_v0.1
Harmonia open iris_basic_v0.1Harmonia open iris_basic_v0.1
Harmonia open iris_basic_v0.1
 
Snabbflow: A Scalable IPFIX exporter
Snabbflow: A Scalable IPFIX exporterSnabbflow: A Scalable IPFIX exporter
Snabbflow: A Scalable IPFIX exporter
 
Terraform
TerraformTerraform
Terraform
 
ElixirでFPGAを設計する
ElixirでFPGAを設計するElixirでFPGAを設計する
ElixirでFPGAを設計する
 
CCNA3 Verson6 Chapter1
CCNA3 Verson6 Chapter1CCNA3 Verson6 Chapter1
CCNA3 Verson6 Chapter1
 
One tool, two fabrics: Ansible and Nexus 9000
One tool, two fabrics: Ansible and Nexus 9000One tool, two fabrics: Ansible and Nexus 9000
One tool, two fabrics: Ansible and Nexus 9000
 
Automated Deployment & Benchmarking with Chef, Cobbler and Rally for OpenStack
Automated Deployment & Benchmarking with Chef, Cobbler and Rally for OpenStackAutomated Deployment & Benchmarking with Chef, Cobbler and Rally for OpenStack
Automated Deployment & Benchmarking with Chef, Cobbler and Rally for OpenStack
 
Navigating the YANGscape of network automation
Navigating the YANGscape of network automationNavigating the YANGscape of network automation
Navigating the YANGscape of network automation
 
Cisco Connect Toronto 2018 dc-aci-anywhere
Cisco Connect Toronto 2018   dc-aci-anywhereCisco Connect Toronto 2018   dc-aci-anywhere
Cisco Connect Toronto 2018 dc-aci-anywhere
 
Is OpenStack Neutron production ready for large scale deployments?
Is OpenStack Neutron production ready for large scale deployments?Is OpenStack Neutron production ready for large scale deployments?
Is OpenStack Neutron production ready for large scale deployments?
 
Icnd210 s07l02
Icnd210 s07l02Icnd210 s07l02
Icnd210 s07l02
 
Ansible automation sa technical deck q2 fy19
Ansible automation sa technical deck q2 fy19Ansible automation sa technical deck q2 fy19
Ansible automation sa technical deck q2 fy19
 
Running Spark in Production
Running Spark in ProductionRunning Spark in Production
Running Spark in Production
 
Kamailio with Docker and Kubernetes
Kamailio with Docker and KubernetesKamailio with Docker and Kubernetes
Kamailio with Docker and Kubernetes
 
2014/09/02 Cisco UCS HPC @ ANL
2014/09/02 Cisco UCS HPC @ ANL2014/09/02 Cisco UCS HPC @ ANL
2014/09/02 Cisco UCS HPC @ ANL
 

Último

Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxDeepakSakkari2
 
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)dollysharma2066
 
Comparative Analysis of Text Summarization Techniques
Comparative Analysis of Text Summarization TechniquesComparative Analysis of Text Summarization Techniques
Comparative Analysis of Text Summarization Techniquesugginaramesh
 
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEINFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEroselinkalist12
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile servicerehmti665
 
An introduction to Semiconductor and its types.pptx
An introduction to Semiconductor and its types.pptxAn introduction to Semiconductor and its types.pptx
An introduction to Semiconductor and its types.pptxPurva Nikam
 
computer application and construction management
computer application and construction managementcomputer application and construction management
computer application and construction managementMariconPadriquez1
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfAsst.prof M.Gokilavani
 
An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...Chandu841456
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxPoojaBan
 
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)Dr SOUNDIRARAJ N
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidNikhilNagaraju
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxwendy cai
 
Arduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptArduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptSAURABHKUMAR892774
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort servicejennyeacort
 

Último (20)

🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptx
 
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCRCall Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
 
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
Call Us ≽ 8377877756 ≼ Call Girls In Shastri Nagar (Delhi)
 
Comparative Analysis of Text Summarization Techniques
Comparative Analysis of Text Summarization TechniquesComparative Analysis of Text Summarization Techniques
Comparative Analysis of Text Summarization Techniques
 
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEINFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
 
Design and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdfDesign and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdf
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile service
 
An introduction to Semiconductor and its types.pptx
An introduction to Semiconductor and its types.pptxAn introduction to Semiconductor and its types.pptx
An introduction to Semiconductor and its types.pptx
 
computer application and construction management
computer application and construction managementcomputer application and construction management
computer application and construction management
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
 
An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...An experimental study in using natural admixture as an alternative for chemic...
An experimental study in using natural admixture as an alternative for chemic...
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptx
 
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfid
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptx
 
Arduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptArduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.ppt
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
 

Arista: DevOps for Network Engineers

  • 1. Confidential. Copyright © Arista 2016. All rights reserved. Confidential. Copyright © Arista 2016. All rights reserved. Ansible Integration! [ a simple, elegant approach to configuration management ] 1 +
  • 2. Confidential. Copyright © Arista 2016. All rights reserved. Ansible Background •  Goal: simplicity and ease of use •  Playbooks written in easy-to-read YAML •  Core code written in Python •  Modules can be written in any language you like •  Agent-less architecture (no client daemon) •  Tower: Operationalize Ansible •  Idempotency •  Community-driven (1300 >> 1)
  • 3. Confidential. Copyright © Arista 2016. All rights reserved. 3 A New Solution...! [ modules built right into Ansible 2.1 ]
  • 4. Confidential. Copyright © Arista 2016. All rights reserved. Ansible Modules 500+ built-in modules including: apt, yum, copy, command, cron, dns, docker, easy_install, ec2 (amazon modules), file, filesystem, find, git, known_hosts, mysql, mongodb, nagios, npm, openstack, rax (rackspace) pip, shell, snmp_facts… New network modules in Ansible 2.1 •  eos_template •  eos_command •  eos_eapi •  eos_config Sample options for the yum module
  • 5. Confidential. Copyright © Arista 2016. All rights reserved. eos_* Core Modules [ New in Ansible 2.1+ ] Advantages ●  No third-party libraries needed ●  No additional config or client running on the switch ●  Leverages eAPI/CLI(SSH) connection ●  Work directly with running-configuration ●  Easy to use/understand ●  Offline-mode (generate configuration lines)
  • 6. Confidential. Copyright © Arista 2016. All rights reserved. 6 Configuration Management! [ manage EOS configuration with eos_template]
  • 7. Confidential. Copyright © Arista 2016. All rights reserved. Ansible 101 - Identify Templates leaf-bleaf-a vlan  2        name  production   vlan  3        name  app     interface  Ethernet1        description  [BGP]Spine1        no  switchport        ip  address  10.1.1.1/31     interface  Ethernet2        description  [BGP]Spine2        no  switchport        ip  address  10.1.2.1/31   vlan  2        name  production   vlan  3        name  app     interface  Ethernet1        description  [BGP]Spine1        no  switchport        ip  address  10.1.1.3/31     interface  Ethernet2        description  [BGP]Spine2        no  switchport        ip  address  10.1.2.3/31   Vlan template Ethernet Interface Template
  • 8. Confidential. Copyright © Arista 2016. All rights reserved. Ansible 101 – Create a Data Model leaf-a vlan  2        name  production   vlan  3        name  app     interface  Ethernet1        description  [BGP]Spine1        no  switchport        ip  address  10.1.1.1/31     interface  Ethernet2        description  [BGP]Spine2        no  switchport        ip  address  10.1.2.1/31   vlan:      vlanid:  2      name:  production   interface:      name:  Ethernet1      description:  [BGP]Spine1      address:  10.1.1.1/31        
  • 9. Confidential. Copyright © Arista 2016. All rights reserved. Ansible 101 – Create Vlan Jinja Template leaf-a vlan  2        name  production   vlan  3        name  app     interface  Ethernet1        description  [BGP]Spine1        no  switchport        ip  address  10.1.1.1/31     interface  Ethernet2        description  [BGP]Spine2        no  switchport        ip  address  10.1.2.1/31   vlans:    -­‐  vlanid:  2        name:  production    -­‐  vlanid:  3        name:  app     {%  for  vlan  in  vlans  %}   vlan  {{  vlan.vlanid  }}        name  {{  vlan.name  }}   {%  endfor  %}           Jinja Template [ vlans.j2 ]
  • 10. Confidential. Copyright © Arista 2016. All rights reserved. Ansible 101 – Create Eth Jinja Template leaf-a vlan  2        name  production   vlan  3        name  app     interface  Ethernet1        description  [BGP]Spine1        no  switchport        ip  address  10.1.1.1/31     interface  Ethernet2        description  [BGP]Spine2        no  switchport        ip  address  10.1.2.1/31   interfaces:    -­‐  name:  Ethernet1        description:  [BGP]Spine1        address:  10.1.1.1/31    -­‐  name:  Ethernet2        description:  [BGP]Spine2        address:  10.1.2.1/31     {%  for  intf  in  interfaces  %}   interface  {{  intf.name  }}        description  {{  intf.description  }}        no  switchport        ip  address  {{  intf.address  }}   {%  endfor  %}           Jinja Template [ intf.j2 ]
  • 11. Confidential. Copyright © Arista 2016. All rights reserved. host_vars/leaf-b: interfaces:    -­‐  name:  Ethernet1        description:  [BGP]Spine1        address:  10.1.1.2/31    -­‐  name:  Ethernet2        description:  [BGP]Spine2        address:  10.1.2.2/31   - hosts: pod1_leafs tasks: - name: Configure Arista Vlans eos_template: src=vlan.j2 - name: ConfigureArista Eth Interfaces eos_template: src=intf.j2 group_vars/pod1_leaf: vlans: - vlanid: 2 name: production - vlanid: 3 name: app hosts file: [pod1_leafs] leaf-a leaf-b 1. Who runs the play? 4. Gather host vars 5. Run tasks 3. Any group vars? 2. Who’s in that group? (Fork per player) Ansible 101 – Running the playbook host_vars/leaf-a: interfaces:    -­‐  name:  Ethernet1        description:  [BGP]Spine1        address:  10.1.1.1/31    -­‐  name:  Ethernet2        description:  [BGP]Spine2        address:  10.1.2.1/31  
  • 12. Confidential. Copyright © Arista 2016. All rights reserved. Eos_Template: How it Works
  • 13. Confidential. Copyright © Arista 2016. All rights reserved. Conceptually - host_vars - group_vars - sql database - cmdb - git repo - static config - Ansible Tasks - Ansible Roles - Config Blocks - Jinja Templates Data Execution Running Config [frequent changes] [seldom changes]
  • 14. Confidential. Copyright © Arista 2016. All rights reserved. 14 Continuous Compliance! [ verify EOS state with eos_command ]
  • 15. Confidential. Copyright © Arista 2016. All rights reserved. Validating System Details -­‐  name:  Gather  Show  Version  From  EOS      eos_command:          commands:              -­‐  ‘show  version’      register:  showvers     -­‐  name:  Check  EOS  System  Parameters      assert:          that:              -­‐  “’4.16.6M’  ==  showvers['stdout'][0]['version']”              -­‐  “’DCS-­‐7150S-­‐24'  ==  showvers['stdout'][0]['modelName’]”  
  • 16. Confidential. Copyright © Arista 2016. All rights reserved. Validating Ephemeral State -­‐  name:  Gather  MLAG  Status  from  EOS      eos_command:          commands:              -­‐  ‘show  mlag’      register:  showmlag     -­‐  name:  Verify  MLAG  State      assert:          that:              -­‐  "'active'  ==  showmlag['stdout'][0]['state']"              -­‐  "'connected'  ==  showmlag['stdout'][0]['negStatus']"              -­‐  "'up'  ==  showmlag['stdout'][0]['peerLinkStatus']"  
  • 17. Confidential. Copyright © Arista 2016. All rights reserved. 17 Revision Control! [ use Git to manage changes ]
  • 18. Confidential. Copyright © Arista 2016. All rights reserved. Authorize Changes via Pull Requests
  • 19. Confidential. Copyright © Arista 2016. All rights reserved. Synchronize Changes in Tower •  Tower syncs with Git repo •  All playbooks automatically imported •  Single source of truth
  • 20. Confidential. Copyright © Arista 2016. All rights reserved. 20 Ansible Roles! [ reusable, flexible implementation via roles]
  • 21. Confidential. Copyright © Arista 2016. All rights reserved. •  Package similar templates/tasks •  Create flexible and dynamic templates/tasks •  Create reusable code •  Easily distribute and manage template/task changes Use Ansible Roles to:
  • 22. Confidential. Copyright © Arista 2016. All rights reserved. Sample Roles from Arista – Ansible Galaxy [ Ansible Roles that built on top of arista.eos ]
  • 23. Confidential. Copyright © Arista 2016. All rights reserved. Example EOS Role - Varp [ Abstract Virtual Router Configuration ] host_vars/veos-­‐3     virtual_mac_addr:  "00:1c:73:00:00:99"   varp_interfaces:      -­‐  vlanid:  1001          name:  Varp_Vlan1001          interface_addr:  192.168.1.3/24          virtual_addrs:              -­‐  192.168.1.1      -­‐  vlanid:  1002          name:  Varp_Vlan1002          interface_addr:  192.168.2.3/24          virtual_addrs:              -­‐  192.168.2.1       host_vars/veos-­‐4     virtual_mac_addr:  "00:1c:73:00:00:99"   varp_interfaces:      -­‐  vlanid:  1001          name:  Varp_Vlan1001          interface_addr:  192.168.1.4/24          virtual_addrs:              -­‐  192.168.1.1      -­‐  vlanid:  1002          name:  Varp_Vlan1002          interface_addr:  192.168.2.4/24          virtual_addrs:              -­‐  192.168.2.1         #  Playbook   -­‐  hosts:  leafs      roles:          -­‐  arista.eos-­‐virtual-­‐router        #  Run     ansible-­‐playbook  -­‐i  hosts  play.yml         #  hosts  file   [leafs]   veos-­‐3   veos-­‐4      
  • 24. Confidential. Copyright © Arista 2016. All rights reserved. Using Roles - Site Configuration [ Simply include roles ] #  Run     ansible-­‐playbook  -­‐i  hosts  site.yml         #  hosts  file   [spine]   veos-­‐1   veos-­‐2     [leaf]   veos-­‐3   veos-­‐4       #  Playbook  site.yml   -­‐  include:  spine.yaml   -­‐  include:  leaf.yaml   #  Playbook  spine.yml   -­‐  hosts:  spine      gather_facts:  no        roles:          -­‐  arista.eos-­‐system          -­‐  arista.eos-­‐interfaces          -­‐  arista.eos-­‐bridging          -­‐  arista.eos-­‐ipv4          -­‐  arista.eos-­‐route-­‐control          -­‐  arista.eos-­‐bgp   #  Playbook  leaf.yml   -­‐  hosts:  leaf      gather_facts:  no        roles:          -­‐  arista.eos-­‐system          -­‐  arista.eos-­‐interfaces          -­‐  arista.eos-­‐bridging          -­‐  arista.eos-­‐ipv4          -­‐  arista.eos-­‐route-­‐control          -­‐  arista.eos-­‐bgp          -­‐  arista.eos-­‐mlag          -­‐  arista.eos-­‐virtual-­‐router    
  • 25. Confidential. Copyright © Arista 2016. All rights reserved. Sample Demo [ Zero Touch into Tower ] https://youtu.be/VB29kjSOp7E Setup 1.  Spine/leaf in bowtie 2.  All nodes in ZTP mode 3.  Nodes statically + dynamically identified by ZTPServer 4.  Nodes get base config: a.  hostname b.  mgmt ip c.  eAPI enabled 5.  Nodes register themselves with Tower 6.  Run Job Template in Tower to provision nodes.
  • 26. Confidential. Copyright © Arista 2016. All rights reserved. Getting Started Main Ansible Documentation Ask about our Ravello Blueprint Arista + Ansible 2.1 Quickstart YouTube Tutorials Ask for Help - ansible-dev@arista.com
  • 27. Confidential. Copyright © Arista 2016. All rights reserved. 27 Thanks!