-
My friend: Hi Ibrahim, I have a question for you.
- Me: Go ahead, please.
-
My friend: I am hearing the term “Cloud-Native” many times, but I can’t understand what does it mean exactly, could you shed some light on it?
- Me: Sure. Cloud-Native refers to the way that the applications, like the 5G network functions in RAN and core, were built, deployed, and maintained. So, these applications are inherently built to be used over the Cloud, so it uses microservices and containers and is not a monolithic application with a single block structure that contains all the functionalities.
-
My friend: But why we are going for Cloud-Native applications instead of monolithic applications?
- Me: Let me give you an example. Let’s assume that we have a 5G SW update for one 5G DU, this new SW update should update the 5G CA functionality to have three 5G carriers aggregated together instead of two 5G carriers only. If the SW is originally done in the monolithic way, that means the whole DU functions (L1-high, MAC and RLC) will be updated as we have one SW that has all these functions together and so availability will be affected during this SW upgrade using the monolithic approach. But if the Cloud-Native approach is used, that means all the 5G DU functions will be distributed into different, small, independent microservices and each microservice will contain one function, so here in this case the microservice of the 5G CA function will be the only one which will be updated. Even, what you will do is just creating a new container with the new microservice and just make the system refer to it instead of the old microservice and so we almost have zero down-time, and the impact of the service availability will be much less.
-
My friend: WoW, this is amazing. But are there any other benefits for Cloud-Native?
- Me: Yes, Cloud-Native can help into increasing efficiency, scalability, flexibility, and reducing cost. Also, we can have faster delivery of services which means lower TTM (time to market), automation of manual processes, and minimized risk of vendor lock-in.
-
My friend: So, we can say that Cloud-Native means containers and microservices only?
- Me: No, let me borrow the definition of the CNCF (Cloud Native Computing Foundation) which is an open-source foundation that helps organizations kick start their Cloud-Native journey and supports the open-source community in developing critical Cloud-Native components, including Kubernetes. So, CNCF lists immutable infrastructure, microservices, declarative APIs, containers, and service meshes as the technological blocks of Cloud-Native architecture, so by combining all these technologies with CI/CD, automation, and orchestration, we can make high-impact changes frequently and predictably with minimal effort.
-
My friend: Thank you very much.
- Me: You are welcome.
LinkedIn: