NETWORK AUTO FRAMEWORKS
When it comes to automatization of network, one could imagine a script which will configure SNMP and IP adresses on the 200 fabric switches at one go.
Or perhaps configure OSPF , BGP, IS-IS areas , AS numbers, whatsoever....
The whole problem is more complicated and in production network using automation tools requires thorough planning and testing.
For that we have so called automation frameworks which are sort of architecture of automation processes and we use various automation tools to accomplish end-end automation process.
Lets describe the basics of automation framework in 5 PHASES
The number of network automation architectures in the world may be on par with the number of networks. The trick is to create an architecture that's independent of any particular product, whether it's commercial or open source.
PHASE 1 provide basic capabilities that perform read-only operations on the network devices. Phase 1 starts with automated, read-only processes that archive configurations, collect troubleshooting data and validate network configurations against templates.
Automation orchestration. The core orchestration engine controls the automation process. It includes scaling features, like parallel processing and distributed agents.
UI. Commercial products usually feature a GUI and an API, which is critical for later phases of automation.
Abstraction layer. The abstraction layer provides a model that hides the differences between device vendors, greatly simplifying the network device interface.
PHASE 2 begin modifying device configurations. Phase 2 adds a network source of truth (NSoT) database and an interface to a trouble-ticketing system.
NSoT database. The NSoT stores information about the desired network state that the automation orchestration system uses to validate -- and, in later stages, correct -- the network's operation. This data may include address assignments, network protocol neighbors, interface operational state and reachability.
Automatic trouble ticketing. An interface to a trouble-ticketing system enables the automation orchestration system to create tickets when the network state and the NSoT differ. Remediation will initially be manual but will become increasingly automated as the organization matures.
Recommended by LinkedIn
PHASE 3 automate complete processes, including tests on virtual instances of the production network prior to final rollout. Phase 3 begins the transition to an infrastructure-as-code operational model.
Source code management repository. A source code repository, typically based on Git, is used to store configuration templates, saved configurations and scripts. It is tightly integrated with the automation orchestration system to build device configurations from stored templates and NSoT data -- for example, generating the configurations for all network equipment for a data center pod.
Workflows. Phase 3 is where the workflows begin transitioning from manual to automated. Workflows may be instantiated through scripts that are stored in the source code repository. Commercial products often provide multiple mechanisms for controlling workflows, including graphical editors and APIs.
Chatbots. Chatbots enable the automation system to communicate workflow and state information to unified communications chat rooms in which network staff collaborate on implementation and troubleshooting. This is a particularly effective mechanism for distributed network teams where members may be working remotely.
Telemetry and monitoring. Historically, network monitoring has relied on Simple Network Management Protocol, but more modern implementations use streaming telemetry.
Monitoring and management databases. The monitored data needs to be stored somewhere, either in a relational database for relationship type data, such as device type and interface list, or in a time-series database for interface performance variables.
Action triggers. Monitoring the network is beneficial only if the results drive responses. Action triggers use either rule sets or machine learning to detect anomalies, issue alerts and open trouble tickets.
More advanced implementations trigger automated workflows to begin remediation without human intervention, such as routing around a failed link:)
Phase 5, the last phase in the architecture, is to automate change testing and validation.
Virtual network testing. A principal driver of network change control is the practice of testing a change in the lab before deploying it into production. The lab uses virtual, software-simulated devices to model the production network's key parameters. Proposed changes instantiate the virtual network, run pre-change tests to validate the lab is functioning as intended, apply the change, and run post-change tests to validate the desired result was achieved.
Change validation testing. If the virtual network testing succeeds, the change can be applied to the production network. The release follows the same three-step process: validation of the pre-change state, application of the change and then post-change validation of the resulting state.
The eventual goal is to build a continuous integration, continuous delivery and continuous deployment process in which small, well-defined network changes are automatically deployed only after passing stringent tests. This practice, known as NetOps or NetDevOps, enables you to migrate your network to infrastructure as code using many of the same concepts and techniques as successful software development methods.
BUILD YOUR AUTOMATIZATION SKILLS as a NETOPS ENGINEER at THELANOFFICIAL LONDON