GitOps is Essential for 5G Deployment

As 5G rollouts begin in earnest during 2021-2022, carriers are beginning to face the incredible challenge of deploying and configuring millions of devices, VMs and containers across not just the data center but the world. Unlike previous generations of mobile networks, 5G is a distributed network of cell towers, smaller MIMO devices, and other computing endpoints that power connectivity in stadiums and wherever people may gather. This new technology phase presents a massive challenge in terms of not just how to deploy but also maintain the network.

5G Networks Bring New Capability and Complexity

This new network addresses many of the problems with 4G, but brings its own set of challenges. First, the 5G spectrum runs into the millimeter-wave bandwidth, and the laws of physics dictate that higher frequencies suffer from attenuation more easily. In simple terms, they are more easily blocked by walls or even rain. Next, basic economics indicates that demand rises when we increase the network’s bandwidth and capacity. When you think globally, wireless networks are the primary and, in some cases, the only way people connect to the Internet, making this a much bigger issue than whether you can use Pandora or Spotify in your car.

5G addresses the issue of signal strength and reach by deploying more transmission points, and addresses capacity and latency by deploying more computing power to the edge. However, that is a lot more stuff to deploy, maintain and configure.

Carriers and Manufacturers are Investing in GitOps

To fully enable their 5G rollouts, mobile providers like Orange, Deutsche Telekom and Ericsson have invested in a new technology called GitOps. You can think of GitOps as the next evolution of DevOps, but for cloud-native applications. People in the telecommunications industry can think of it as carrier-grade DevOps. As the name suggests, GitOps combines the versioning control system Git with DevOps tools and practices. However, GitOps goes further by replacing imperative command-based configuration with a declarative syntax, making it more stable and repeatable.

If you are running even hundreds of devices, having just one configured inconsistently is a severe problem that can degrade the network or even cause connectivity loss. With traditional DevOps methods, a series of commands are executed. What if one fails — maybe through a temporary communications loss? What if your network is a software-defined network (SDN), as in the case of 5G? While this creates new opportunities for flexible adaptivity and resilience, it increases the number of points to configure by an order of magnitude.

GitOps > DevOps

One way to think about configuration is as a set of commands and file changes issued to an operating system, device or software component. Someone can perform a secure shell login to a device, container or virtual machine, issue some commands and adjust, for instance, the default network packet size.

In most systems today, instead of an operator doing this, a set of scripts written with a tool like Puppet or Chef perform the work. However, this requires setting up the same kind of access an administrator would have and sharing it with DevOps tools across the network. As one might imagine, this isn’t just the cause of configuration drift, but it is also a security hole.

Using a GitOps approach, operators can define the overall network and device configuration and check it into an auditable revision control system. A software-based agent checks the repository, detects if some device configurations differ from the repository, and adjusts them. The result is the same; a network of devices, containers, and software components end up with a different configuration. However, with GitOps, there is a central, auditable changelog. Changes are pulled by the network rather than pushed by a script. Because a versioned repository contains the configuration, it is easy to see what changed if there are problems. This methodology makes the system both more secure and diagnosable while simplifying the overall configuration process.

“We see the GitOps model as a key framework to achieve that level of automation and consistency across all of the workloads and platforms that telcos have to operate,” says Till Stenzel, managing director advisory, Deutsche Telekom Capital Partners, in an interview with Alexis Richardson, CEO of Weaveworks.

Once fully realized, 5G will also open up new kinds of third-party applications that run on edge computing devices. Customers want this as-a-service, and do not want to think about the underlying hardware or software infrastructure. GitOps enables carriers to deploy these kinds of services in a templated, consistent manner.

Carrier-Grade Technology for Everyone

While especially useful for the 5G rollout, GitOps is not just for the Telecom sector.

When asked about Deutsche Telecom’s cloud-native goals, Vuk Gojnic, one of Deutsche Telecom’s Kubernetes squad leaders said, “For us, it is to enable and drive the transformation so that applications that were traditionally very proprietary, very monolithic and very hardware-specific can still run; yet, at the same time, gain all of the benefits of modern cloud-native operating patterns like GitOps.” Many industries share similar goals.

Developers working on cloud-native applications who want to kick the tires of the approach can check this using the open source Flux project. Flux is developed primarily by Weaveworks, which we use in our commercial GitOps products, the Weave Kubernetes Platform and services, but is under incubation at the Cloud Native Computing Foundation.

Carriers like Orange and Deutsche Telecom do not want to deal with bespoke configuration across multiple software and hardware components. Traditional DevOps would take too long, and produce more errors and security flaws. The size, scope and deployment of this new type of network are about the same or more extensive than the internet itself, which took decades.

Building such a network over just a few years is not possible without GitOps.

Mike Kress

Mike Kress is a seasoned senior executive leading Weavework`s Telco business development. Mike is working closely with our Telecom investors, partners, and customers to evangelize and implement GitOps- a set of modern best practices for deploying and managing cloud native applications and infrastructure . Prior to joining Weaveworks, he held strategic sales, management, and business development leadership roles with Circonus, Canonical, and start ups. Mike has worked in the open source software and services business for over 20 years.

Mike Kress has 1 posts and counting. See all posts by Mike Kress