automating mpls backbone creation for CEM services on NCS4200 platform
This projects gives an example of automating configuration of all required mpls backbone settings for cisco NCS4200 platform, to put it upto a point where it is ready for provisioning MPLS/FLEX-LSP tunnels and CEM services.
Cisco Products & Services:
The project has been developed with the combination of
The project is basically a combination of 4 different mpls backbone environments.
All the other configuration task stated at the ANSIBLE portion above remains same.
For each different enviroment, the input parameters ie. ip address, mask, interface name, igp id, loopback id, etc. should be provided from an Excel (.xlsx) file.
Excel templates for 4 enviroments can be downloaded prior to configuring the NCS4200 devices.
On choosing the right environment and uploading the right excel with data, it creates all required hosts inventory file and host variable files (.yml) which are necessary for running the ansbile playbooks.
Then, there are options available to choose specific task (ie. ansible playbook) for configuring NCS4200 devices. The configurations are written in jinja2 template format using NCS4200 IOS-XE CLI syntax. Real configurations (CLI) which are pushed to the NCS4200 devices are created using these templates based on the host variable (.yml) files.
On successful run of all the selected tasks (when and only when the progress status is 100%), there will be an option to export all configurations that were pushed to NCS4200s. This will be a zip file containing seperate .txt files for each configuration playbook and each host (NCS4200) device.
On choosing wrong environment selection that is not compatible with the provided excel file, the project shows error and points out what should be the correct columns of the excel file for that particular option.
N.B.: This is a straightforward standalone WebGUI app for configuring NCS4200 box. It does not keep device configurions in any database.
(Optional: Follow the steps from any of the links below based on your OS to prepare your development enviroment.
- https://developer.cisco.com/learning/lab/containers-dev-win/step/1
- https://developer.cisco.com/learning/lab/containers-dev-mac/step/1
- https://developer.cisco.com/learning/lab/containers-dev-ubuntu/step/1
This project has been tested on mac and ubuntu)
open .env file and give proper values for the enviroment variables below:
This step generates inventory and host variable files (.yml)
Smart people responsible for the creation and maintenance of this project:
This project is licensed to you under the terms of the Cisco Sample
Code License.
Code Exchange Community
Get help, share code, and collaborate with other developers in the Code Exchange community.View Community