Scaling Network Automation: Scripts vs. Integrated Workflows
We’ve finally reached a point in our industry where we can all agree on the importance of network automation. Network infrastructure is growing more complex, with layers of networks across many different domains and platforms for everything from configuration management to AI ops from a variety of vendors.
However, what we aren’t quite aligned on is how networking teams get started with network automation. There isn’t a one-size-fits-all option, as every organization has different networks with different goals. Broadly speaking, there are two paths teams can take to pursue automation today: open source tooling or a network automation solution from a vendor like Itential. Let’s take a look at both to see which is right for your team.
Path #1: Writing Network Automation Scripts
Writing scripts to automate network activities is the first approach many will take to a network automation strategy. A network engineer or an entire team, probably swamped with change requests and/or tickets, will look to leverage a common programming language to get started. This approach usually enables engineers to automate many of their day-to-day tasks like software upgrades and port turn-ups, freeing up some time and effort to get back to managing the network.
Steps along the script automation path:
- Finding a programming language that suits your needs and learning to code something basic (Hello World!).
- Researching how to interface with network devices and systems.
- Using that solution to implement a connection with a network device in code.
- Building basic code to automate one simple task, such as reading network state.
- Adding code to your automation to extract and format data as required.
- Adding code to handle errors and exceptions.
If you’re starting with little to no coding experience, like most network engineers, the first step alone could take months or even years. You have to make sure the language you choose is well-suited to networking needs, and then invest the time and effort into learning it from square one. And then, once you have those basics down, you’re still left with the bulk of the undertaking ahead of you. Networks are also inherently riskier than most other environments – push the wrong change or mess up your code and you risk causing issues that impact critical, always-on infrastructure. This can mean even longer before you see the potential value of automation, as the confidence and experience necessary to feel comfortable running your automations will take time to build.
One way teams try to get around this challenge is by leveraging an open source tool like Ansible, which helps save time in the learning process when compared to a programming language. But, like coding, using a tool like Ansible creates a complex environment that ultimately has some key limitations – teams may end up needing to write code or do things manually anyway for things like integrations between systems and adding pre-checks and post-checks. With either choice, you’re left with a difficult tool to use that still falls short in key areas.
So, while there’s a lot you can do with scripts, the high barriers to entry and delayed time to value can limit your automation potential. Engineers and teams who want to get the most out of automation and start with scripts will often explore alternatives – and may even give up before they really get started.
Path #2: Building Network Automations with Itential
Script automation’s potential is extremely difficult to reach unless a) you’re already a top-tier coder or b) you have access to a lot of manpower. Plus, your scripts will be difficult to reuse, and automation for surrounding processes like pre-checks, post-checks, and updating ITSM ticketing systems is very difficult to build and maintain with code.
Itential addresses all those and more. Our Pre-Built Library and the drag-and-drop canvas where you build your automation workflows takes on a lot of the setup work, and the ability to manipulate data however you require makes it easy to combine automations together, orchestrating the process across different IT systems without manual steps in between. Those capabilities enable automation to exist at all points end-to-end along a network change process, including steps like ITSM ticket updates and pre- and post-checks. Automation is easier to pick up, more scalable, and faster to deliver value.
Steps along the Itential automation path:
- Downloading an existing adapter from the Itential Pre-Built Library and configure it for your network needs (or generate one on your own).
- Creating an automation workflow and selecting the appropriate adapter tasks.
- Adding and configuring a task to your automation that performs a basic network command, such as reading network state.
- Building comprehensive pre-checks and post-checks using Itential command templates.
- Adding data transformation steps and adding logic tasks to handle errors and exceptions.
An Itential-powered approach comes with a few key changes that make your life a lot easier. Forget taking months to learn to code – depending on your background, the average time to get from the first step to the last ranges from days to weeks. Using our low-code workflows is easier to learn than writing code, and the research is simpler too, with documentation readily available for all Pre-Built Automation assets. Then you have capabilities like data transformation between automation workflow steps, automatic management of the network device connection process, and visual logic paths for error and exception handling that all contribute to making automation more useful – applicable to more use cases, orchestratable across domains, and built for scale. The Itential approach saves time, helps you see returns right away, and makes automation accessible for people without a coding background.
Yes, you might say. That’s all well and good. But what about those of us who are comfortable with high-code environments? Those who want to ensure they have the ability to build code-based automation assets?
This is where I have to come clean, because I haven’t been entirely honest. I’ve described Path #2 as the Itential path, but in reality, Itential supports all the best parts of Path #1 too. Our solution is designed to enable users with different focuses to all contribute to network automation.
Path #2.5: Have it Both Ways (also) with Itential
There’s no need to have parallel paths to network automation, to split it into high-code vs. low-code camps. The approaches can be merged so everyone walks together along the automation journey, in the same direction and toward the same goal. Some engineers and practitioners will gravitate toward building network automation in code, while others will want to focus on network engineering and use low-code, visual methods to build out automations.
Itential takes in code-based automation assets and allows them to exist on the low-code workflow canvas. This means teams can coexist – one person can write a script, then use Itential to associate it with a JSON schema for easy exposure for other users to add it to their own automations. This JSON schema decoration even allows for guardrails like input validation. The code expert will publish their automation, and the network experts will be able to incorporate it with all the different orchestrated workflows they build in Itential. Plus, elements of end-to-end automation like automating ticket closure or pre- and post-checks can be added by the network team using Itential Pre-Builts, which augments and enhances a script-based automation while enabling the coder to focus on writing code and creating the best automation possible. This synergistic approach makes everyone’s contribution to network automation more effective and helps teams evolve in terms of automation maturity.
This is why Itential supports both a low-code and a high-code approach to network automation. We aren’t interested in prescribing to you how you should approach managing your network – instead, we designed our platform to integrate with everything and meet you where you are, giving you the ability to use features and capabilities however works best for you and your team.
Still seems too good to be true? Take an interactive tour of the Itential Automation Platform to see it for yourself.
Tags: JSON , Low-Code Automation , NetOps , Network Automation