Category: Automation
Interview: Benefits of Network Automation (Part 2)
As promised, here’s the second part of my Benefits of Network Automation interview with Christoph Jaggi published in German on Inside-IT last Friday (part 1 is here).
What are some of the challenges?
The biggest challenge everyone faces when starting the network automation is the snowflake nature of most enterprise networks and the million one-off exceptions we had to make in the past to cope with badly-designed applications or unrealistic user requirements. Remember: you cannot automate what you cannot describe in enough details.
Interview: Benefits of Network Automation (Part 1)
I had a great chat about the benefits of network automation with Christoph Jaggi a while ago, resulting in 2-part interview published by Inside-IT. As you might prefer to read the English original instead of using Google Translate, here it is (or you could practice your language skills and read the German version).
Reality Check: Self-Driving Networks
I stumbled upon an article with an interesting title (and worth reading): To Make Self-Driving Cars Safe, We Also Need Better Roads and Infrastructure… and thought about the claims along the lines of “if they managed to solve the self-driving cars challenge, it’s realistic to expect self-driving networks” made in Self-Driving Networks podcast episode. Turns out the self-driving cars problem is far far away from being solved.
GitOps in Networking
This blog post was initially sent to the subscribers of my SDN and Network Automation mailing list. Subscribe here.
Tom Limoncelli published a must-read article in ACM Queue describing GitOps – the idea of using Pull Requests together with CI/CD pipeline to give your users the ability to request changes to infrastructure configuration.
Using GitOps in networking is nothing new – Leslie Carr talked about this concept almost three years ago @ RIPE 71, and I described some of the workflows you could use in Network Automation 101 webinar.
Review: Ansible for Networking Engineers
An engineer attending Ansible for Networking Engineers online course sent me this feedback:
This is a great place to learn Ansible and Network Automation from scratch. Starting with an emphasis on the fundamentals (YAML, JSON, Jinja2, how to group your network devices for automation, etc.) you progressively build up towards useful network automation.
He particularly liked the additional features that are part of any ipSpace.net online course:
Network Infrastructure as Code in Network Automation Online Course
In mid-May, I ran an onsite network automation workshop, and the manager organizing the workshop for his team invited me to a dinner with his peers. Not surprisingly, they wanted to hear about the topics covered in the workshop, and as soon as I mentioned Network-Infrastructure-as-Code several of them said “yes, that definitely needs to be covered.”
What Is Intent-Based Networking?
Whenever someone mentions intent-based networking I try to figure out what exactly they’re talking about. Not surprisingly, I get a different answer every single time. Confused by all that, I tried to find a good definition, but all I could find was vendor marketing along the lines of “Intent-based networking captures and translates business intent so that it can be applied across the network,” or industry press articles regurgitating vendor white papers.
From the Trenches: Rampant MacGyver-ism
Here’s a response I got from Simon Milhomme on my Why Is Network Automation So Hard article:
ONIE and the Hammer of Thor
Someone left a comment on my Zero-Touch Provisioning post claiming how Big Switch Networks solved ZTP challenge using just IPv6 Link-Local Address and Neighbor Discovery instead of the complicated DHCP/TFTP/whatever sequence.
Here’s what he wrote:
Why is Network Automation So Hard?
This blog post was initially sent to the subscribers of my SDN and Network Automation mailing list. Subscribe here.
Every now and then someone asks me “Why are we making so little progress on network automation? Why does it seem so hard?”
There are some obvious reasons:
- Tightly-coupled components and humongous blast radius;
- Lack of good tools and programming interfaces;
- Lack of transactional consistency (in some cases even simple commits);
However, there’s a bigger elephant in the room: every network is a unique snowflake.