Accelerate and unify network deployment with Puppet on Juniper
1. Accelerate and unify network
deployment with Puppet on
Juniper
Puppet Camp Amsterdam
April 5th, 2013
2. Who am I?
• Cody Herriges
• Operations Engineer
• Joined Puppet Labs in 2010
• Been using Puppet for 5.5 years
• Currently responsible for internal Virtualization
and Storage architectures.
2 | CONFIDENTIAL & PROPRIETARY
3. Accelerate and unify network
deployment with Puppet on
Juniper
Puppet Camp Amsterdam
April 5th, 2013
4. Puppet Labs Operations
• Three senior infrastructure engineers.
• Two desktop support engineers.
• Two Jr-ish infrastructure engineers.
• Both start while I am here in Europe.
4 | CONFIDENTIAL & PROPRIETARY
5. Our current strategy
• In the cloud?
• IaaS
• Our production web applications; forge,
redmine, ask, puppetlabs.com.
• Package repositories; debian, el, and beyond.
• SaaS
• Trello
• Github
5 | CONFIDENTIAL & PROPRIETARY
6. Our current strategy
• On premise data center.
• Everything else
6 | CONFIDENTIAL & PROPRIETARY
7. Puppet Labs infrastructure
Network Automation Private Cloud
Compute
Distribution
Git
Core
Hiera
Factor Storage
Storage
Puppet
VoIP
EMC Nexenta
8. So…we care about networking
• VPN
• DNS
• DHCP
• Multiple VLANs
• IPSEC tunnels
• VMware and future Openstack clusters
8 | CONFIDENTIAL & PROPRIETARY
9. Cloud agility
• We have to build it.
• Need it beyond the hypervisor.
• We all need to be able to push changes.
• Always on a path to better self service
9 | CONFIDENTIAL & PROPRIETARY
10. Blurring the traditional silos
• Developers deploy their own infrastructure.
• Sysadmins write their own software.
• We're all at the mercy of networking…
• A lot of work has gone into working around
network control.
10 | CONFIDENTIAL & PROPRIETARY
11. What is JunOS?
• Built on a custom BSD core.
• Feels more like an appliance software.
• Very welcoming to sysadmins.
• You can dive all the way down to the UNIX cli…it
is a bad idea.
11 | CONFIDENTIAL & PROPRIETARY
12. What is supported via Puppet
• Physical interfaces
• Layer 2 virtual interfaces
• LACP creation and basic management
• VLAN creation
12 | CONFIDENTIAL & PROPRIETARY
13. Puppet for JUNOS
Different Components Device running Junos OS
§ Download netdev module netdev Puppet netdev module
on the Puppet Master Puppet Master
(server)
§ Install jpuppet Module on
the Junos Device
Puppet Agent
§ Puppet agent will pull config (client) NETCONF gem
changes from the master jpuppet
package Ruby Interpreter
NETCOF
(FreeBSD)