CNCF Landscape

CNCF Landscape

What challenges we face when we open the cncf landscape . It really looks scary . But after reading this blog , it would be easy for you to navigating it .

What is Cloud Native ?

It is most primarily approach towards the building and deploying applications on the servers .

As you know , to secure the applications we use various cloud native tools and technologies that are also present in the landscape .

What is CNCF ?

CNCF (Cloud Native Computing Foundation ) is the open source , vendor-neutral hub of cloud native computing , hosting projects to make cloud-native sustainable.

What are the different types of projects ?

There are basically three major categories where the projects grouped :

• Sandbox

• Incubating

• Graduated

SANDBOX PROJECTS : Sandbox is like the experimental projects where you have all your ideas 💡 and they are not ready .All the ideas like all the innovation and creativity happening in it .

INCUBATING PROJECTS : Once all the sandbox projects are reviewed by the specific tag like technical advisory group and after while when certain requirements satisfied ,then it moved into incubation . Now , incubation projects are run by a small number of users and it's in steady state .

GRADUATED PROJECTS : After while the projects will mature and it become more and more stable and having large number of contributors like kubernetes and Prometheus and then they fall into the graduated projects .

There is one more category of projects called Archived projects. Any project that has been archived can be reactivated into CNCF through the normal project proposal process. The archived project will be hosted under the Linux Foundation, and maintainers are welcome to continue working on the project if they wish to do so.

"CNCF LANDSCAPE"

The goal of cloud native landscape is to compile and organize all the cloud native open source projects into categories . This makes it easy for us to navigate through landscape. Organizations can also a submit pull request and get your projects added in the landscape.

"Navigate CNCF LANDSCAPE"

When you looking at the landscape ,you'll note a few distinctions :

• Projects in large boxes are CNCF hosted open source projects . Some are still in the incubation phase (light blue / purple frame) , while others are graduated .

• Projects in small white boxes are open source projects.

• Projects in gray boxes are proprietary projects.

navigate cncf landscape 1pic.png

When you click on a particular project , you know more information about that project like

• Project info from GitHub

• Funding info from Crunchbase

• Market cap data from Yahoo Finance

• Best practices

• Mailing list and slack channel

So , when we comes to the navigation . There are different criteria to formalize the landscape .

App Containerization : So, first is app containerization .Whenever we deploy the application, we have to firstly containerize it . For this , we need some build tools and that are in App Containerization Section.

App Containerization app containerization.png

Infra provisioning : So , after you containerize the application , then you decide in which particular cloud you want to deploy your application like AWS , Civo , Google etc and then there are different infrastructure as code called provisioning that gives you power of defining your infrastructure in automated way .We have amazing tools like Terraform , pulumi etc that helps us to define our whole infrastructure in minutes.

Infra Provisioning infra provisiong.png

Container Orchestration : Now , you picked up the cloud ,created all the resources like network storage etc . Now , you actually want a container orchestrator because you have your containerized application or the microservices that you want to deploy to a orchestrator engine like Kubernetes.

Container Orchestration

container orchestrartion.png

Security and Compliance : You have to thinking about security from day zero .We have to be secured cloud , security at cloud level cluster , container level and code level. So ,We can implement the security with different cloud native tools.

Security and Compliance

security and compliance.png

These are the some block of projects inside the whole massive landscape .

So , when you do orchestration part ,there are three major things to decide i.e. CRI , CNI , CSI .

cri ssi cni.png

CRI stands for container runtime interface. Basically , which runtime you will be using like container d , docker ,cri-o etc and for runtime different cloud-native tools are present.

CNI stands for container network interface . So ,without network our orchestration will not work , so we need a CNI solution .For that cilium , flannel like projects are present .

CSI stands for container storage interface. For csi , tools like longhorn ,CubeFS , portworx, ZENKO etc are present .

Now ,in landscape next is Observability and Analysis.

observaliblituy and analusis.png

There are four pillars in Observability and Analysis are MONITORING , TRACING , LOGGING , PROFILING .

For Monitoring ,there are tools like Prometheus , cortex , Thanos etc are present .

For Tracing , there are tools like EaseAgent , Grafana Tempo , ZIPKIN etc are present.

For Logging , there are tools like logstash , Pandora ,graylog etc are present.

There are some projects fall into the category of GitOps , Policy and Service Mesh .

In GitOps , projects like Argo ,Flux etc are present.

In Policy , projects like Kyverno , kubewarden etc are present.

In Service Mesh , projects like Linkerd , kuma ,Istio etc are present. When our project will be scaling and maturing then we will looking at the microservice mesh.

service mesh.png

Now ,you can find a project match with your requirements with project specifications.

Shout-out to Saiyam Pathak ,Divya Mohan ,Savita Raghunathan , Kunal kushwaha for provide such great insights .

tania cncf.jpg