Book Image

Practical Network Automation

By : Abhishek Ratan
Book Image

Practical Network Automation

By: Abhishek Ratan

Overview of this book

Network automation is the use of IT controls to supervise and carry out every-day network management functions. It plays a key role in network virtualization technologies and network functions. The book starts by providing an introduction to network automation, SDN, and its applications, which include integrating DevOps tools to automate the network efficiently. It then guides you through different network automation tasks and covers various data digging and reporting methodologies such as IPv6 migration, DC relocations, and interface parsing, all the while retaining security and improving data center robustness. The book then moves on to the use of Python and the management of SSH keys for machine-to-machine (M2M) communication, all followed by practical use cases. The book also covers the importance of Ansible for network automation including best practices in automation, ways to test automated networks using different tools, and other important techniques. By the end of the book, you will be well acquainted with the various aspects of network automation.
Table of Contents (14 chapters)
Title Page
Credits
About the Author
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface

Accessing a script from dynamic HTML


There are times when we run a Python script to create dynamic HTML pages (which are based upon certain triggers that we put in the script). These pages can be enhanced to add additional URLs to invoke other scripts when we click on those pages.

As an example, let's say we need to find out how many models of devices are in our network. For this we create a script, schedule it to run every hour with the task scheduler, and after each run a dynamic HTML page is created to show the updated stats or inventory. In a BYOD scenario, this also plays an important role, because each hour we can monitor what devices are on our network, and if we click on any of the discovered devices, we can get additional information such as a detailed show version.

Here's the Python code to create the dynamic HTML:

from pysnmp.hlapi import *

print('Content-Type: text/html')
print('')

def finddevices(ip):
    errorIndication, errorStatus, errorIndex, varBinds = next(
        getCmd...