The knowledge economy and the digital age have created a greater reliance on the network than ever before. Organizations must make changes more rapidly, and with the least possible downtime. That’s no mean feat, and IT teams are feeling the heat. To keep up, they must use automation and orchestration as much as possible. That can be problematic, though, as automation can be expensive initially and company culture may balk at how much change is made to the network. In addition, the transition to automation often necessitates swapping the skills of network protocols to those of programming languages.
A “home-grown” automation infrastructure requires more staff and time to take on the required training to build and maintain than many organizations can spare. Lean IT teams without dedicated development require a platform for automation with turn-key features built in to get started automating time-consuming tasks that are done manually today. Organizations with development resources need an open platform allowing them to customize and build the required automation and migrate from limited home-grown solutions.
Why Automate the Network?
Command line, through the Command Line Interface (CLI), is what configures most of the existing, installed base of networking equipment. This type of interface may be acceptable in a lab or small network, but when you need to configure dozens to hundreds to thousands, manual CLI does not scale. In addition to being time-consuming to configure, using CLI requires deep knowledge of that particular vendor’s command structure and semantics, which must be configured in a very specific order.
The reduction of time it takes to implement changes in the network is the first and most important benefit of adopting network automation. This affects everything from new site installations to upgrades and ongoing changes. A recent Forrester research report shows that 80 percent of IT operations time is spent performing maintenance on the existing network. This takes away from time to address incoming change requests to keep up with the business needs.
The reduction of network downtime is a second important benefit. Automated tasks are executed much faster and with a higher degree of accuracy over manual changes. One Gartner study shows that close to half of all network outages are due to manual misconfiguration. Leveraging network automation enables an operations team to accomplish more tasks with the existing team without needing to hire expensive contractors or reject change request, which slows the flow of business.
Choosing Automation Wisely
Enterprises have an average of 13 to 20 different network device platforms deployed in their network. Some organizations have selected “best of breed” devices, such as firewalls, load balancers, switches, routers and WAN acceleration. Other organizations have multiple platforms from a single vendor, yet each has a different operating system and management system.
This abundance of platforms creates challenges and additional cost for network operations. IT teams must hire or train team members on each vendor platform, which results in siloed skill sets. Each vendor platform will also have its own specific management requirements, which could include manual CLI or a web-based interface. Some of the newer solutions provide an SDN controller that enables management of many devices, but this also provides an application or an API which must be developed on. Each of these vendor management platforms usually comes with annual support costs as well.
It is important that network automation supports a multi-vendor, multi-platform network and be extensible to add features and additional vendor platforms. Ideally, the automation platform can abstract feature configuration away from the vendor-specific method so that when configuring the same feature, like a VLAN ID on a switch, the workflow is the same even if the underlying network is using multiple switch vendors.
Flipping the Switch
An organization has several steps to take once the decision to automate has been made:
Before any changes are made, it is critical to get to a known state on the network and normalize all the configurations that will involve inventory, discovery, and remediation to get control of the existing network, since it has likely undergone manual changes for many years.
Determine which tasks IT operations find most time-consuming and use them as a starting point to implement network automation. It may be spin-up of new sites, ongoing change management like quality of service policies or access control lists, or upgrading devices.
Choose the network automation platform that has the feature set and vendor support required. This often means moving away from a home-grown platform and determining if the right fit is a platform for developers or one that has features ready for IT operations – ideally, one that is open and extensible as well.
Deploy audit capabilities and regularly check that the network “policy” is properly configured for each feature and enforced on the network.
Start defining the automation process early, ideally in the test lab when the network engineer is providing the “golden config” as to how a network feature works. This is the time to define how it can be automated for implementation at scale. Instead of a single working configuration, develop a feature template that can be automated across all network devices.
Practice continuous integration. There is no stopping point when implementing network automation; there is always more to do. Start small, get some of the mundane tasks automated and then move on to more and more tasks over time.
Update the change management control process to drive all changes through the automation platform and begin to minimize manual changes.
The Rewards of Automation
In today’s ultra-complex networks, so much is going on that humans alone cannot handle all the demands. For a network to function properly, automation and orchestration are now essential. Yes, there is a learning curve involved for IT teams, but the reward is a smoothly running network that automates mundane task so the teams can focus on more critical and time-sensitive tasks that require the human touch.