Chapter 2 Why Automate the Network?
For diagrams, tables, or exact code formatting, .
Source of truth means browsing for data models or templates that create the configuration or the compiled output showing the exact device configuration, without ever needing to connect to the device CLI. Other artifacts such as the routing tables or firewall rule lists can also be stored in the source of truth as output from dynamic playbooks. Having this is not something every network can produce; however, it is indispensable when designing new features, planning future changes, dealing with network failures or troubleshooting problems.
Change Management
Network automation can help simplify the change management process as it is a natural part of a pull request. The master branch can be locked, and only approved changes allowed to be merged through a pull request. An approver has all the necessary artifacts to approve, deny, or conditionally reject a pull request asking the developer for more details. Documentation is automatically generated and the changes to either the data model or dynamic template of a device is obvious and highlighted in TFS for the approvers benefit.
Sample Processes:
New requirement / change / feature / correction / refactoring. Added to work board in TFS. Work assigned. New working branch created. Engineer performs git pull downloading the updates to the central repository. Engineer changes to new branch in local VS Code (git checkout). Development work:
o Add / change / delete code. o Testing – check mode. o Documentation generated. Engineer performs commits often, ideally for small related changes. Engineer performs a git push uploading the changes to the central repository. Engineer submits a pull request in TFS. Pull request triggers approval workflow. Approvers / reviewers notified. Pull request approved or denied. Approved request merged into master branch. Automated build triggered. Documentation updated. Automated test triggered. Automated release scheduled. Change delivered to environment through Ansible. Alternatively, if full CI/CD automation is not yet established, operators execute approved Ansible playbooks manually. Problem Resolution
Being able to quickly identify, troubleshoot, and resolve network problems becomes an easier process with the addition of these new tools. CLI skills are still required but think of automation as an augmentation and extension of the network team’s skills, providing results at scale in near real-time. The
