
Explore data center networking with spine and leaf topology, Cisco Nexus 9000, F5 Big-IP, Arista switch, and Python basics for scalable API-driven provisioning.
Discover the Cisco Nexus 9000 solution, a high-performance data center switch family with nx-os and aci modes, programmable automation, and vxlan/vpc with devops tooling and OpenStack DCNM integration.
Learn Python basics overview tailored for network engineers, focusing on data center use cases and practical scripting for automation and network efficiency.
Learn how integers represent numbers in Python and perform basic math with integers and floating point, including 7×8=56, 89−6=83, and how 100/3 yields 33 while 100.0/3 yields 33.333...
Explore booleans, true and false values, and how they drive conditions in programming. Learn and, or, and not operators with practical examples and truth-table logic.
Explore how conditions use operators to evaluate true or false, including equal, not equal, greater than, less than, greater than or equal to, membership, identity, and boolean operators.
Learn Python basics with conditional logic, variables, lists, and loops through hands-on Linux shell demos. Build and run scripts using if, elif, else, in, and for loops.
Learn how to collect user input in Python, compare raw_input and input across Python 2.7 and 3.x, and securely handle passwords with getpass without echoing to the terminal.
Discover how functions in Python help network engineers in data center use cases reuse code by defining blocks that run on call, accept parameters, and return results, with printing examples.
Explore python modules, including built-in and custom modules, to reuse code across scripts. Import platform and OS tools, print system and Python version, and organize functions in central modules.
Implement a python script that prompts for yes/no input, prints a processing configuration message, and loops on invalid input to test knowledge of section five basics.
Compare restful and network-based APIs through a hotel search engine analogy, then show how data center management centralizes monitoring and configuration with multi-vendor network devices via netconf and restconf.
Demonstrate API communications using Postman to test an API server, create requests and collections, apply bearer token authentication, and filter response data from Udemy course endpoints.
Explore restconf, a http based protocol that combines netconf with restful patterns, supporting xml and json, and using http methods to read, insert, update, and delete data.
Zero touch provisioning uses dhcp options 66 and 67 to fetch http or tftp files for configuration and scripts, identified by a shebang, enabling automatic startup configs and ios images.
Demonstrate Python coding on a Linux server with zfill padding and a Template substitute, then show file handling with open, read, write, and close.
showcases a ztp python code demo using the xdr-tb script to generate and apply startup configurations for spine and leaf switches via template substitution, with testing and validation.
Explore pull up concepts for network devices using DHCP, TFTP, and a web-based configuration server to generate per-switch startup configs via pull up script.py and template-driven YAML.
Learn the pull up process with configuration logs to troubleshoot a Nexus switch boot, covering DHCP discovery, HTTP and TFTP file transfer, MD5 validation, and startup configuration.
Learn how Arista ERP enables remote, programmable access to Arista switches without screen scraping, using Python scripts and JSON outputs, with web and http/https options for automation.
Learn to automate interface descriptions with a for loop in a Python eAPI script, applying descriptions to Ethernet 1–10 and validating with show interface status.
Revise the Fort ERP Python sample script to convert Json output to readable text by updating the print response, producing a human readable show running config.
Learn to ping switches in the 10.0.0.x range and print hostnames with IPs using a Python API script and show hostname on Arista devices.
Enhances the sixth python sample by adding username and password input, replacing raw input with getpass to hide credentials when connecting to Arista switches, and verifies host reachability.
Build and provision a Nexus 9K lab by uploading the qcow2 image, booting the node, enabling NX-API, and configuring the management IP for API access via Python scripts.
Learn to troubleshoot nx-api python scripts by parsing json-rpc error responses, extracting the error code with dict.get, and using continue to handle invalid commands across multiple devices.
Demonstrate configuring f5 big-ip via icontrol rest api for data center use cases, creating a virtual server and pools, adding pool members, and verifying configurations with curl and jq.
Create and configure objects with the f5 sdk in python to build an ftp virtual server and its ftp pool, specify destination and port, then verify by re-running the script.
update a virtual server's pool with the iControl REST API using a Python script, loading the server state and assigning ftp_pool and https_pool on the F5 big-ip device.
Mlag enables two switches to act as one logical device, creating a non-blocking data center fabric. It uses lag peer links to coordinate mac information and keepalives for active-active operation.
Master MLAG operations part 2: select primary and secondary switches via system id and switch advertise; the lowest mac in bpdu becomes primary and port channel 12 syncs ethernet 21/22.
Configure mlag across two switches by creating vlans and svis with shared subnets, and establish a trunk port channel as the peer link while disabling stp for the vlan.
Configure mlag with spines and leaves to form port channels, verify spanning tree and root bridge roles, and observe blocking ports in a triangle topology.
Automate mlag setup in a spine-leaf data center: delete legacy port channels, run scripts to reset spines, configure vlan 4094 with an svi for keepalives, then verify with show commands.
Welcome to Python for Network Engineers Series
In this course will be focusing on Automating Data Center Networks using Python.
The approach of this course is to learn Data Center Networking Technologies, then understand how we apply automation and programmability using high end Data Center Network Appliances such as Cisco Nexus 9000, F5 BIG-IP and Kubernetes.
Learn the basics of Python and understand how API works! This course provides you at least 40 python sample scripts designed to automate hundreds of network devices!
The set-up is simple. We have few switches a Linux server where all the python scripts are hosted.
Easiest way to understand Python Network Automation. No need to learn Netmiko, Napalm, Ansible and Paramiko. Automation is all about API!
Lastly, we will also learn how automate complex configuration such as MLAG/VPC and VXLAN.
Some the python scripts used are designed for an extremely large data center environment!
Target Audience
Network Engineers
Aspiring Network Engineers
Network Automation Engineer
Python Programmers
Infrastructure/Solutions Architect
Expectations
We will not talk about network basics
Will discuss the Data Center technologies
Focus on the use of Programmability and Automation
I will show and demonstrate at least 40 different Python scripts
Simple, easy to understand – Linux, Python, Switches and Application Delivery Controller
Software Technologies
Linux
Python
JSON
Network Vendors and Network-Based API
Cisco Nexus 9000
F5 BIG-IP
Network Based-API
Cisco NX-API
eAPI
F5 iControl REST API