Configuration Management
Configuration management is a process that helps us enforce the desired configuration state on an IT system. It’s a way to make sure a network device, in our context, performs as expected as we roll out new settings. As this becomes a mundane task we perform repeatedly, it’s no surprise network configuration management is the most common network automation use case according to the NetDevOps 2020 Survey (Further reading).
In the previous chapter, we discussed common configuration management tasks, along with some helpful tools and libraries that can help you write programs to automate those tasks in Go. In this chapter, we will focus on a few concrete examples, taking a closer look at how Go can help us connect and interact with network devices from different networking vendors using standard protocols. We will cover four areas in this chapter:
- Before we introduce any new examples, we will define a three-node multi-vendor virtual network...