CNCF has an official definition of cloud native technologies:
Cloud-native technologies empower organizations to build and run scalable applications in modern, dynamic environments such as public, private, and hybrid clouds. Containers, service meshes, microservices, immutable infrastructure, and declarative APIs exemplify this approach.
These techniques enable loosely coupled systems that are resilient, manageable, and observable. Combined with robust automation, they allow engineers to make high-impact changes frequently and predictably with minimal toil.
For modern application, the twelve-factor application advocacy is widely accepted. In a dynamic environment, all workloads (e.g. Pods) are ephemeral. These define our best practices when building microservices, with the goal of a loosely coupled system for resiliency, manageability, and observability. The adoption of microservices also has an impact back to the organization structure, an example of Conway’s law.
The cloud native stack looks like this:
|CI/CD||Application Architect: Microservice||Declarative API|
|Service Governance: Service Mesh|
|Deployment: Immutable infrastructure|
|Runtime: Container and Container Orchestration|
New technologies are born at an unprecedented rate in each layer. Check out what the landscape looks like today.
Read more about cloud native technologies:
- Knative Eventing Introduction - In the previous post, I mentioned that Knative Serving and Knative Eventing should be seen as two different projects. The former is supposed to be widely used as a serving layer for microservices, whereas the latter has a narrower customer base. There are a dozen companies who need to build… ... Read moreKnative Eventing Introduction
- Knative Serving Introduction - Background As per IBM's definition, Knative enables serverless workloads to run on Kubernetes clusters, and makes building and orchestrating containers with Kubernetes faster and easier. It has drawn a lot of attention recently. It released version 1.0 in November 2021, and was accepted as a CNCF incubating project in March… ... Read moreKnative Serving Introduction
- Kubernetes Operator - Kubernetes has a number of tools to automate the deployment of a single workload. In previous posts, we had covered Helm and Kustomize. What are left unresolved is how to maintain the status of workload after deployment is completed. In this post, I will give an introduction to Kubernetes Operator.… ... Read moreKubernetes Operator
- Autoscaling on Kubernetes Platform - Introduction The concept of autoscaling on Kubernetes platform dates from the era where virtualization first became widespread and the overhead of provisioning a new server became lightweight through the use of cloud-init. With public cloud, customers operate on usage-based billing. Autoscaling allows workload to scale down during idle times to… ... Read moreAutoscaling on Kubernetes Platform
- Istio Operation Gotchas - In this post I discuss a few aspects when putting istio in operation. Installation Istio installation can be confusing, due to architectural and guideline changes as well as renaming of operator CRDs since its release, and especially since 2020. This left lots of information outdated on the web, adding to… ... Read moreIstio Operation Gotchas
Contact Digi Hunch for Professional Services.