Cowboy Scripting & Network Automation

I am an avid listener of networking/nerd podcasts out there – Heavy Networking (Packet Pushers), Network Automation Nerds (now Packet Pushers), Art of Network Engineering, amongst others. I’m also hoping to get to the AutoCon2 event in CO later this year. I consider myself a huge proponent of automation in all facets of IT, but obviously this blog, and my passion, is in the networking realm. Throughout my career, I’ve worked as the lone-wolf IT person for a small 50-person company, to being a part of a service desk at a small hospitality chain, to working on a dedicated infrastructure team for a multi-hundred-unit brand. I have not, however, worked for a large enough company that allowed me to solely focuses on one specific IT component – i.e. routing, firewall, etc. What’s my point? The “proper” way to do automation, either something free like Ansible, or paid like Itential, has never been feasible for me. There was never enough time to research, design, implement, or make a good enough business case for these frameworks.

What’s the quote again, “There’s nothing more permanent than a temporary solution.”? Either way, little scripts that perform a task have been critical to my career. One of the earliest ‘automation’ scripts I recall developing was a PowerShell script which ran through a list of DDNS entries, confirming or denying if a host (Fortinet firewall) replied or not. Maybe this isn’t something you’d consider in the same universe as network automation, but we didn’t have a source of truth at the time, and I just needed a list of reachable devices.

Network automation has seemingly exploded in recent years, and we’re starting to see an increase in both adoption, as well as options and ways to implement – APIs provided by device manufacturers & platforms which are device agnostic. That being said, we should all be chomping at the bit to pick one, or a few, and get moving, right? From my own experience, that’s still a loaded question. You might be part of a smaller org with little resources, namely time, who is forever stuck in a ‘keeping the lights on’ role. On the flip side, you might be part of a large org with too many layers of approvals and lack of buy-in from key stakeholders.

So where does that leave us? Do we feel guilty for not spending outside work time researching this stuff? Do we feel angry that our co-workers and leadership can’t see the bigger picture? Do we feel annoyed, and maybe even depressed, that we can’t bring these amazing tools into our day-to-day work? Do we feel inadequate in our roles because we hear about other teams who are leveraging automation today?

I think the answer is simply, ‘Yes’. It is normal to have a lot of feelings throughout your career, and network automation is just another stop along the journey. My experience has been more on the digital range (so to speak), where roping in JSON data from an API and mutating it before shoving it back out into another API has felt the most like home. Do I have “automation” scripts I share amongst co-workers? Of course! Are they still prone to breaking if I’m not handling all possible errors? Oh, hell yeah! Do I feel bad about it? Sometimes!

At the end of the day, I try to keep my head up, continue listening and learning, and always remember to giddy up! I’ve got a glorious bit of cowboy automation in my neck of the woods, and I’ll be damned if I ain’t proud of it!

Credit: xkcd

Leave a Comment