Skip to main content

KCNA Ep 1: CNCF Ecosystem & Cloud Native Architecture

Rachmat Hidayat
Author
Rachmat Hidayat
Learn & sharing insights on TypeScript, Go, Kubernetes, DevOps, DevSecOps, SRE, Platform Engineering, AI/ML Engineering, and MLOps.
kubernetes-certification-path - This article is part of a series.
Part 101: This Article
The Kubernetes and Cloud Native Associate (KCNA) exam is a multiple-choice certification designed to test your foundational knowledge of the cloud-native ecosystem. In this first episode, we explore the CNCF landscape, cloud-native architecture patterns, and containerization principles.

TL;DR (Quick Summary)
#

  • Cloud Native Definition: Building and running scalable applications in dynamic environments such as public, private, and hybrid clouds using containers, service meshes, microservices, and declarative APIs.
  • CNCF Project Maturities: Sandbox (experimental) -> Incubating (growing adoption) -> Graduated (production battle-tested).
  • Core Pillars: Immutable infrastructure, microservices, containerization, and automated orchestration.

1. Cloud Native Architecture vs Traditional Monoliths
#

graph LR
    subgraph Monolith ["Monolithic Architecture"]
        M1["UI + Business Logic + Database Access
(Single Tightly-Coupled Binary)"] end subgraph CloudNative ["Cloud Native Architecture"] CN1["Auth Service
(Container)"] CN2["Payment Service
(Container)"] CN3["Order Service
(Container)"] CN1 <--> CN2 CN2 <--> CN3 end

Monolithic Architecture
#

In a monolith, all software components (user interface, authentication, business logic, payment processing, database handlers) are bundled together into a single codebase and deployed as a single executable artifact on physical or virtual servers.

  • Drawbacks: Single point of failure, slow build/deploy cycles, difficult to scale individual functions independently.

Cloud Native Architecture
#

Cloud native applications are broken down into small, independent, loosely-coupled services (microservices) packaged inside lightweight containers.

  • Benefits:
    • High Availability: A crash in the payment service does not bring down the entire system.
    • Independent Scalability: Scale out only the busy order service during peak sales without wasting resources on idle services.
    • Immutable Infrastructure: Servers and containers are never updated in-place; failed or outdated instances are destroyed and replaced with fresh, predictable containers.

2. CNCF Project Maturity Levels
#

The Cloud Native Computing Foundation (CNCF) hosts hundreds of open-source projects. To help organizations evaluate software stability, CNCF categorizes projects into three distinct maturity tiers:

graph TD
    A["1. Sandbox
(Experimental / Early Stage)"] --> B["2. Incubating
(Production Adoption / Governance)"] B --> C["3. Graduated
(Enterprise Standard / Battle-Tested)"]
  1. Sandbox Stage:

    • Early-stage experimental projects entering the CNCF ecosystem.
    • Focus: Fostering innovation and experimentation.
    • Examples: WasmEdge, Dapr (early).
  2. Incubating Stage:

    • Projects showing active production adoption, clear governance, and a growing community of maintainers.
    • Requirements: Meets security requirements and demonstrates successful real-world deployments.
    • Examples: Cilium (recently graduated), Keda, Backstage, Cert-Manager.
  3. Graduated Stage:

    • Enterprise-grade, battle-tested projects that serve as industry standards.
    • Requirements: Completed independent security audits, documented governance, and widespread production usage across major tech enterprises.
    • Core Graduated Projects: Kubernetes, Prometheus, Envoy, Helm, ArgoCD, Containerd, Harbor, CoreDNS.

3. Containerization Principles & OCI Standards
#

To run applications reliably across public cloud providers (AWS, GCP, Azure) and on-premise datacenters, the industry uses standardized container formats governed by the Open Container Initiative (OCI).

  • OCI Image Specification: Defines how a container image archive is packaged into multi-layer tarballs containing root filesystems and execution manifests.
  • OCI Runtime Specification: Defines how a container runtime (like runc) unpacks and executes container processes using Linux kernel features (namespaces for isolation, cgroups for resource limits).

Container Runtimes: High-Level vs Low-Level
#

graph TD
    A["Kubernetes Kubelet"] -->|CRI gRPC API| B["High-Level Runtime
(containerd / CRI-O)"] B -->|Calls OCI Spec| C["Low-Level Runtime
(runc / crun / gVisor)"] C -->|Creates Linux Namespaces & CGroups| D["Running Container Process"]
  • CRI (Container Runtime Interface): The gRPC API that allows Kubernetes kubelet to talk to any compliant high-level runtime.
  • High-Level Runtime (containerd, CRI-O): Manages image pulling, unpacking, local storage, and network interface attachments.
  • Low-Level Runtime (runc): Directly interacts with the Linux kernel to create namespaces (PID, NET, MNT, IPC) and cgroups (CPU, Memory).

4. Key KCNA Exam Practice Questions
#

Question 1
#

Which CNCF project maturity level represents enterprise-grade software that has passed independent security audits and achieved widespread production adoption?

  • A) Sandbox
  • B) Incubating
  • C) Graduated (Correct)
  • D) Archived

Rationale: Graduated projects are the highest tier in the CNCF, proving enterprise readiness and passing third-party security audits.

Question 2
#

What component defines the standard gRPC interface between the Kubernetes Kubelet and container runtimes?

  • A) OCI (Open Container Initiative)
  • B) CRI (Container Runtime Interface) (Correct)
  • C) CNI (Container Network Interface)
  • D) CSI (Container Storage Interface)

Rationale: CRI specifies the interaction protocol between kubelet and high-level container runtimes like containerd and CRI-O.


Summary & Next Steps
#

In this episode, we covered:

  • The fundamental shift from Monolithic to Cloud Native microservice architectures.
  • CNCF project maturity tiers (Sandbox, Incubating, Graduated).
  • Container standards: OCI, CRI, and the roles of containerd and runc.

In KCNA Episode 2: Kubernetes Fundamentals & Architecture, we will examine the Control Plane components (kube-apiserver, etcd, kube-scheduler, kube-controller-manager) and Worker Node agents!

kubernetes-certification-path - This article is part of a series.
Part 101: This Article