As telcos look for new ways to compete in the market and release new products and services to their subscribers, agility, efficiency and speed is vital. In this blog, we’ll explore the process of deploying our cloud-native IMS solution and the critical role that automation plays in the process.
It was around 1 am…the time when most people are asleep. For me, however, this time means low network traffic and the perfect time to perform upgrades on network functions providing critical services.
I watched my laptop screen closely, hoping to avoid finding any issues during the upgrade process of a Call Session Control Function (a network function in the IMS). There was no room for error, as one mistake could impact millions of subscribers. I wanted simpler, better, faster….
The above was a common experience in my past working career. However, you will be glad to know that there is a positive outcome.
A few months ago, I surprised myself by deploying ng-voice’s IMS over a coffee break. I ran a few commands using Helm, got my coffee, and before I knew it, in less than 10 minutes, the entire IMS solution was deployed in ng-voice’s lab. The summary of this breakthrough is one keyword: cloud-nativity.
Understanding cloud-native principles
Cloud-nativity is more than just deploying software in the cloud. It is a broad term that incorporates many capabilities. At ng-voice, there are several key cloud-native principles that we adhere to:
- Infrastructure-agnostic: The IMS core can be deployed on any cloud or bare metal thanks to Kubernetes-based container architecture
- Balances load: The solution provides load balancing and service-discovery
- Self-healing: Active monitoring to identify and replace failed components to maintain availability
- CI/CD: Automation throughout the integration, delivery and deployment pipelines
- Automatic scaling: Recognizes load continuously and adapts necessary capacity accordingly
So, how do these principles work together to enable our IMS solution to be so easily deployed?
ng-voice’s software is based on a greenfield microservices design, meaning that the system is developed from scratch without the restrictions of legacy infrastructure. This allows us to provide a truly personalized solution, avoid the constraints of monolithic software and ensure we can leverage small-sized containers to maximize efficiency and scalability.
We also prioritize using a DevOps approach from the start, which encourages faster, more streamlined development and deployment. A crucial part of our DevOps approach is ensuring efficient software lifecycle management through the CI/CD pipeline, bringing developers and IT operations teams together to deploy software more efficiently. The diagram below outlines how our CI/CD pipeline works:
Although it’s possible to manually execute each of the above steps of the CI/CD pipeline, the true value of CI/CD pipelines is realized through automation. With automation as the backbone, the threat of human error is minimized, and a constant process for the testing and release of software can be maintained.
Benefits to MNOs, MVNOs, and Private Networks
Automation brings several benefits to the telecoms industry by deploying cloud-native solutions:
- Cost-effectiveness: Automation reduces the time to manage and deploy applications thereby maximizing efforts. This is of particular benefit to MVNOs, as they typically have smaller economies of scale, so maximizing their return on investment is critical
- Increased efficiency: Through end-to-end automated pipelines, features and software updates are ready for delivery faster and deployed faster. Pre-defined scripts and pipelines ensure that quality is reached in an optimal timeline
- Scalability: By introducing an automated, cloud-native solution, network operators of all sizes can deploy new services and products quickly and simply, to meet changing subscriber demands and compete in the market. Furthermore, ng-voice’s IMS can be automatically scaled based on traffic demands
While the benefits are clear, how do they translate in a real-life setting? Here we bring two different deployment use cases.
Use case 1: Google Cloud
The deployment of our IMS solution in the Google Kubernetes Engine (GKE) is a clear example of just how much difference automation can make. GKE provides a managed environment for deploying, managing, and scaling containerized applications using Google infrastructure. The GKE environment consists of multiple applications, grouped together to form a cluster, managed by Kubernetes. If one application goes down and another needs to start, Kubernetes will interact with the cluster to ensure this can effectively take place.
Deploying ng-voice’s IMS core in the GKE is extremely simple. We recently timed one of our Cloud Engineers and it took under ten minutes to carry out the following steps:
- Install Kubernetes cluster of 3 nodes
- Add docker repository credential to the default namespace
- Deploy all of the network functions using Helm file in one command
- Glance back at your laptop and you’ll see that all the components are up and running, ready to connect to your core network
- Sit back and enjoy your calls!
Use case 2: Bare metal
But deployment in the GKE isn’t the only environment that showcases the benefits of our solution. These can also be seen in a bare metal environment too.
- The deployment kicks off with the host provisioning stage, of which the timeline depends on the customer
- From here, host preparation takes up to fifteen minutes
- In another fifteen minutes, the Kubernetes cluster is created
- The final step, which is installing the network functions, can be in five to ten minutes per network function
- The IMS core is up and running in a bare metal environment
Share this article via:
Customer Solution Architect
Elijah has vast experience in the industry working for companies such as Vodacom South Africa and Vodafone Turkey.
In his previous roles, Elijah deployed VoLTE interconnected networks and developed a Core network strategy and evolution, resulting in better service quality for customers.
Elijah brings his skills in IMS, Packet Core, Voice Core, and QoS to ng-voice to design solutions and evolve our portfolio based on customer needs.