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: Ansible 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 • Configuration management or • Network and SLA monitoring provisioning • Data collection and analysis Examples: CFEngine, Puppet, Chef, Ansible, Salt Examples: Nagios, OpenNMS, Zabbix
Unit Test Compile • Requires a test description language • Configuration rollout and deployment • Automated test harness Examples: Otto, Jenkins, Maven, Ant • Commercially unsolved for networking
Source Code Management • Configuration versioning • Aligned to management domains Examples: Git, 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