Тёмный

Which Network Automation Tools should I learn? Python, Ansible, Genie and more: Tool Chest 

David Bombal
Подписаться 2,6 млн
Просмотров 69 тыс.
50% 1

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: bit.ly/2MHbgOk
Network programmability Basics Video Series: bit.ly/2GGzg2T
Laptop Setup Labs: bit.ly/2GGzh6X
Coding Fundamentals Learning Labs: bit.ly/2ZK8yiP
Ansible Learning Labs: 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

Опубликовано:

 

29 июл 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 38   
@davidbombal
@davidbombal 5 лет назад
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? Links: DevNet home page: bit.ly/2MHbgOk Network programmability Basics Video Series: bit.ly/2GGzg2T Laptop Setup Labs: bit.ly/2GGzh6X Coding Fundamentals Learning Labs: bit.ly/2ZK8yiP Ansible Learning Labs: bit.ly/2ZEdqFY # 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
@shravankumaravula7825
@shravankumaravula7825 5 лет назад
Hi David , can you please upload a video regarding Networking security tools.
@davidbombal1
@davidbombal1 5 лет назад
@@shravankumaravula7825 Coming this week I hope :)
@jairusan
@jairusan 5 лет назад
Wow, the amount of great stuff discussed here. Can't thank both of you enough. God bless you guys, this is fun and super motivational.
@MichaelVega-cq2fr
@MichaelVega-cq2fr 5 лет назад
As always great content sir David! I kindly suggest that at every beginning of the video, you include a roadmap of which branch of IT the video is about. like DevOps/ System/ Cloud/ Security .etc or just pure R&S. Because as a fresh CCNA, I'm overwhelmed with this stuffs and I don't know where should I start. But my guts says I should go in with security. Thanks for sharing & may God bless you more!
@ph5celych5
@ph5celych5 5 лет назад
I use NAPALM for Operational/Testing use cases as well (see NAPALM getters). The advantage of NAPALM is that it abstracts you from the specific device type (i.e. the same getter function is used regardless of the target device type). You can enhance NAPALM with your own getter function if such a function is not implemented in standard NAPALM distribution. You can use NAPALM directly from a Python script or you can call NAPALM functions from an Ansible playbook or from a Nornir task (inside a python script). Nornir allows you to run specific tasks against a subset of devices which are defined in Nornir inventory. Nornir has a lot of options how to select a subset of devices according to specific attributes. It still uses Netmiko for ssh connections but it can connect more devices in parallel and that's why the result time is much faster. You don't have to deal with parallel processing. It is implemented inside of Nornir. You just specify number of devices which can be connected in parallel. As I mentioned, Nornir has native support for NAPALM, so you can run NAPALM functions (config or operational/get) against a specific subset of devices. If you prefer to connect devices directly using Netmiko, you can do it as well. I hope this can help someone. David and Hank thanks for the video!
@davidbombal
@davidbombal 5 лет назад
Thanks Petr!
@suelee9346
@suelee9346 4 года назад
Hi David, Thanks for another great video! Always enjoy watching your videos and lessons. You nailed this one, "... My preference is Python..." (17:47 - 17.55)
@innbydelse
@innbydelse 4 года назад
Nornir is fantastic for scale. I use it for my 900+ device environment.
@abhinavmathur6072
@abhinavmathur6072 5 лет назад
Thanks a lot..I know you will get recognisation you deserve very soon
@sujayjha9217
@sujayjha9217 4 года назад
This was awesome. Helped me out to understand the automation stuff. Please make a video on deploying script in production , at times I right the code with the help of Github but won't be able to deploy.
@Disco868
@Disco868 5 лет назад
Great video, discussion, links and support to help me and other like-minded individuals in or trying to get into the networking world. Thank you for everything you do, inspiration and valuable. I will be watching Steves Cisco DevNet free learning videos, which you have kindly provided the links for. All the best, Dave.
@davidbombal1
@davidbombal1 5 лет назад
Thank you David. Appreciate the positive feedback :)
@ARadicalCut
@ARadicalCut 3 года назад
I think netmiko in combination with Python / Jinja is a great way to start learning automation and sets you up to move towards other tools like ansible that increase scalability. Python has a bigger learning-curve but it does make subsequent learning of other tools a bit easier imo.
@steeple001
@steeple001 4 года назад
Does containerization answer a lot of the ansible versioning problems you have experienced? Great content as usual guys. I have used a lot of what I have learned from these videos and built full production pipelines with the tool sets not only for provisioning but for managing and testing also.
@orleydoss3171
@orleydoss3171 5 лет назад
Very informative 👍
@davidbombal
@davidbombal 5 лет назад
Thank you! I appreciate the positive feedback :)
@rkmallesh5
@rkmallesh5 5 лет назад
Dear sir..... Thanks Allot for your valuable information. Please do one video on Cisco. I mean in Cisco v have r&s, security etc etcetera........ So, Which one is Good to take..... And also mention some books for CCNA and CCNP R & S
@alshazr1
@alshazr1 5 лет назад
I am always happy to see your videos David especially with Steve. I hope if you can have a video or provide a reference discussing these tools and what can be applied on different OS versions, such as IOS, XE, XR or NXOS. Thanks for these amazing videos and please keep it up 🙏
@davidbombal
@davidbombal 5 лет назад
Thank you for watching Mahmoud!
@kenmurphy4259
@kenmurphy4259 5 лет назад
Great channel, great content, thanks David
@davidbombal
@davidbombal 5 лет назад
Thank you Ken!
@elchinefa9524
@elchinefa9524 5 лет назад
Thanks a lot for the video.If honestly till 43:24 video was for me so difficult to understand,The reason is never used or heard about such programs or terms. But as soon as I saw cron I said main it is going to be interesting:D Yeah I use cron in Kali Linux for my mac changer.It change it every reboot. By the way, who wants to learn Linux (hacking as well)should start with playing "Bandit" from overthewire.
@davidbombal1
@davidbombal1 5 лет назад
There are a lot of new tools available these days for network automation. Have a look at Hank's free course on Devnet to learn more.
@ElreyRayo
@ElreyRayo 5 лет назад
Obviously, LINUX mastery is the foundation to this topic....
@nkkrishnan915
@nkkrishnan915 5 лет назад
pyATS and Genie do not seem to be multi-vendor capable yet
@fernandofranco8836
@fernandofranco8836 4 года назад
awesome
@TrcRat97
@TrcRat97 5 лет назад
Will Genie work on my older ISR routers, 2800 series, or do I need ISR gen 2?
@davidbombal
@davidbombal 5 лет назад
I believe it works with older routers. But, you should check first.
@8ktk
@8ktk 5 лет назад
I have no prior experience in networking. But I'm going to follow this road map you guys provided to land myself a networking job. Would that do?
@8ktk
@8ktk 5 лет назад
Really need your advice on it. Am going with Python and Network Automation first before CCNA.
@davidbombal
@davidbombal 5 лет назад
If you want to be in networking, you should start with CCNA and also get CCNP along with the network automation skills. You need to understand the fundamentals of networking to be able to automate networks.
@8ktk
@8ktk 5 лет назад
@@davidbombal Thanks for that advice. I already have 3 years of non networking IT background. Hope it's not too late do my CCNA CCNP and also master network automation. Would that be a disadvantage for me now to get into networking? Trying to switch to networking before FY 2020
@davidbombal
@davidbombal 5 лет назад
@@8ktk Not too late. I suggest you try to study CCNA and Network Automation at the same time (if you can). Otherwise CCNA first and automation right after that. Unless you cannot find time, try to study both together.
@8ktk
@8ktk 5 лет назад
@@davidbombal Thanks David. Would probably ping you once I'm into networking. I really follow your videos so closely. They give me inspiration and motivation to learn and succeed.
@torkishalomoan7875
@torkishalomoan7875 4 года назад
hi david, how to connecting gns3 with linux mint ? could you help me I searched more solution but now I am not find the best solution thanks.
@afara2000
@afara2000 3 года назад
Ansible is by far the best tool in my opinion. Its idempotency and agent-less feature makes it superior to other tools.
Далее
Any future for Network Engineers?
34:38
Просмотров 197 тыс.
DIY rocking horse for your kid #diy #parenting
00:57
Picking your First Network Automation Project Close
52:44
Ansible vs. Python
6:01
Просмотров 34 тыс.
Be Invisible Online and Hack like a Ghost
54:09
Просмотров 341 тыс.
Introduction to Ansible for Network Engineers
2:24:09
Просмотров 22 тыс.