In a competitive marketplace, today’s service providers are focused more than ever on automation. Many are turning to DevOps to create a ‘culture of automation’ that can respond to changes faster.
In the past, operators have been reluctant to trust automation, but new trends are forcing them to think again. First of all, they must automate the delivery of enterprise connectivity and value added services.
Enterprise customers will no longer wait weeks or months for new services and change requests. They want their communications suppliers to join the on-demand world that we’re all used to in every other aspect of our lives. They want to take advantage of bandwidth on demand and self-service offerings. But these things require a high level of automation.
Increasing mobility is also driving automation. Traffic is growing quickly as people become more mobile. They now demand new services, such as mobile video. Automation can help them get what they expect. This will reduce your customer churn.
Finally, operators are looking seriously at the IoT market and the revenue growth opportunity there. But configuring and managing lots of devices and sensors at scale is expensive. Automation can help keep those costs in line.
Operators have tried to automate network management for years, without much success. But now you can look to DevOps for a more agile, simple approach. It was created with automation in mind. So DevOps helps break down silos between the different teams tasked with product and service delivery.
DevOps is most closely tied to software development and IT. But now, networks are becoming more software-driven. DevOps can be a powerful tool for managing them too. It improves the relationship between network service designers and the engineers who need to make the actual operational changes to the services. It also puts responsibility for automating network operations straight into the hands of the engineers. These are the people with the most knowledge and experience of the network. Traditionally, IT departments run network automation projects using a waterfall model. Under this approach, IT architects pass on their requirements to programmers. The programmers create the automation, then throw it back 'over the wall' at the end of a project. The process is often slow and costly. And because programmers may not be experts in networking, the results aren't always good. The DevOps approach is designed to let operators take advantage of the knowledge of domain experts. They can save time, reduce costs, and deliver better features and services for users.
How can you apply a DevOps approach to your network? Focus on three key areas:
1. People, process, culture
DevOps is built on a certain type of culture. Staff must be willing to work together, across roles and departments, based on business aims. Your DevOps teams need to focus on business outcomes. Not just on their technical focus or their department. DevOps is also based on a strong belief in automation. It requires an open attitude to experimentation to encourage sharing and reuse. Creating a DevOps culture is just the first step, but it's also the hardest one to achieve. It requires dedicated programs – such as AT&T's Domain 2.0 – and can take many years to roll out. This is especially true if your organization is a large one.
DevOps spans lots of different practices. It lets you treat your infrastructure as code, and lets your development and operations teams share tooling. And it gives you the power to develop new features and functions continuously. You can pull them into live code without taking down your systems. Some examples of DevOps practices include automated testing, release management, and deployment processes. These things can help you minimize risk as you set up new features, and control how they are integrated. It also lets you roll changes back and forward automatically. Automated monitoring gives you access to data that you can use to optimize feedback loops and improve operational quality. It's vital to remember that de-provisioning is just as important as provisioning for resource consumption. DevOps assumes that you will want to give your customers on-demand self-service.
DevOps lets you take advantage of a host of tools. A lot of them are open and open source. Many of your network engineers will already be familiar with them. They will be writing scripts in Python, Perl and other languages today. If you're adopting DevOps, your tooling efforts need to be supported, systematized, and brought into alignment with your overall automation goals.
Getting to grips with the basics of DevOps can give you a good base to build on. But before you move forward, it's vital to understand the limits of DevOps tools, and the challenges of automating your network. To automate a hybrid network, or a complex virtualized network, you'll need to script runtime configurations. These are very different from the static, template-based configurations created for IT applications. To completely automate your network, you'll need to set up a hybrid form of DevOps. That means bringing the automation capabilities of service orchestration tools into the DevOps mix. With the right strategy, you can bring the advantages of DevOps to your organization. And with it, the power, the agility and the cost savings you need to stay ahead of your competitors.
To learn more about how you can boost your market agility to take advantage of new opportunities, check out the Heavy Reading white paper, "DevOps for Network Engineers: The Implications for Network Automation."