Working With Static Inventories

The most important part of any network automation solution is a reliable inventory. In large and complex network environments, a central DCIM like Netbox or Nautobot with dynamically generated inventories seems to be the gold standard.

But many of us start their automation journey with simple text files, following the idea of infrastructure as code. However, even this approach is suitable as a comprehensive device asset management and can even replace existing tooling. Here is the why and how.

Continue reading “Working With Static Inventories”

DevNet Associate – Travel Report

DevAsc has been a dream of mine since the beginning, but I never really found the time during this crazy year. When Cisco extended the deadline for the DevNetClassof2020 though, I took that as a sign and started my journey at short notice towards the end of 2020. Now you can learn what I think about the exam and the way I prepared.

Continue reading “DevNet Associate – Travel Report”

Network InfrastructureAsCode with Ansible & Git – Part 3

So far this little InfraAsCode series was all about declarative Ansible playbooks and Git version control. In this last post we go full circle and discover how CI/CD pipelines helps with automation workflows, taking full advantage of good software development practices.

Continue reading “Network InfrastructureAsCode with Ansible & Git – Part 3”

Network Infrastructure As Code With Ansible & Git – Part 2

In part one we learned how to use Ansible and a data model to represent infrastructure as code. Now it’s time to introduce Git as the central network automation tool to use the advantages that result from working with text files.

I cannot emphasize enough how important this step is to long-term success with an automation initiative. Unversioned files with funny names in a random directory are not the solution.

Continue reading “Network Infrastructure As Code With Ansible & Git – Part 2”

Network Infrastructure As Code With Ansible – Part 1

Infrastructure as code is all the rage, but sounds hypercomplex. How should it be possible to represent a router or even a whole network as code? We definitely need deep software development skills and an extensive version control plus CI/CD pipeline, right? Well, no! Actually, it’s pretty darn simple and by the end of this blog post you might wonder what took you so long to get started.

Continue reading “Network Infrastructure As Code With Ansible – Part 1”

Fix Your Interface Description with Ansible and CDP/LLDP

This topic came up via Twitter recently and I heard this use case before but wasn’t aware how easy it could be solved with Ansible, until I started thinking about it. The little playbook in this blogpost fetches all discovered neighbors per device and sets the interface description according to the remote host and port. It supports the two platforms Cisco IOS XE and NX-OS to demonstrate the path to a multivendor solution for the common brownfield networks out there.

Continue reading “Fix Your Interface Description with Ansible and CDP/LLDP”

Monitor Cisco NX-OS/ACI via SNMP and the TIG-Stack

I know, even Cisco NX-OS has a REST-API and Streaming Telemetry these days.
But you, or established processes in your organisation, might find it helpful to handle all switch ‘Telemetry’ in the same way using good old per device SNMP polling. A quick poll* on the Twitters seems to validate that ~80% of production network metrics are still SNMP anyway.

*See what I did there?

Continue reading “Monitor Cisco NX-OS/ACI via SNMP and the TIG-Stack”

Automate your NOC World Map at scale

Managing hundreds of devices with your monitoring system might be a tedious task, especially when using GUI based device onboarding. But why not let your config management tool of choice take care of it? This blog post is about a declarative Ansible playbook to generate Telegraf configuration files leveraging the inputs.ping plugin and populate a Grafana World Map.

Continue reading “Automate your NOC World Map at scale”