Super-NetOps: What's in It for DevOps?

DZone 's Guide to

Super-NetOps: What's in It for DevOps?

Why should DevOps care about Super-NetOps? Learn about frictionless deployments through network operations practices for supporting DevOps.

· DevOps Zone ·
Free Resource

There's been plenty of media coverage on how network operations (NetOps) is the laggard in achieving end-to-end continuous deployment. Super-NetOps is 100% focussed on remedying this problem. To show there is hope for us, I shall explain how in this short article.

A Cloud Management report produced by SDxCentral back in 2015 stated:

"When asked what they felt was the most immature component in cloud management, the overwhelming response was the network at 76%; compute and storage got 15% and 9% of the vote respectively."

This was also evident in F5's 2015 State of Application Delivery (SOAD) report showing that only 40% of surveyed respondents thought that API-Enabled Infrastructure was Important.

It's not all doom and gloom, however, as, since then, things have been improving. The 2018 SOAD results show that API-Enabled Infrastructure has grown in importance, significantly, to today's 74%. So, NetOps has cut the ssh/telnet umbilical chord but, is that enough?

API-Enabled Infra is Important

Source: State of Application Delivery 2018: NetOps is on board the Automation Train.

While the 'belief' in Infrastructure API's as being important has increased, it's important to measure actual implementation changes related to such belief. Put another way, the majority of us believe that global warming is an issue but we aren't all driving electric cars. So, how many have taken the plunge?

When surveying "Use of Automation to make Major Changes in Production" we saw 25% saying "Always":

Use of Automation in Prod

Source: State of Application Delivery 2018: NetOps is on board the Automation Train.

Automation vs. Orchestration

The next question you may be asking, are network operations teams integrating with developer tool-chains as part of a system orchestration (CI/CD), or are they automating tasks within a NetOps silo?

When surveyed on "Languages and toolsets" NetOps are using Ansible (20%) and Vagrant (5%), as well as frameworks like Puppet (19%) and Chef (16%). However, with roll-your-own Python scripts at 39% of the languages and toolsets, combined with low numbers for automation tooling, it suggests that NetOps automation is happening within a silo.

Why Automation Silos?

The folks looking after network infrastructure have been trained to apply their craft via command-line interfaces and GUI's (device web interfaces, and vendor-specific management tools). The approach to applying configuration is through a series of small tasks: enable interface, configure interface, connect interface to VLAN, etc. Transferring this process to a script is a relatively easy task:

  • Document the steps via the CLI.

  • Identify the API endpoints to achieve the same tasks.

  • Wrap it up in a script that accepts some inputs.

Missing from this are the DevOps processes and methodologies required to integrate with continuous deployment tool-chains. Not present are infrastructure as code practices, "Pave, re-Pave and Nuke" capabilities, and so on. While a great start, automation of tasks is just the first step in the journey.

To correct this problem we bring you, and your NetOps partners, the Super-NetOps training program.

What Is Super-NetOps?

In short, it's network operations practices for supporting DevOps.

In this course, network engineers are taught, not only programmable infrastructure concepts but, how to create and support declarative interfaces that are driven by higher-order service definitions, and many other cool developer concepts, too.

Take a look for yourselves, or just pass this on to your network operations team. But, most importantly, when it comes to DevOps, leave no Ops behind!

programmable infrastructure ,network automation ,continuous deployment ,devops ,operations

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}