It’s confusing! Where do I start with network automation? Which tools should I learn? Hank Preston opens the Network Automation Tool Chest and tells us which tools we should learn. We have a roadmap of tools to learn, how to start learning and how to deploy in the real world.
Which tools are best to start with? python or ansible or netmiko or pyats or paramiko? We discuss lots of options in this video.
#Python #Ansible #Genie
Links:
DevNet home page: http://bit.ly/2MHbgOk
Network programmability Basics Video Series: http://bit.ly/2GGzg2T
Laptop Setup Labs: http://bit.ly/2GGzh6X
Coding Fundamentals Learning Labs: http://bit.ly/2ZK8yiP
Ansible Learning Labs: http://bit.ly/2ZEdqFY
Menu:
0:38 – What Network Automation Tools
02:56 – The NetDevOps Engineer’s Tool Chest
06:42 – Network Service and Configuration Management tools
10:36 – Where to start – Netmiko
12:55 – Genie CLI
15:00 – Ansible
20:20 – Domain Specific Language
22:14 – Python vs Ansible
24:08 – Napalm + Nornir
27:15 – Issues with Napalm and Netmiko
28:19 – Real World Use Cases of network automation tools
30:02 – pyATS & Paramiko
33:49 – pyATS & Genie
41:04 – DIFF
42:54 – How to schedule Network Automation
45:06 – Do Network Engineers need to learn Linux? Bash?
49:07 – Is Ansible Linux based?
50:15 – Other core skills needed today for Network Engineers
52:22 – Other Resources to help you
58:32 – Orchestration/Integration tools
59:33 – What is CICD?
1:04:00 – Do I need to learn Jenkins?
1:07:40 – The future of things going?
1:09:22 – Is there a presentation that goes over all of these tools?
01:10:10 – What should I begin with as a beginner?
Getting Started
0. Foundation “Stuff”
Python
Linux/bash fundamentals
git
REST APIs
1. CLI Based Interactions
Python + Netmiko – Configuration Based use cases
Genie CLI – Operation based use cases
Parmiko – NOT RECOMMENDED – just use Netmiko
2. Network Automation Frameworks/Abstractions
Ansible “Domain Specific Language (DSL)” – Configuration Use Cases
NAPALM + Python – Configuration Use Cases
Nornir + Python – Configuration Use Cases
3. Network Verification
pyATS/Genie + Python – Operational / Testing Use Cases
For every BGP neighbor, ensure prefixes being learned
For every “up interface”, ensure no CRC errors
“Profile” before change, Change, “Profile” after, DIFF
Other Skills/Questions
1. How to schedule “stuff”
Run a Python script every hour – cron utility on Linux/Unix/macOS
Orchestration/Integration Tools – (CICD Tools) – Jenkins, Drone, Gitlab
“Event Driven”
Central Management Servers – Ansible Tower
Real World Use Cases
Scale
Performance
Transactions/Error Recovery