Tuesday, April 9, 2019

Need Help Understanding Network Automation Tools And How They Work Together.

So i've been struggling to figure out how all the different network automation tools all work together. I know Python and Linux kind of form the bedrock for everything else, but beyond that I'm unsure. Below is how I have things organized thus far, if anyone could help me understand how they relate to one another so I could make a flow chart / OSI-model-like chart, I think that'll greatly further my understanding. I've been reading through 'Network Programmability and Automation' and 'Python Network Programming', and while there's a ton of information in each about these different tools, there's no chart like the one I'm requesting. I've done web searches pretty thoroughly too, I've found a few charts, but nothing like what I'm asking.

Data Language Model (schema language):

XSD (and XSLT is needed with it?)

YANG (uses pyang)

JSON Schema

Data Modeling (Schema):

YANG Data Model

(CiscoConfParse?)

Encoding (Serialization):

XML

YAML (and PyYAML for readability in Python?)

JSON

CSV

(YANG?)

Protocol:

NETCONF

RESTCONF

HTTP-Based APIs (both RESTful and Non-RESTful)

REST API

Network CLI (with Netmiko)

SNMP (with PySNMP)

Application:

YANG Dev Kit

Programming Language:

Python

Also Powershell/shell and even C++?

Template Language:

Django

Jinja

(Server?) Automation Tools:

Salt

Ansible

Stackstorm

(Network?) Automation Tools:

NAPALM

Nornir

Other things that I'm not sure where they go:

POSTMAN

TextFSM

Pytest

Tox

Travis CI

PyATS

Pypi

Vagrant

Virlutils



No comments:

Post a Comment