Upload
puppet
View
999
Download
0
Embed Size (px)
Citation preview
v
Automating Networking! Do I Have to Start at Ground Zero?
Gerard Chami - Technical Support Engineer
Me!
2
Gerard ChamiTechnical Support Engineer
Twitter: @gerardchamigithub: https://github.com/gchami
What is Cumulus Linux?
3
BIOS and PXEIndustry Standard Server
SERVER OS
NETWORK OSBoot Loader and Industry Standard Switch
cumulusnetworks.com
User
Spa
ceArchitecture– Cumulus Linux Operating System as a Platform
4
SwitchDriver
switchd
CPU, RAM, Flash, etc.
Routing Tables
ARPTable
BridgeTable
Ethernet Interfaces
Lin
ux K
erne
l
Automation Monitoring
Third Party/Customer Applications
Network OrchestrationRouting
SuiteBridging VXLAN
Switch SiliconFront Panel Ports
cumulusnetworks.com
But Why should we care?
Your choice of a network OS!Provides Hardware ChoiceBuild and Automate on a Linux OSOh and its just Linux!
Treat my switch as a server!
Cumulus Networks
▪ Infrastructure as code
▪ Enforcement from central location
▪ Easy change control
Configuration ManagementHot Swap the Whole Switch▪ With automation the
whole switch can be replaced and provisioned
▪ High capacity, fine-grained failure domain
▪ Weeks and months now take seconds
▪ Pods of equipment can be stamped out in multiple locations
Rapid Provisioning
6
NetDevOps: The 90’s called, they want their frosted tips back!
OBM OBM OBM
cumulusnetworks.com
The Obvious (or is it?)
Git!….Check out our Github for examples!https://github.com/CumulusNetworks
Cumulus Workbench - See this in action! Puppet Forge - Cumulus Linux Modules +
Debian modulesCumulus VX - Play, Test, Develop and deploy
on the free virtual machinesNetDevOps - We will get there!
cumulusnetworks.com
Bringing it all together!
Task 1: Installing and booting a Network OSTask 2: Installing Puppet Agent
cumulusnetworks.com
ONIE – Open Network Install Environment
Modern, efficient installerNetwork OS installer
• Discovery, transfer, and execution• Implemented through Linux kernel with BusyBox
(OpenWRT-like)
Industry supportEnables open network hardware ecosystemOpen sourceWell-documented
• http://www.onie.org/
10
cumulusnetworks.com
Zero Touch Provisioning
Automation option at first Cumulus Linux bootRequest DHCP lease on management networkIf option 239 and URL in response, then:
• Request contents of script at URL• Parse script for CUMULUS-AUTOPROVISIONING• Execute script locally on switch as root (unless previously
successfully run)
Supported languagesBashPerlPythonRuby
11
If eth0 is set to DHCP, Zero Touch Provisioning can be triggered (unless previously successful run) when:
• Switch boots up• eth0 is brought down and up
cumulusnetworks.com
ONIE and ZTP Interaction
12
DHCP Request with ONIE Option
DHCP Address with URL for OS Image
DHCP Request with ZTP Option
DHCP Address with ZTP script URL
Pull Puppet Scripts
OS Booted
Baseline Configuration Applied
Device Specific Configuration Applied
cumulusnetworks.com
Bringing it all together!
Task 1 => Installing and booting a Network OSTask 2 => Installing Puppet AgentTask 3 => Now What????
Our desired state - Without touching the switch!
15
Install the OS
ZTP Provisioning
Install Puppet agent
Configure MOTD
Configure PTM
Configure interfaces
Configure SVI
Deploy OSPF
Deploy Bridges
Modules can be your friends
cumuluslinux/cumulus_interfacescumuluslinux/cumulus_interface_policy
cumuluslinux/cumulus_licensecumuluslinux/cumulus_ports
16
18
Install the OS
ZTP Provisioning
Install Puppet agent
Configure MOTD
Configure PTM
Configure interfaces
Configure SVI
Deploy OSPF
Deploy Bridges
Our desired state - Without touching the switch!
© 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.
Thank You!
21