react-ios-xe-ops icon indicating copy to clipboard operation
react-ios-xe-ops copied to clipboard

Cisco IOS-XE Operations Program. Shows operational data using restconf and yang

.. image:: https://app.travis-ci.com/cober2019/react-ios-xe-ops.svg?branch=main :target: - .. image:: https://img.shields.io/badge/npm-16.14.12-blue :target: - .. image:: https://img.shields.io/badge/Node-stable-blue :target: -

XE-Ops

View operational and config data from devices running Cisco IOS-XE software.

NoteS

The build folder is the latest build. All other files are for developement and are updated frequently. They've not been tested for prod build yet.

Tested Models

|   -ASR 1000 Series
|   -ISR 4000 Series
|   -CSR 1000v
|   -CAT 3000 Series

Available Views:

Interfaces:

|    -Layer Two and Layer Three
|    -Arps
|    -QoS

Neighbors:

|    -DP Neighbors
|    -OSPF Neighbors
|    -BGP Neighbors

Routing:

|    -OSPF
|    -BGP
|    -Routing Table (Flapping Route Checker)

IP SLAs:

|    -Check current IP SLA statuses

Environment:

|    -CPU/Memory statuse
|    -Sensor statuses
|    -SFP statuses
|    -POE port statuses

DMVPN:

|    -Tunnel statuses
|    -Peer statuses
|    -Public IP resolution
|    -DMVPN topology visualization

LayerTwo:

|    -Vlans
|    -Trunks
|    -Spanning-tree

Rest Viewer:

|    -View all device data in JSON format

    

Snapshots:

|

.. image:: https://github.com/cober2019/react-ios-xe-ops/blob/main/images/xeopsprodinterfaces.PNG .. image:: https://github.com/cober2019/react-ios-xe-ops/blob/main/images/xeopsprod-env.PNG .. image:: https://github.com/cober2019/react-ios-xe-ops/blob/main/images/xeoprestprod.PNG .. image:: https://github.com/cober2019/react-ios-xe-ops/blob/main/images/xeopslaprod.PNG .. image:: https://github.com/cober2019/react-ios-xe-ops/blob/main/images/xeopsloading.PNG

Notes: | -Switches are slower to poll than routers | -Some YANG models may not be compatible with your device. If so, data is collected via Netmiko | -Views are conditionally rendered which means so some views wont display. | -Sometimes CPU data for CSRs will error. If so, it will be represented with 'Err' | -Page data will be cached for 5 minutes per device. This means if you switch pages or log into another device, the page will load what was polled last for that device/page. Beats a loading page! | -Login timeout set to 30 seconds | -Collecting RIB tables can take some time. Be patient |

Requirements:

Check to see if your device is compatible to use this program. Use the following instructions - https://developer.cisco.com/docs/ios-xe/#!enabling-restconf-on-ios-xe

Install:Linux

The following dependencies are required. If you don't have the following dependencies installed, execute: "sudo bash install_dependencies.sh" | | -NPM && Node.js https://docs.npmjs.com/downloading-and-installing-node-js-and-npm | -Python: https://docs.python-guide.org/starting/install3/linux/ | -Open SSL

Once Dependecies Are Installed: | | Note: If you're using windows 10, you can use built-in Ubuntu |
| 1. Clone this repo to you server and navigate to the /react-ios-xe-ops (root) directory. | 2. Execute command "sudo bash init_app_routes" which will take care of everything below. When running the script, SSL certs will be created for app to api security. TLSv1.3 for transport. | | If you want to manualy install then continue with these steps: | | 2. Located package.json and execute code "npm install package.json" | 3. Once packages are installed, execute code "node server.js&" | 4. Navigate to 127.0.0.1:3000 | 5. Create a virtual environment by executing "python3.8 -m venv ios-xe-ops-env" and activate the env using "source ios-xe-ops-env/bin/activate" | 6. Install python modules using pip "pip install -r requirements.txt" | 7. Start the API using "Python3 api_routes.py" | 8. Go back to the web app and login to your device