Code Monkey home page Code Monkey logo

aci_ops's Introduction

ACI Ops

published

Tools to enhance CLI experience replacing slower ACI show commands with additional information.

WARNING: Sandbox (sandboxapicdc.cisco.com) for APIC doesn't fully work with ACI Ops, this is due to the fact that the APICs and Fabric are virtual and don't have all the API object returns relating to real equipment.

Tested in 4.0(3d), 4.1(2m), 4.2(1j), 4.2(3l) APIC This program fully supports Python2 and will be updated to Python3 when ACI's internal platform migrates from Python2.

The entire program uses Python2 Standard Library!
No 3rd party modules to import and update!
Program can run on Windows, Mac, and Linux. Can be ran on local computer or on APIC itself. If on the APIC you can store the program in your home directory.

New Features!

1.) Picture showing interfaces like available in GUI with colors reflecting interface status, role, errors 2.) Show recent ports down 3.) Show all endpoints on interface 4.) Auto create span to server session 5.) Option to select EGPs to remove from interfaces 6.) Option to tag or untag EPGs added to interfaces 7.) Show all static routes 8.) Endpoint Search display physical location if endpoint resides on VPC/PC 9.) Clone access, trunk, or VPC/PC to new interfaces ::Admin state, EPGs (selection possible), Same Leaf selector 10.) Deploy Access, Trunk, or VPC/PC (EPGs, physical, AEP) in single flow 11.) Interface Description and EPG update ::CSV 12.) Show BD > EPG relationships 13.) Troubleshooting tools

Features in Development!

1.) Display every contract between EPGs (vrf contracts, Taboo, and Normal EPGs) and filters in detail; in both directions

Limitations:

Python2 Single Pod-1 deployment Only 1u Leafs supported Some features like log pull may not be limited to single pod or 1u leaf.

Setup

No requriments besides python 2.7 and ssh ACI_Ops can be run on APIC or on local computer Recommend location on APIC for ACI_Ops: home folder for user Local computer needs to have "ssh" in cmd or bash to use tools module in ACI_Ops If running lower than 2.7 ipaddress library will be needed

[OPTIONAL] If you want to run ACI_Ops in a virtualenv for python2.

(linux) sudo pip install virtualenv (windows/admin) pip install virtualenv

python -m virtualenv . or python -m virtualenv <path/to/virtual/location>

If python2 and python3 on same machine you may need to specify: python2 -m virtualenv . cd Scripts
(linux) source activate (windows) activate

Installation

git clone https://github.com/settlej/ACI_Ops.git
cd ACI_Ops
python or python2 main_menu.py

If you want to run on APIC copy all files to the user home directory, via SCP/SFTP. Then run: python main_menu.py

Enviroment Variables

If using running ACI_Ops on local computer, for quick login use these three variables: 1.) apic 2.) user 3.) password apic = [ip/hostname]

Screen Shots:

Image of Main Menu

Important Fault Summary

Image of fault_summary

Show vlans per interface

Image of vlans
Image of vlan2

Add EPGs to Multiple Interfaces

Image of add epgs

Remove EPGs from Multiple Interfaces

Image of remove_epgs

Better 'show interface status'

Image of showinterfaces

Find Endpoints with Additional Information

Image of ip search

Find Endpoints even when Powered Off

Image of poweroff

Gather all logs in timeframe

Image of time
Original Auther: Settlej

aci_ops's People

Contributors

settlej avatar aawarner avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.