Accelerate and unify network deployment with Puppet on Juniper

23
Accelerate and unify network deployment with Puppet on Juniper Puppet Camp Amsterdam April 5 th , 2013

Transcript of Accelerate and unify network deployment with Puppet on Juniper

Page 1: Accelerate and unify network deployment with Puppet on Juniper

Accelerate and unify network deployment with Puppet on

Juniper

Puppet Camp Amsterdam April 5th, 2013

Page 2: Accelerate and unify network deployment with Puppet on Juniper

2 | CONFIDENTIAL & PROPRIETARY

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.

Page 3: Accelerate and unify network deployment with Puppet on Juniper

Accelerate and unify network deployment with Puppet on

Juniper

Puppet Camp Amsterdam April 5th, 2013

Page 4: Accelerate and unify network deployment with Puppet on Juniper

4 | CONFIDENTIAL & PROPRIETARY

Puppet Labs Operations

•  Three senior infrastructure engineers.

•  Two desktop support engineers.

•  Two Jr-ish infrastructure engineers.

•  Both start while I am here in Europe.

Page 5: Accelerate and unify network deployment with Puppet on Juniper

5 | CONFIDENTIAL & PROPRIETARY

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

Page 6: Accelerate and unify network deployment with Puppet on Juniper

6 | CONFIDENTIAL & PROPRIETARY

Our current strategy

•  On premise data center.

•  Everything else

Page 7: Accelerate and unify network deployment with Puppet on Juniper

Puppet Labs infrastructure

Network Automation

Distribution

Private Cloud

Compute

Storage

EMC Nexenta

Hiera

Git

Factor

Puppet

Core

Storage

VoIP

Page 8: Accelerate and unify network deployment with Puppet on Juniper

8 | CONFIDENTIAL & PROPRIETARY

So…we care about networking

•  VPN

•  DNS

•  DHCP

•  Multiple VLANs

•  IPSEC tunnels

•  VMware and future Openstack clusters

Page 9: Accelerate and unify network deployment with Puppet on Juniper

9 | CONFIDENTIAL & PROPRIETARY

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

Page 10: Accelerate and unify network deployment with Puppet on Juniper

10 | CONFIDENTIAL & PROPRIETARY

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.

Page 11: Accelerate and unify network deployment with Puppet on Juniper

11 | CONFIDENTIAL & PROPRIETARY

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.

Page 12: Accelerate and unify network deployment with Puppet on Juniper

12 | CONFIDENTIAL & PROPRIETARY

What is supported via Puppet

•  Physical interfaces

•  Layer 2 virtual interfaces

•  LACP creation and basic management

•  VLAN creation

Page 13: Accelerate and unify network deployment with Puppet on Juniper

Device running Junos OS

(FreeBSD)

Puppet netdev module

NETCONF gem

Ruby Interpreter

NETCOF

Puppet Agent (client)

Puppet Master (server)

netdev

jpuppet package

Different Components

§  Download netdev module on the Puppet Master

§  Install jpuppet Module on the Junos Device

§  Puppet agent will pull config changes from the master

Puppet for JUNOS

Page 14: Accelerate and unify network deployment with Puppet on Juniper

14 | CONFIDENTIAL & PROPRIETARY

JunOS CLI

Page 15: Accelerate and unify network deployment with Puppet on Juniper

15 | CONFIDENTIAL & PROPRIETARY

JunOS CLI

Page 16: Accelerate and unify network deployment with Puppet on Juniper

16 | CONFIDENTIAL & PROPRIETARY

JunOS CLI

Page 17: Accelerate and unify network deployment with Puppet on Juniper

17 | CONFIDENTIAL & PROPRIETARY

JunOS CLI

Page 18: Accelerate and unify network deployment with Puppet on Juniper

18 | CONFIDENTIAL & PROPRIETARY

As Puppet netdev resources

Page 19: Accelerate and unify network deployment with Puppet on Juniper

19 | CONFIDENTIAL & PROPRIETARY

As Puppet netdev resources

Page 20: Accelerate and unify network deployment with Puppet on Juniper

20 | CONFIDENTIAL & PROPRIETARY

What makes this so awesome?

•  …it is the missing link!

Page 21: Accelerate and unify network deployment with Puppet on Juniper

21 | CONFIDENTIAL & PROPRIETARY

vCenter Automation

•  Creating vDS port groups with “vc_vdsportgroup”

Page 22: Accelerate and unify network deployment with Puppet on Juniper

22 | CONFIDENTIAL & PROPRIETARY

vCenter Automation

•  See terminal for example…sorry all the code won't fit here.

Page 23: Accelerate and unify network deployment with Puppet on Juniper

23 | CONFIDENTIAL & PROPRIETARY

Questions?

About anything really!