Think Joe Pesci in My Cousin Vinny: “What is a git anyways?”
The move to 5G Standalone is afoot, and operators are working out the kinks of instantiating network slices tuned to the needs of particular end user applications. In the broader move toward building cloud-native networks and operating and business models, a light is being shined on the need for network engineers to become software engineers proficient in the tools used to manage and automate cloud infrastructure from the 5G core, across the transport network and out into the radio access network.
French multinational operator Orange provides services to around 70 million consumer and enterprise customers in Europe who consume in the ballpark of 800Pb/month of mobile data traffic. The operator has commercially deployed 5G Standalone technologies in several of its markets, including Belgium and Spain. Under the auspices of its Pikeo project, Orange has put together a full cloud-native stack and new operating model with a focus on delivering 5G as a service with partners, including AWS, Casa Systems, Dell and HPE.
Before diving into how Orange has tackled network slicing, a vocabulary lesson is in order.
- Git is a common distributed version control system used for software development that allows multiple developers to work together on a project and track code changes. Git also helps manage different versions of code, and review relevant changelogs.
- GitOps applies the principles of Git to infrastructure and operations. A system state is declaratively described and held in a Git repository. The system state is often automatically compared to the Git repository and reconciled so that the two implementations of code match. In a GitOps workflow, infrastructure and application configuration changes are made by updating the Git repository; those changes are then applied to the actual environment.
As it relates to telecommunications networking, Git and GitOps streamline the deployment and management of network configurations and services. Software engineers can use these tools for configuration management, automation and orchestration, collaboration, and traceability. So, while Git and GitOps are not specific to telecoms, they can be applied to manage and automate networks, making networks more efficient and reliable.
- FluxCD is an open-source continuous delivery tool that follows GitOps principles. It’s used to automate application deployment and infrastructure configurations based on definitions stored in a Git repository.
- Kubernetes is an open-source container orchestration platform used to automate deployment, scaling and management of containerized applications.
FluxCD is tightly integrated with Kubernetes and provides GitOps capabilities for managing Kubernetes clusters. In the context of telecommunications networking, FluxCD and Kubernetes facilitate infrastructure-as-code, so network configurations, services and policies can be version-controlled in Git repositories. Kubernetes supports automation and scaling of deployment and management of network services, and FluxCD automates the continuous delivery of those services. And GitOps workflows with FluxCD can easily be rolled back to previous configurations if issues or failures come up, leading to a more resilient network.
Now, how does all of the above apply to network slicing?
With the shift to 5G Standalone and cloud native, “Network engineers are about to become software engineers”
In a blog contributed to the Cloud Native Computing Foundation, Orange Software/Cloud Expert for Network Services David Blaisonneau and DevSecOps Engineer Sylvain Desubreaux described the company as “undergoing a major transformation…with the goal of becoming a software-based telco that harnesses the full potential of automation, AI and data, and drives efficiencies in power consumption and cost with the right operating models.” As that relates to 5G Standalone and delivering products as a service—network slicing—, the company integrated its 5G Standalone network services into a Kubernetes cloud-native infrastructure and used GitOps for infrastructure automation and software development approach.
The team from Orange, in the blog, laid out the process of creating a network slice in a manner that solved a key challenge in that, because it operates in multiple countries, the company has a need to customize for geography and for users. The solution they developed lets Orange “deploy a common but customized 5G service to a large set of targets, and to allow the extension and specification of it in time.”
“We moved from three hour-plus deployments/upgrades/tests to 15 [minute] maximum reconciliation (and usually less than [five] minutes) thanks to GitOps and Kubernetes,” Blaisonneau and Desubreaux wrote. “Developer feedback is then greatly improved, and we now deploy several releases a day compared to a few a month before in production.”
Here’s how: Orange’s engineers started with the “one-time per platform” step of using Terraform or Ansible to deploy the underlying infrastructure, Kubernetes clusters, networks, etc…Terraform is infrastructure-as-code software from HashiCorp that lets users provision and manage cloud infrastructure. Ansible is a similar open source tool from Red Hat. Next they install FluxCD and prepare external services like AWS route53, a domain name system for customized, low-latency routing policies. “Then all deployments come from the first FluxCD application, which lists all other Flux CD applications to be launched.”
The blog authors continued: “The way we deploy the different applications and configurations uses a ‘Russian doll’ model: a main Git repository hosts a description of applications/[cloud native network function] definitions of clusters and also a description of the dedicated Git configuration repository.”
The writers called Git “the real cornerstone of the solution,” and reiterated best practices “as network engineers are about to become software engineers too…It’s certainly mainstream in a lot of other industries, but we need to make it a basic everyday tool as well as shift from imperative to declarative to extend our automation reach like we do for 5G SA deployment.”
Final thoughts from Blaisonneau and Desubreaux: GitOps is a “game changer regarding our relationships with our traditional vendors especially in the 5G area. Telcos across the board are keen to leverage the advantages in automation, operational and cost efficiencies cloud native brings to the market and therefore want to undergo a cloud native transformation.” This requires, they wrote, cloud native code repositories that are compatible with GitOps. Looking ahead, this approach “will lead us toward a new operational model where resiliency and reliability are being redefined.”