New edition of the bestselling guide to mastering Python Networking, updated to Python 3 and including the latest on network data analysis, Cloud Networking, Ansible 2.8, and new libraries
- Explore the power of Python libraries to tackle difficult network problems efficiently and effectively, including pyATS, Nornir, and Ansible 2.8
- Use Python and Ansible for DevOps, network device automation, DevOps, and software-defined networking
- Become an expert in implementing advanced network-related tasks with Python 3
Networks in your infrastructure set the foundation for how your application can be deployed, maintained, and serviced. Python is the ideal language for network engineers to explore tools that were previously available to systems engineers and application developers. In Mastering Python Networking, Third edition, you'll embark on a Python-based journey to transition from traditional network engineers to network developers ready for the next-generation of networks.
This new edition is completely revised and updated to work with Python 3. In addition to new chapters on network data analysis with ELK stack (Elasticsearch, Logstash, Kibana, and Beats) and Azure Cloud Networking, it includes updates on using newer libraries such as pyATS and Nornir, as well as Ansible 2.8. Each chapter is updated with the latest libraries with working examples to ensure compatibility and understanding of the concepts.
Starting with a basic overview of Python, the book teaches you how it can interact with both legacy and API-enabled network devices. You will learn to leverage high-level Python packages and frameworks to perform network automation tasks, monitoring, management, and enhanced network security followed by Azure and AWS Cloud networking. Finally, you will use Jenkins for continuous integration as well as testing tools to verify your network.
What you will learn
- Use Python libraries to interact with your network
- Integrate Ansible 2.8 using Python to control Cisco, Juniper, and Arista network devices
- Leverage existing Flask web frameworks to construct high-level APIs
- Learn how to build virtual networks in the AWS & Azure Cloud
- Learn how to use Elastic Stack for network data analysis
- Understand how Jenkins can be used to automatically deploy changes in your network
- Use PyTest and Unittest for Test-Driven Network Development in networking engineering with Python
Who this book is for
Mastering Python Networking, Third edition is for network engineers, developers, and SREs who want to use Python for network automation, programmability, and data analysis. Basic familiarity with Python programming and networking-related concepts such as Transmission Control Protocol/Internet Protocol (TCP/IP) will be useful.
Table of Contents
- Review of TCP/IP Protocol Suite and Python
- Low-Level Network Device Interactions
- APIs and Intent-Driven Networking
- The Python Automation Framework – Ansible Basics
- The Python Automation Framework – Beyond Basics
- Network Security with Python
- Network Monitoring with Python – Part 1
- Network Monitoring with Python – Part 2
- Building Network Web Services with Python
- AWS Cloud Networking
- Azure Cloud Networking
- Network Data Analysis with Elastic Stack
- Working with Git
- Continuous Integration with Jenkins
- Test-Driven Development for Networks