#AutoCon3 From Clicks to Code: Optical Network Automation Journey at GARR Matteo Colantonio, Optical Network Engineer at GARR, shared their journey to automate the optical network at GARR, an Italian research network. They started by looking at widely adopted tools, including Ansible. It worked to help the team update 92 transponders However, they realized Ansible has scaling limitations when things get complex. In the optical layer, some devices don’t support NETCONF so you have to develop a module. If you have simple procedures, such as pushing config, Ansible is fine. But as you get into complex logic to configure services, not just boxes, you may want to reconsider your life choices. They also tried working with vendor controllers. Provisioning optical circuits can take 40 to 50 clicks across 4 GUIs. The vendor controllers sort of worked. It didn’t replace all the manual clicks. They still had to do manual pre-provisioning work, create cross-connections on some cards, and fix non-meaningful names, and add descriptions. They also don’t have a single optical line system, so the controller API only works with one vendor. The Workflow Orchestrator Framwork They discovered Workflow Orchestrator developed by SURF, a Dutch research network. It’s been open-sourced and lets other organizations adopt the framework. workfloworchestrator.org What do you get out of the box? -It’s a framework, not a turnkey solution, but it lets you define your network services or entities, or domain models for your organization -It lets you track instances -It defines clear procedures, or workflows Everything is stored and tracked in a database for object and relational mapping You start by defining building blocks, such an optical fiber. There’s a fiber name, terminiations, OSS ID, etc. You turn these blocks into Products to manage the lifecycle of a Block. Workflows make things happen. It uses Python functions, so you can do whatever you want. It can handle very complex logic. They went from 50 clicks and 15 to 20 minutes to an automated workflow that takes 50 seconds. Was it Easy? No. It’s harder than getting started with Ansible, but it was worth it. From this project they got: -Central service definitions -Consistent execution of service management -They have a consistent architecture -If new hardware comes in, they can modify clients without having to modify workflows Key Take-Aways: 1. If you want to develop a scalable, maintainable solution, the best option is to go with abstract and composable models, and to go with stateful instances of these models. 2. If you want your network to be programmable, use the devices’ programmable interfaces and YANG models, not just CLI 3. Make sure your transformation is sustainable. Automate one service at a time to nudge people out of their comfort zones
Network Automation Tools
Explore top LinkedIn content from expert professionals.
Summary
Network automation tools are software platforms and frameworks that help automate the setup, management, and monitoring of computer networks, reducing manual tasks and making complex operations faster and more reliable. These tools range from simple workflow builders to advanced systems that use programming and APIs to control network devices.
- Try code-free workflows: Explore user-friendly automation platforms like n8n to handle Wi-Fi deployments and everyday network tasks without needing to write code.
- Build reusable maps: Use frameworks such as pyATS with testbed files to organize device information and streamline network testing or configuration across multiple systems.
- Grow your skills: Start learning basic programming and network automation concepts to gradually move from manual management to more automated, scalable network operations.
-
-
Have you heard of n8n? It can help you to automate Wi-Fi tasks without having to code. Wi-Fi and automation don’t always go hand in hand even if I think they should. As networks grow and APIs become the norm, automation tools like n8n can save time, reduce errors, and scale your work. n8n is a powerful, open-source workflow platform(think Zapier, but with real flexibility). It lets you build multi-step automations that connect to almost any system (including your favorite Wi-Fi platforms that have APIs). Real-world example: Mist Wi-Fi Deployment 👇 Need to roll out numerous Mist APs across multiple sites? Here is how you can use n8n to automate the process: 1 - Trigger: The Wi-Fi Engineer sends a message on a dedicated slack channel to deploy a site 2 - n8n pulls Wi-Fi design file from a specific shared folder 3 - n8n pulls AP MAC addresses from a shared inventory table 4 - n8n creates the proper files to be uploaded to Mist to import informations such as floor plans, AP locations and AP MACs addresses 5 - n8n sends a slack message to a specific channel to ask for which templates to use for the site 6 - Once someone answers, the site is deployed and configured via Mist API by n8n 7 - Finally, n8n sends out a notification on slack to update the status of the site deployment Results: ✅ APs are provisioned in minutes, not hours ✅ No missed configs or manual errors ✅ Everyone stays in the loop automatically And this is just one use case. You could also automate: - Daily Wi-Fi health reports - Guest access credential flows - Auto-responses to alerts (via webhooks) - Bulk SSID changes across multiple sites Sky is the limit! The best part? You can build most of this without writing code. Wi-Fi pros: if you're not exploring automation yet, now’s a great time to start. Curious, what task would you automate first if you could? If you need help working on a workflow for yourself, DM me 👋!
-
Today was about pyATS, which stands for Python Automated Test System. It’s a framework that Cisco created to help automate testing for networks. At first, I thought it was only for software developers, but it turns out it’s really useful for network engineers too. Instead of logging into devices one by one and running commands manually, pyATS lets you run scripts that do the work for you. This makes it easier to check device configurations, verify connectivity, and even test changes before putting them in production. One of the key parts of pyATS is something called a testbed. The testbed is basically a YAML file that describes your network devices. In that file, you write down the details like the hostname, IP address, username, password, and even what type of device it is (like a router or switch). Once you have the testbed, pyATS knows how to connect to your devices and run automated tests on them. I realized that the testbed acts kind of like a map of your network that pyATS can understand. What I found interesting is that you can reuse the same testbed for multiple tests, which saves time and avoids mistakes. Instead of hardcoding device details into every script, you just point your script to the testbed file. This makes automation much more organized and flexible. Overall, learning about pyATS today showed me that it’s a powerful tool to make network tasks easier, more consistent, and less error-prone. It feels like a step toward working smarter instead of harder. Still got a way to go with pyATS #CISCO #AUTOMATION #PYATS
-
Traditional network engineers can start transitioning to Network Automation Engineers by following these steps: 1. Learn Python for Networking • Master basic Python (variables, loops, functions, file handling). • Explore network automation libraries (Netmiko, Paramiko, NAPALM). • Automate simple tasks (e.g., SSH into devices, parse configs). 2. Understand APIs & Programmability • Learn REST APIs (JSON, HTTP methods). • Work with Cisco DevNet Sandboxes and Postman. • Use NETCONF, YANG, and gNMI for modern network programmability. 3. Get Hands-on with Automation Tools • Ansible – Automate configuration management. • Terraform – Manage cloud networking infrastructure. • Git & CI/CD – Version control and deployment pipelines. 4. Learn SDN & Cloud Networking • Study Cisco ACI, VMware NSX, and OpenFlow for SDN. • Explore AWS, Azure, and GCP networking services. 5. Get Certified • Cisco DevNet Associate – Best for network programmability. • Python for Networking (e.g., Network Chuck, Kirk Byers courses). • HashiCorp Terraform Associate (for cloud automation). 6. Start Small, Then Scale • Automate basic tasks like backups and config changes. • Gradually integrate automation into daily operations. • Join automation communities (Cisco DevNet, Network to Code).