The first thing we think when we hear about Cloud native is its technologies that help build and run scalable and secure applications in the cloud. It is an approach to building and running applications that exploit advantages of the cloud computing model. Using this architecture when organizations build and operate their applications, they bring all new ideas to the table, operate faster in the market, and help with customer’s demands and needs more quickly. Basically, it tells us how apps are created, developed, coded, deployed instead of where all of these things are done. In fact, the CNCF defines “cloud-native” a little more narrowly, to mean using open source software stack to be containerized, where each part of the app is packaged in its own container, dynamically orchestrated so each part is actively scheduled and managed to optimize resource utilization, and microservices-oriented increase the overall agility and maintainability of applications.
Containers, secure mesh, microservices, declarative API’s these all exemplify this approach. The shift to cloud computing started a few years ago and one of the most exciting outcomes that came out of this shift towards cloud computing is the innovation that is built on Kubernetes. Solving challenges and showcasing the solutions in front of the world is what Google does and on this value all the open-source software projects like Kubernetes, Knative, gVisor, Kubeflow, Istio, Gatekeeper, Krew thrives. These are the some of the important platforms on which the future of Cloud-native is build.
Kubernetes is a portable, extensible, open-source platform for managing containerized workloads and services, that facilitates both declarative configuration and automation. It has a large, rapidly growing ecosystem.
Istio is an open source independent service mesh that provides the fundamentals you need to successfully run a distributed microservice architecture. Istio reduces complexity of managing microservice deployments by providing a uniform way to secure, connect, and monitor microservices.
Knative (pronounced kay-nay-tiv) is an open source community project which adds components for deploying, running, and managing serverless, cloud-native applications to Kubernetes. The serverless cloud computing model can lead to increased developer productivity and reduced operational costs.
gVisor is an open-source, OCI-compatible sandbox runtime that provides a virtualized container environment. It runs containers with a new user-space kernel, delivering a low-overhead container security solution for high-density applications.
Kubeflow is a free and open-source machine learning platform designed to enable using machine learning pipelines to orchestrate complicated workflows running on Kubernetes. Kubeflow is a platform for data scientists who want to build and experiment with ML pipelines. Kubeflow is also for ML engineers and operational teams who want to deploy ML systems to various environments for development, testing, and production-level serving.
Gatekeeper is a customizable admission webhook. It allows cluster administrators and security practitioners to develop, share and enforce policies and config validation via parameterized, easily configurable constraint CRDs. Constraints are portable and could also be used to validate commits to the source-of-truth repo in CI/CD pipelines.
Krew is a plugin manager for kubectl that helps users discover and install kubectl plugins to improve their kubectl experiences. Originally developed at Google, Krew is now a part of Kubernetes SIG CLI.
Building cloud-native apps on top of Kubernetes isn’t some abstract, aspirational goal but it just means a new way of doing things, which means breaking old habits as you learn the new ways. Hence, we no longer would say that the future is ahead of us because the future is NOW!!