https://i126.fastpic.org/big/2026/0123/d7/51d3a459284d9dbb8f92105e89bae5d7.jpg
Master Network Automation With Python For Network Engineers
Last updated 10/2022
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 7.22 GB | Duration: 20h 9m
Real-Life Hands-On Python and Ansible Automation: Netmiko, Paramiko, Napalm, Telnet, Ansible, Cisco, Arista, Linux etc
What you'll learn
You will MASTER all the Python 3 key concepts starting from Scratch. No prior Python or programming knowledge is required
Learn how to automate the configuration of networking devices with Python 3 in a Multivendor Environment
Learn network programmability with Python, GNS3 and Ansible
Learn and apply advanced Python concepts like Multiprocessing and Multithreading in Network Automation
See real-world examples of automation scripts with Python for Cisco IOS, Arista EOS or Linux
Understand how to use Telnet and SSH with Python for network automation
Learn how to use and improve Paramiko and Netmiko for automation of common administration tasks with Python
Automate and troubleshoot network configurations with Ansible
You will be able to use Ansible, manage Ansible Inventory files, Tasks, Modules for Linux and networking devices, Playbooks, Vaults and YAML Files
Use NAPALM Python library in a Multivendor Environment
Learn how to configure networking devices with Python using a Serial Console Connection
Improve the existing Python modules and create your own modules for network automation
You will ultimately gain real-life skills for a good Network of DevOps Engineer
You will learn in-depth general Python Programming
Requirements
No prior Python knowledge is required. There is a general Python Programming section included.
Basic Knowledge of Networking Concepts (TCP/IP Stack, Cisco CCENT or CCNA Level)
A Linux, Mac or Windows Machine with an Internet Connection and at least 4GB of RAM
No paid software required. Only free software will be used: Python3, PyCharm, GNS3, VirtualBox, Linux, etc
Cisco IOS Images should be acquired by the student (from Cisco's official website - contract required) to run into GNS3 or practice all the concepts on real Cisco devices
Basic Knowledge of GNS3 and how to run Cisco Images, although I'll provide the necessary setup information inside the course
Description
***Fully updated for 2022*** This Network Automation with Python course also covers every major General Python Programming topic and is a perfect match for both beginners and experienced developers!Course Updates:Update: November 2021 - Updates to be 2022 readyUpdate: September 2020 - Manual Captions (Subtitles) in English addedUpdate: June 2020 - NEW Section: Async IO in Python (async/await, aiohttp, aiofiles, asyncssh)Update: May 2020 - Network Automation with Telnet re-recorded entirelyUpdate: April 2020 - Network Automation with Netmiko (SSH) re-recorded entirelyUpdate: March 2020 - Network Automation with Paramiko (SSH) re-recorded entirelyUpdate: April and May 2020 - Tens of NEW Coding Challenges with Solutions for real-world network automation tasksUpdate: October 2019 - NEW Section: Data Serialization and Deserialization in Python (Pickle, JSON, and REST APIs)Update: June 2019 - NEW Sections on General Python Programming: Strings, Lists, Tuples, Sets, Dictionaries, Functions, Flow Control, Working with Files, and many moreWelcome to this Python hands-on course for learning Network Automation and Programmability with Python in a Cisco or Multivendor Environment, taught by a DevOps Engineer and Professional Trainer.Boost your Python Network Programming Skills by learning one of the hottest topics in the Networking Industry in 2022 and become one of the best Network Engineers!This course is based on Python 3 and doesn't require prior Python Programming knowledge. Everything is included within the course and you'll also learn in-depth general Python Programming.Just starting out with Python Programming, Network Automation, or Network Programming using Python and have the desire to learn the future of Network Programmability in a practical way? Perfect. Then, this course is the right one for you. You'll boost your career with hands-on Network Programming Skills!Or maybe you've already tried to learn Network Automation with Python by yourself and now you want to put all pieces together? I'm here to help you, this course has everything you need to know to automate network configurations with Python.Most examples in this course are for Cisco IOS, but they can also be used in a multivendor environment (Juniper, Arista, HP, Linux) with no or little changes. This is a vendor-neutral course and teaches you Python from scratch.You'll have lifetime access and you can return and look for a specific Python library or example anytime you want. And let's not forget, if you don't like the course, you are covered by a 30-day money-back guarantee, full refund, no questions asked!You'll have access to all Slides and Python Scripts (ready to be used) from this course.TESTIMONIALS★★★★★ "This course was much better than I expected. It's high-quality Python Programming in the area of network automation and the instructor is really experienced. Thank you!" by Joseph Heinrich★★★★★ "Wow! This is an amazing course on network automation and python. It goes directly to the point. The Netmiko section is the best. I'm just waiting to test this at my work. Thank you!" by D. Schmidt★★★★★ "This is without doubts the best course on Network Automation with Python out there!" by Muhammad AliThere are many courses on Python Programming and Network Automation or Network Programming with Python. Why should you learn from me?I'm a Practitioner and an Enthusiast. Welcome to the real world! I have almost 20 years of experience as a Network Engineer and Programmer. Since I've started with Networking, Linux Systems, and Programming, I've been using or studying technology almost on a daily basis. I also have a bunch of Cisco certifications: CCNP Routing & Switching, CCNP Security, CCNP Service Provider, Cisco Certified Instructor, etcI'm an Educator and I know how to make a Syllabus. For the last 10 years, I've trained thousands of people on Linux, Networking, Security, Ethical Hacking, or Programming.You'll learn not only Network Automation but also general Python Programming. After this course, you'll MASTER all the Python 3 key concepts.The topics covered in this Python Network Programming course are:Working with Files in Python (text, csv, json, yaml)Data Serialization and Deserialization (Pickle and JSON)Bytes and String Objects in Python 3. Encoding, DecodingAdvanced Python Concepts: Multiprocessing and Multithreading with real-life examplesThe standard Telnet Python Library. How to create your own Class based on telnetlib to simply the configuration automationParamiko Library. How to use SSH to automate the configuration of Cisco, Linux, or other DevicesHow to create your own Python module based on Paramiko to simplify the development workNetmiko. Automate the configuration of Cisco, Arista, and Linux using NetmikoNetmiko best-practices and real-life examples for backup configuration of multiple devicesBuilding Concurrent Applications using Async IO (async/await, aiohttp, aiofiles, asyncssh)The NAPALM Library - Network Automation and Programmability Abstraction Layer with Multivendor supportHow to use NAPALM to retrieve information about devices and protocols and manage the devices' configurationWhat is Ansible and what are its components: Modules, Tasks, Plays, Playbooks, etcHow to execute Ad-Hoc commands against networking devices and servers using AnsibleAnsible modules: command, shell, raw, copy, file, apt, service, ios_command, ios_config etcHow to use create and run Ansible Playbooks against Networking Devices (Cisco, Arista, etc) and Linux ServersAnsible VaultAutomation of networking devices configuration through a serial connection. Pyserial Python moduleImprovement of pyserial moduleHow to set up the Python Development Environment: PyCharm, GNS3, Cisco IOS, Arista vEOS, Juniper vSRXArista vEOS installation in GNS3 and basic configurationJuniper vSRX installation in GNS3 and basic configurationThe topics covered in the General Python Programming sections are:VariablesOperatorsBuilt-in TypesStrings in PythonLists in PythonTuples in PythonSets and Frozensets in PythonDictionaries in PythonFlow ControlUser-defined FunctionsErrors and Exception HandlingOOP (Object Oriented Programming)Every topic includes many live examples in Python. This course will show you the best practices for developing production-ready Python Networking Automation Scripts for Cisco and Multivendor Environments.
Overview
Section 1: Course Introduction
Lecture 1 Why Network Automation with Python? Why Now?
Lecture 2 IMPORTANT. Please read!
Lecture 3 Quick inside. Course Overview
Lecture 4 IMPORTANT FOR BEGINNERS: How to Learn Python Programming
Lecture 5 Join Our Online Community!
Lecture 6 Getting Course Resources
Section 2: Setup the Environment: Python, PyCharm, GNS3, Cisco IOU and IOS
Lecture 7 A Quick Note
Lecture 8 Download and Install the Required Software
Lecture 9 Installing Python 3 on Windows
Lecture 10 Installing Python 3 on Linux and Mac
Lecture 11 Installing PyCharm IDE on Windows
Lecture 12 Installing PyCharm IDE on Linux and Mac
Lecture 13 Running Python Scripts using PyCharm
Lecture 14 Running Python Scripts using the Command Line
Lecture 15 Where do I get Cisco IOS, Juniper vSRX or Arista vEOS Images
Lecture 16 Just a few Words about Windows Installation
Lecture 17 Installing GNS3 on Windows 10
Lecture 18 Running Cisco IOU Images in GNS3 on Windows 10
Lecture 19 Connecting to Cisco IOU Images Running in GNS3 from Window 10
Lecture 20 Installing GNS3 and Running Cisco IOU on Linux
Lecture 21 What if it still doesn't work?
Section 3: Working with Text Files in Python
Lecture 22 Intro
Lecture 23 Opening and Reading Files
Lecture 24 Reading Files: Tell, Seek and Cursors
Lecture 25 The With Keyword
Lecture 26 Coding Exercise Solution
Lecture 27 Reading Files into a List
Lecture 28 Writing to Text Files
Lecture 29 Coding Exercise Solution
Lecture 30 Coding Exercise Solution
Lecture 31 Coding Section - Working with Text Files
Lecture 32 Reading CSV Files
Lecture 33 Writing CSV Files
Lecture 34 Using CSV Custom Delimiters
Lecture 35 Using CSV Dialects
Lecture 36 Coding Section - Working with CSV Files
Lecture 37 Assignment: File Processing
Lecture 38 Assignment Answer 1: File Processing
Lecture 39 Assignment Answer 2 (CSV Module): File Processing
Section 4: Hands-On Challenges - Working With Files
Lecture 40 Hands-On Challenges - Working With Text Files
Lecture 41 Hands-On Challenges - Working With CSV Files
Section 5: Data Serialization and Deserialization in Python (Pickle and JSON)
Lecture 42 Intro to Data Serialization
Lecture 43 Pickle Data Serialization and Deserialization
Lecture 44 Coding - Pickle
Lecture 45 JSON Data Serialization
Lecture 46 JSON Data Deserialization
Lecture 47 Coding - JSON
Lecture 48 Assignment: JSON and Requests/REST API
Lecture 49 Assignment Answer: JSON and Requests/REST API
Lecture 50 Coding Challenge: Simplify Serialization
Lecture 51 Coding Challenge Solution: Simplify Serialization
Lecture 52 Coding Challenge - JSON and Requests/REST API
Lecture 53 Coding Challenge Solution - JSON and Requests/REST API
Section 6: Network Automation with Paramiko (SSH)
Lecture 54 The Lab Environment
Lecture 55 Intro to Paramiko
Lecture 56 Extra: Enable SSH on Cisco Devices
Lecture 57 Connecting to Networking Devices using Paramiko
Lecture 58 Using **kwargs and Arguments Unpacking
Lecture 59 Running Commands on Cisco Devices
Lecture 60 Securing the Passwords Using getpass
Lecture 61 Automating the Configuration (OSPF) of Multiple Cisco Routers
Lecture 62 Running Commands on Linux - Method 1
Lecture 63 Running Commands on Linux as a Non-privileged User - Method 2
Lecture 64 Running Commands on Linux as root - Method 2
Lecture 65 Paramiko Refactoring. Creating myparamiko Module
Lecture 66 Running Commands Using myparamiko on Cisco IOS
Lecture 67 Importing myparamiko Module
Lecture 68 Backup the Configuration of a Single Cisco Device
Lecture 69 Automating the Backup Configuration of Multiple Cisco Devices
Lecture 70 Implementing Multithreading (Python and Paramiko)
Lecture 71 Assignment: Interactive User Creation on Linux with Paramiko
Lecture 72 Assignment Answer: Interactive User Creation on Linux with Paramiko
Lecture 73 Secure Copying Files with SCP and Paramiko from Python
Section 7: Hands-On Challenges - Network Automation with Paramiko
Lecture 74 Hands-On Challenges - Paramiko
Section 8: Network Automation with Netmiko (SSH)
Lecture 75 The Lab Environment
Lecture 76 Intro to Netmiko. Netmiko vs. Paramiko
Lecture 77 Connecting and Running a Command on a Networking Devices
Lecture 78 Netmiko Prompt. Enable & Global Config Mode
Lecture 79 Running Multiple Commands on a Networking Device
Lecture 80 Configuring a Networking Device from a File
Lecture 81 Configuring Multiple Networking Devices from Multiple Files
Lecture 82 Automating the Backup of Multiple Cisco Devices Using Netmiko
Lecture 83 Netmiko Without Multithreading
Lecture 84 Implementing Multithreading (Python and Netmiko
Lecture 85 Netmiko and Linux
Lecture 86 Troubleshooting Netmiko
Lecture 87 Preparing the Router for SCP
Lecture 88 Copy files to Networking Devices using SCP and Netmiko
Lecture 89 Assignment: Check Interface Status and Enable it if it's Disabled
Lecture 90 Assignment Answer: Check Interface Status and Enable it if it's Disabled
Section 9: Hands-On Challenges - Network Automation with Netmiko
Lecture 91 Hands-On Challenges - Netmiko
Section 10: Building Concurrent Applications Using Async IO
Lecture 92 Python Concurrency Ecosystem
Lecture 93 Implementing Async IO
Lecture 94 Coding - Implementing Async IO
Lecture 95 Building an Asynchronous Web Scraper
Lecture 96 Coding - Building an Async Web Scraper
Lecture 97 Running Shell Commands (Subprocesses) Asynchronously
Lecture 98 Coding - Running Shell Commands
Lecture 99 AsyncSSH: Asynchronous SSH
Lecture 100 AsyncSSH: Running Multiple Clients
Lecture 101 Coding - AsyncSSH (Multiple Clients)
Section 11: [Extra] - Running Arista vEOS and Juniper vSRX in GNS3
Lecture 102 How to Run Arista vEOS in GNS3
Lecture 103 How to Run Juniper vSRX in GNS3
Lecture 104 Juniper vSRX Basic Configuration
Lecture 105 Arista vEOS Basic Configuration
Lecture 106 Configure Arista EOS Switches
Lecture 107 Netmiko in a Multivendor Environment: Cisco & Arista Configuration
Section 12: Network Automation with Napalm
Lecture 108 Intro to Napalm
Lecture 109 Installing Napalm. Connecting to a Device
Lecture 110 Displaying Information
Lecture 111 Retrieving Information (facts, interfaces, arp table etc)
Lecture 112 Checking Connectivity Between Devices (napalm_ping)
Lecture 113 Configuration Management
Lecture 114 Merging Configurations
Lecture 115 Configuration Rollback
Section 13: Network Automation with Telnet
Lecture 116 Bytes Objects, Encoding and Decoding
Lecture 117 Telnet Protocol Basics. Configure and Connect to Cisco Devices
Lecture 118 Connecting to Network Devices with Telnet from Python
Lecture 119 Configuring Multiple Devices (Network Automation)
Lecture 120 Securing the Passwords Using getpass
Lecture 121 Telnet Enhancement (Refactoring) Using Object Oriented Programming
Lecture 122 Testing the Custom Telnet Class. Configure Loopback Interfaces and OSPF
Lecture 123 Configuring Multiple Devices Using the Custom Telnet Class
Lecture 124 Improving the Custom Telnet Class
Section 14: Hands-On Challenges - Network Automation with Telnet
Lecture 125 Hands-On Challenges - Telnet
Section 15: Network Automation Using Serial Connections
Lecture 126 Serial Communication Basics. Connecting to a Console Port
Lecture 127 Simulating a Serial Connection with Linux and GNS3
Lecture 128 Open a Serial Connection to a Device Conso