2016 FEDERAL FORUM

DevOps Evolution

Presented by Produced by

© 2016 BROCADE COMMUNICATIONS SYSTEMS, INC. INTERNAL USE ONLY DevOps Evolution

• Is DevOps a tooling or a cultural movement? • How does automation play a role? • How do you move beyond automation into continuous delivery? • Where should you get started?

© 2016 BROCADE COMMUNICATIONS SYSTEMS, INC. COMPANY PROPRIETARY INFORMATION 2 What Is DevOps?

SOURCE: HTTP://ROHITGHATOL.GITHUB.IO/ DEVOPS-GETTING-STARTED/#/1

A simple working definition: Infrastructure as code

© 2016 BROCADE COMMUNICATIONS SYSTEMS, INC. COMPANY PROPRIETARY INFORMATION 3 Is DevOps a Tools or Cultural Movement?

DevOps tools are increasingly popular The Phoenix Project is the DevOps bible • Led by open source tools • A business novel modeled after • Most commonly provisioning tools Eliyahu Goldratt’s The Goal

© 2016 BROCADE COMMUNICATIONS SYSTEMS, INC. COMPANY PROPRIETARY INFORMATION 4 Where Do You Start?

Strong Culture + No Tools = Fail

ITIL Culture + DevOps Tools = Fail

…but people change is the long pole

© 2016 BROCADE COMMUNICATIONS SYSTEMS, INC. COMPANY PROPRIETARY INFORMATION 5 Like a Carrier, or Like a Cloud?

When something goes wrong, is your instinct to:

Ctrl-Z: Back out the change Roll forward: Identify the and try again at the next OR problem, and quickly make maintenance window? the next change?

SOURCE INFO GOES HERE © 2016 BROCADE COMMUNICATIONS SYSTEMS, INC. COMPANY PROPRIETARY INFORMATION 6 Correctness vs. Resilience

Designing for Correctness Designing for Resilience

Avoid failure at all costs Failure is a certainty • Focus on qualification and integration • During failure, service should be resilient • Create process gates to catch errors • Simulate failures to test • When a change doesn’t work, regroup • When a change doesn’t work, and use the process roll forward

SOURCE INFO GOES HERE © 2016 BROCADE COMMUNICATIONS SYSTEMS, INC. COMPANY PROPRIETARY INFORMATION 7 What about Automation?

• DevOps often gets lumped in with automation initiatives • DevOps is infrastructure as code • Automation is about executing workflows automatically

Both are important, but they are different. Be clear on what your objectives are.

© 2016 BROCADE COMMUNICATIONS SYSTEMS, INC. COMPANY PROPRIETARY INFORMATION 8 Automation Starts with Workflows

• Most network automation discussions start with the network • You automate the act of doing something – The network is noun not a verb • A workflow is a set of tasks strung together to achieve some objective – Typical examples: provisioning and troubleshooting

© 2016 BROCADE COMMUNICATIONS SYSTEMS, INC. COMPANY PROPRIETARY INFORMATION 9 Which Workflows Should You Start With?

• Deploy a server • Validate • Add an app instance • Deploy a service

Out of Box Troubleshooting Key Tools • Initial provisioning • Collecting diagnostics • Most tools represent an entry point to workflows – Ex: playbooks – Ex: Counters, stats – Ex: Logging tools lead • Planning • Remediation to troubleshooting – Ex: Inventory collection – Ex: Policy application – Ex: Server and app provisioning tools lead to edge policy

© 2016 BROCADE COMMUNICATIONS SYSTEMS, INC. COMPANY PROPRIETARY INFORMATION 10 What Does Automation Require?

Data Distribution Normalization Logic • How do the elements • What language do the • If this, then that talk to each other? elements speak? • Requires rich set of • Not all elements • Even similar constructs triggers (or sensors) communicate can be formatted in different ways • Template-based set • Not all communication of actions is all the time

© 2016 BROCADE COMMUNICATIONS SYSTEMS, INC. COMPANY PROPRIETARY INFORMATION 11 What Can Be Automated?

Rules Workflows

Sensors Audit Actions

Security

Networking

© 2016 BROCADE COMMUNICATIONS SYSTEMS, INC. COMPANY PROPRIETARY INFORMATION 12 Automation Example

Event: “low disk on web301” StackStorm Unknown problem, need a human

Monitoring Resolve known Incident cases, fast. Is it Management /var/log? Clean up!

Wake up, buddy. Something real Web301 is is going on… “low disk” Service Engineer

© 2016 BROCADE COMMUNICATIONS SYSTEMS, INC. COMPANY PROPRIETARY INFORMATION 13 Moving from Automation to DevOps

© 2016 BROCADE COMMUNICATIONS SYSTEMS, INC. COMPANY PROPRIETARY INFORMATION Single System Image

Software Infrastructure

Source Object Executable Code File File File A C if a

B D 10111101 Library 11100001 00000011 01000100 Files 10011101 11111100

A1 B1 C1 D1 = Network1

A1 B2 C1 D1 = Network2

© 2016 BROCADE COMMUNICATIONS SYSTEMS, INC. COMPANY PROPRIETARY INFORMATION 15 Tools Supporting a Single System Image

Modify Code Validate • or • Network and SLA monitoring provisioning • Data collection and analysis Examples: CFEngine, , , Ansible, Salt Examples: Nagios, OpenNMS, Zabbix

Unit Test Compile • Requires a test description language • Configuration rollout and deployment • Automated test harness Examples: Otto, , Maven, Ant • Commercially unsolved for networking

Source Code Management • Configuration versioning • Aligned to management domains Examples: , Mercurial, Perforce

© 2016 BROCADE COMMUNICATIONS SYSTEMS, INC. COMPANY PROPRIETARY INFORMATION 16 DevOps Evolution

• Be clear about whether your company really wants DevOps • Fight the temptation to start with tools—people first! • Automation is about workflows, not infrastructure • Consider using your favorite tools to identify workflows • Build modularly and expand • Involve more than just the networking team

© 2016 BROCADE COMMUNICATIONS SYSTEMS, INC. COMPANY PROPRIETARY INFORMATION 17 Thank you

© 2016 BROCADE COMMUNICATIONS SYSTEMS, INC. COMPANY PROPRIETARY INFORMATION