November 30, 2017
Kevin Fatkin
Edge Hosting, a DataBank Company
Network Engineer

Streamlining IT Tasks with Network Automation Using Python

It’s no secret that IT teams are stretched thin. Most spend a good portion of their time with upkeep and management of existing infrastructure. These responsibilities often ensure the security, reliability, and continuity of systems and therefore take precedence over more strategic projects. Infrastructure management often takes time and energy away from innovating solutions that can help drive business forward. For example, automation is becoming a change agent for IT transformation as it can streamline IT tasks and free up staff time, but first…

Networking is complex. As businesses grow and new tools or features are added to a network, the complexity of the environment can grow exponentially. This reduces agility – often an important strength of mid-market organizations.

Networking is also time consuming. Expansion, configuration, and provisioning all require proper planning and resources to ensure continuity within the business. These projects may require input from cross-functional teams, and the entire IT team may be occupied managing and implementing the change.

Furthermore, networking is constant. Maintenance, repair, upgrades, optimization, security, the list goes on and on. These areas will never be a “set it and forget it.” They require continuous improvement and upkeep to minimize vulnerabilities. While setting schedules and having the agility to respond to urgent needs is critical, IT teams will never get to a point where they can rest on their laurels.

 

What are Proactive IT Teams Doing to Automate their Networks?

For many teams, Python is quickly becoming the standard in terms of DevOps and network automation. While legacy languages like Perl and Tcl are still popular due to their familiarity from two decades of use, proactive IT teams are handling network automation using Python.

Python is a powerful language that allows users to easily manage their devices. It’s a natural fit for use with network automation, as it excels at streamlining the processes of maintenance, repair, expansion, upgrading, optimization, configuration, provisioning, and network security. Python has enabled Edge Hosting, now a DataBank Company, to provide an added level of service and support to our clients. We’re able to do this iteratively learning and improving our systems through automation with each successful migration. It’s what we like to call “design patterns that work.”

As far as languages go, Python is relatively easy to learn, with clear syntax and readability. Its statements can be interpreted in a number of operating systems, making it highly portable. You can install any libraries required, and its programming interface stretches across a broad set of network devices. Python also handles low-level SSH details, providing a secure way to access remote computers.

However, there are a few traits that really set Python apart for network automation, including:

  • The Open-Source Nature of Python

Python users represent a large, active community, sharing scripts and offering advice through a number of online channels. The vast, well-maintained Python ecosystem is backed by both independent developers and the largest of the tech giants, such as Google, IBM, and Microsoft.

If you’re new to Python, there’s an active community available to guide the way. You won’t have to worry about writing code from scratch, as the source code is freely available and open for modification. You’ll also have plenty of help when writing your own libraries – GitHub is a fantastic resource, where you can simply copy and paste for your own commands.

  • The Collection of Core Metrics

Unfortunately, vendors don’t always disclose core metrics, which can lead to serious security vulnerabilities. Python can be used to collect these metrics, providing differential error analysis to expose security threats – valuable information for making vendor decisions or eradicating bugs.

Here at Edge, our team manages over 300 Cisco firewalls. By collecting core metrics with Python, we’re able to proactively discover bugs and vulnerabilities unknown to the intelligence community. To manually upgrade and fix every firewall would take an incredible amount of time. With Python, we simply automate the whole process, using the script to apply the upgrades where they are needed. The outcome: bugs are crushed in no time, and by taking proactive measures, we can minimize risk and exposure for our customers before vulnerabilities become real problems.

In addition, we share the scripts we write, so our clients can perform similar tasks in seconds on their own environments.

Supporting your Path to Automation.

When you partner with Edge Hosting, you have full access to our Client Portal for a clear view of metrics throughout your network environment. From the Portal, you have the power and controls to make day-to-day management and decommissioning easier. Log in and you’ll see meaningful data about your hosted environment including real-time analytics, executive dashboards, and device metrics. Using Python scripts that we’ve developed, you’ll be able to interact with your devices and modify device configurations.

We also use Python automation by directly interacting with the Python application server. Our engineering team will automate common tasks, allowing the support and provisioning teams to execute these scripts directly to complete tasks that would have previously taken hours or even days in a matter of seconds or minutes.

 

Ready to Leverage a Managed Services Partner?

Edge Hosting helps liberate IT teams from the more mundane and time consuming responsibilities associated with managing infrastructure. You can find more information by visiting our page on managed hosting services or by downloading our Working with Edge eBook.

You can also speak with our Solutions Specialists at 888.428.2752.

Go back