Skip to content

01 KCNA

The Kubernetes and Cloud Native Associate (KCNA) certification is designed for learners who want to build a strong foundation in:

Cloud-Native Computing
Containers
Kubernetes
Application Delivery
Observability
Cloud-Native Security

KCNA is a good starting point before moving into more hands-on Kubernetes certifications such as:

CKA
CKAD
CKS

The main goal at this stage is not deep cluster administration.

It is to understand:

What Kubernetes is
Why organizations use it
How its major components work
How cloud-native applications are deployed
How modern platforms are observed and secured

The certification journey in this path is:

KCNA
CKA
CKAD
CKS

From a security-career perspective:

Cloud-Native Fundamentals
Kubernetes Fundamentals
Administration Skills
Security Engineering

KCNA is useful for:

Students
Fresh Graduates
Cloud Beginners
Junior DevOps Engineers
Platform Engineering Beginners
Security Professionals New to Kubernetes
Technical Support Engineers

It can also help professionals who work around Kubernetes but are not yet responsible for administering clusters directly.

At this stage, focus on understanding relationships.

Instead of memorizing:

Pod
Service
Deployment
Container

understand how they connect:

Container Image
Pod
Deployment
Service
Application Access

That relationship-based understanding becomes important later when troubleshooting and securing Kubernetes.

Before Kubernetes, understand what cloud-native means.

Cloud-native systems are commonly designed around ideas such as:

Containers
Microservices
Automation
APIs
Elastic Infrastructure
Declarative Configuration
Observability

A traditional application may look like:

Large Application
Single Server
Manual Deployment
Manual Scaling

This can work, but modern systems often require greater flexibility.

A cloud-native application may look like:

Frontend
API
Backend Services
Database

Individual components can be:

Deployed Independently
Scaled Independently
Updated Independently

Organizations adopt cloud-native architectures for reasons such as:

Scalability
Automation
Resilience
Faster Deployment
Portability
Developer Productivity

A microservices architecture divides application functionality into smaller services.

Example:

Online Store
├── User Service
├── Product Service
├── Order Service
├── Payment Service
└── Notification Service

Each service performs a focused function.

Potential benefits include:

Independent Deployment
Independent Scaling
Clear Service Boundaries
Technology Flexibility

They also create complexity around:

Networking
Identity
Observability
Service Discovery
Security
Data Consistency

Kubernetes helps manage some of this operational complexity.

Containers package applications together with the dependencies they require.

Application Code
Container Image
Container Registry
Container Runtime
Running Container

An image is a packaged artifact used to create containers.

It may contain:

Application
Runtime
Libraries
Configuration

A container is a running instance of an image.

Conceptually:

Image
Start
Container
Virtual Machine Container
Includes guest OS Shares host kernel
Typically heavier Typically lighter
Slower startup Faster startup
Strong VM boundary Process-level isolation model
Hypervisor based Container runtime based

Images are commonly stored in registries.

Flow:

Developer
Build Image
Registry
Deployment Platform

Always ask:

Who created the image?
What software is inside it?
Is the image trusted?
Does it contain vulnerabilities?
Does it contain secrets?

Containers solve application packaging.

But organizations may need to run:

Hundreds
Thousands
or More

containers.

Managing these manually becomes difficult.

Organizations need:

Scheduling
Scaling
Recovery
Networking
Configuration
Updates

Kubernetes provides orchestration for these workloads.

Container orchestration means managing containers across infrastructure.

Kubernetes can help with:

Deployment
Scheduling
Scaling
Service Discovery
Recovery
Configuration
Resource Management

A core Kubernetes concept is:

Desired State

You describe how the environment should look.

Kubernetes continuously works toward that state.

Example:

Desired:
3 Application Pods

If one Pod fails:

3 Pods
1 Fails
2 Running
Kubernetes Creates Replacement
3 Running

Instead of manually issuing every operational action, you define the desired configuration.

Conceptually:

Desired Configuration
Kubernetes API
Controllers
Actual Environment

A Kubernetes environment is called a:

Cluster

A cluster generally includes:

Control Plane
Worker Nodes
Kubernetes Cluster
├── Control Plane
│ ├── API Server
│ ├── Scheduler
│ ├── Controllers
│ └── Cluster State
└── Worker Nodes
├── Node Components
├── Container Runtime
└── Pods

The control plane manages the cluster.

Think:

Control Plane
Makes Decisions
Worker Nodes
Run Workloads

The API server is a central Kubernetes component.

Administrative requests commonly flow through it.

User / Automation
Kubernetes API
Cluster Resources

The Kubernetes API is a critical security boundary because it can control:

Workloads
Permissions
Secrets
Networking Configuration
Cluster Resources

The scheduler determines where workloads should run.

Conceptually:

New Pod
Scheduler
Select Appropriate Node

The scheduler may consider factors such as:

Available Resources
Placement Requirements
Node Conditions
Scheduling Rules

Controllers continually compare:

Desired State
vs
Actual State

Then take action when they differ.

Kubernetes needs a consistent representation of cluster configuration and state.

Security implications include protecting:

Cluster Configuration
Credentials
Sensitive Resource Data

Worker nodes run application workloads.

Conceptually:

Worker Node
├── Kubernetes Node Components
├── Container Runtime
└── Pods

Later security work will examine:

Node Hardening
Runtime Security
Patch Management
Access Control

The Pod is one of the most important Kubernetes concepts.

A Pod is the smallest commonly deployed Kubernetes workload unit.

Pod
├── Container
└── Shared Pod Resources

A Pod can contain more than one container where the design requires it.

Kubernetes typically manages:

Pods

rather than individual containers as isolated scheduling units.

Pods are generally considered replaceable.

Think:

Pod Fails
Replacement Pod Created

rather than:

Repair the Same Pod Forever

Kubernetes workloads are designed around:

Replace
Reconcile
Automate

rather than manually repairing individual instances.

A Deployment manages application replicas and rollout behavior.

Example:

Deployment
ReplicaSet
Pods

Example:

Desired Replicas:
3

Kubernetes attempts to keep:

Pod 1
Pod 2
Pod 3

running.

A Deployment can change:

3 Pods
5 Pods

to handle increased demand.

Deployments can support controlled application updates.

Conceptually:

Version 1 Pods
Gradual Replacement
Version 2 Pods

This helps reduce service interruption.

ReplicaSets help maintain a desired number of Pods.

Relationship:

Deployment
ReplicaSet
Pods

In many normal workflows, users interact primarily with Deployments rather than manually managing ReplicaSets.

Namespaces logically organize Kubernetes resources.

Example:

Cluster
├── Development Namespace
├── Testing Namespace
├── Production Namespace
└── Security Namespace

Namespaces can help with:

Organization
Access Control
Resource Separation
Policy Scope

Namespaces should not automatically be treated as complete security boundaries.

Additional controls may still be required, including:

RBAC
Network Policies
Admission Policies
Workload Security

Labels provide metadata used to organize and identify resources.

Conceptually:

Pod
Label:
app=frontend

A selector can identify resources matching that label.

Example:

Selector:
app=frontend

Labels are used throughout Kubernetes for:

Service Selection
Deployment Management
Scheduling
Policy
Organization

Pods may be replaced and their network identities can change.

Applications therefore need a stable way to reach workloads.

A Kubernetes Service provides this abstraction.

Client
Service
Pod 1
Pod 2
Pod 3

The Service commonly identifies backend Pods through labels.

Service
Selector
Matching Pods

Services provide:

Stable Application Access
Load Distribution
Service Discovery

Kubernetes networking connects:

Pods
Services
Nodes
External Clients
Client
Ingress / External Entry
Service
Pod

Applications may require communication such as:

Frontend
Backend
Database

Later, this becomes a security question:

Should every Pod communicate
with every other Pod?

Usually, the desired model is:

Only Required Communication

This leads to Kubernetes NetworkPolicies.

Applications need to locate other services.

Instead of hardcoding changing Pod addresses:

Application
Service Name
DNS
Kubernetes Service

This supports dynamic environments.

Ingress commonly provides controlled HTTP/HTTPS routing into applications.

Conceptually:

Internet
Ingress
Service
Pods

Ingress may support routing based on:

Hostname
Path
TLS

Ingress is an important security point because it may handle:

External Exposure
TLS
Application Routing

Applications require configuration.

Kubernetes commonly separates configuration from application images.

ConfigMaps can hold non-sensitive configuration.

Examples:

Application Mode
Feature Setting
Service Endpoint
ConfigMap
Application Pod

Benefits include:

Reusable Images
Environment-Specific Configuration
Easier Deployment Management

Applications also require sensitive information.

Examples:

Passwords
Tokens
API Keys
Certificates

Kubernetes provides Secret resources for managing sensitive values within its resource model.

Do not assume:

Kubernetes Secret
=
Automatically Fully Protected

Security still depends on:

RBAC
Storage Protection
Secret Distribution
Logging
Rotation
Workload Access

If a user can read sensitive Secrets:

Secret Access
Credential Access
External System Access

This becomes important in CKS-level security.

Containers are often temporary.

But applications may require persistent data.

Kubernetes provides storage concepts such as:

Persistent Volume
Persistent Volume Claim
Storage Class
Application
Persistent Volume Claim
Persistent Storage

A Persistent Volume represents storage available to the cluster.

A workload requests storage through a claim.

Conceptually:

Pod
PVC
PV
Storage

Security questions include:

What data is stored?
Who can access it?
Is it encrypted?
Where is it physically or logically hosted?
How is it backed up?

Part 17 — Stateful vs Stateless Applications

Section titled “Part 17 — Stateful vs Stateless Applications”

A stateless application does not depend on local instance data.

Example:

Web Frontend

Instances can often be replaced more easily.

A stateful application maintains important data.

Examples:

Database
Message Platform
Stateful Processing System

Stateful systems require careful attention to:

Storage
Identity
Backup
Recovery

Not all workloads run continuously.

A Job runs work intended to complete.

Example:

Data Processing Task

A CronJob schedules recurring work.

Example:

Nightly Backup Task

Scheduled workloads also require security review.

Ask:

Which identity do they use?
What resources can they access?
What secrets do they receive?

Applications consume:

CPU
Memory

Kubernetes allows workloads to define resource expectations.

Requests describe resources a workload expects.

Limits restrict resource consumption.

Conceptually:

Request
Scheduling Decision
Limit
Maximum Resource Usage

Without good resource management:

One Workload
Consumes Excessive Resources
Impacts Other Workloads

This can affect reliability and security.

The scheduler decides where Pods should run.

Basic decision:

Pod
Requirements
Available Nodes
Selected Node

Later you may encounter:

Node Selectors
Affinity
Anti-Affinity
Taints
Tolerations

At KCNA level, understand why placement controls exist.

Taints can discourage or prevent workloads from being scheduled onto particular nodes unless they tolerate the taint.

Conceptually:

Special Node
Taint
Only Approved Workload
with Toleration

This can help dedicate nodes for specific purposes.

Cloud-native systems require visibility.

Observability commonly includes:

Logs
Metrics
Traces

Logs answer:

What happened?

Metrics answer:

How is the system behaving?

Examples:

CPU Usage
Memory Usage
Request Rate
Error Rate

Tracing helps understand how requests move across distributed systems.

Example:

User Request
Frontend
API
Payment Service
Database

Without visibility:

Failure Occurs
No Evidence
Slow Troubleshooting

With good observability:

Failure
Telemetry
Analysis
Root Cause

Observability also supports:

Detection
Investigation
Incident Response

Kubernetes needs to determine whether applications are working correctly.

Common health concepts include:

Startup
Readiness
Liveness

Answers:

Can this workload receive traffic?

Answers:

Is this workload still functioning?

Helps accommodate applications that require additional startup time.

Health checks help Kubernetes make better recovery and traffic-management decisions.

Modern cloud-native applications often use automated delivery.

A simplified pipeline:

Developer
Source Control
Build
Test
Container Image
Registry
Kubernetes

Continuous Integration commonly focuses on:

Build
Test
Validate

Continuous Delivery or deployment focuses on delivering changes toward production environments.

Security should become part of this lifecycle:

Code
Security Checks
Image
Security Checks
Deployment Policy
Runtime Monitoring

This becomes important in DevSecOps and CKS.

GitOps commonly uses version-controlled declarative configuration as a source for platform changes.

Conceptually:

Git Repository
Desired Configuration
Automation
Kubernetes

Potential benefits include:

Version History
Review
Consistency
Automation
Rollback Support

If Git controls production configuration, repository security becomes critical.

Ask:

Who can modify production configuration?
Who approves changes?
How are credentials protected?

Cloud-native environments may automatically adapt to workload demand.

Conceptually:

Traffic Increases
Resource Demand Increases
Additional Capacity

Kubernetes supports different scaling patterns depending on architecture and implementation.

At KCNA level, understand the purpose of elasticity.

Cloud-native systems should be designed to tolerate failure.

Remember:

Failure Is Expected

Kubernetes supports recovery through reconciliation.

Example:

Pod Failure
Controller Detects Difference
Replacement Created

Production platforms may distribute workloads and control-plane components to reduce single points of failure.

Availability is part of the:

CIA Triad

Therefore resilience is also a security concern.

Part 28 — Cloud-Native Security Fundamentals

Section titled “Part 28 — Cloud-Native Security Fundamentals”

Security should exist throughout the lifecycle.

Think:

Code
Build
Image
Registry
Deployment
Runtime

Protect:

Repositories
Developer Accounts
Code Changes

Protect:

CI/CD
Build Workers
Dependencies
Credentials

Protect:

Base Images
Packages
Vulnerabilities
Image Integrity

Protect:

Image Access
Image Modification
Image Provenance

Protect:

API
RBAC
Secrets
Network
Workloads

Monitor:

Processes
Network Connections
File Activity
Unexpected Behavior

Authentication answers:

Who are you?

Kubernetes environments may integrate with:

Certificates
Tokens
External Identity Providers
Cloud Identity Platforms
User
Authentication
Kubernetes API

Strong authentication should protect high-risk administrative access.

After authentication, Kubernetes determines:

What can you do?

One major authorization model is:

RBAC
User / Service Account
Role
Permissions

At this stage, understand:

Authentication
Authorization

You will explore RBAC much more deeply in later Kubernetes security labs.

Applications also need identities.

Kubernetes provides:

Service Accounts

for workloads.

Example:

Pod
Service Account
API Permissions

Ask:

Does the Pod actually require
Kubernetes API access?

If yes:

What exact permissions does it require?

Applications require network access, but unrestricted connectivity can create risk.

Think:

Frontend
Backend
Database

The desired policy should generally allow required communication while limiting unnecessary connectivity.

NetworkPolicies can help control:

Ingress
Egress

You will explore these deeply in the Kubernetes Network Policies lab.

Workloads should be configured securely.

Important considerations include:

Root Execution
Privileged Mode
Capabilities
Host Access
Service Accounts
Secrets
Image Security

For every Pod ask:

What happens if this application
is compromised?

Then determine:

Which permissions?
Which networks?
Which secrets?
Which host resources?

the attacker could potentially reach.

Organizations need consistent security controls.

Manual process:

Security Standard
Developer Reads Document
Developer Creates Workload

Automated approach:

Deployment
Policy Validation
Allow / Reject

Technologies such as:

Kyverno
OPA Gatekeeper

can support Kubernetes policy enforcement.

These are covered later in the labs.

A workload can be secure at deployment time and still become compromised later.

Runtime monitoring may detect:

Unexpected Shell
Unexpected Process
Suspicious File Access
Privilege Escalation
Unexpected Network Connection

This becomes a major topic in Kubernetes security specialization.

Part 36 — CNCF and the Cloud-Native Ecosystem

Section titled “Part 36 — CNCF and the Cloud-Native Ecosystem”

Kubernetes belongs to a broader cloud-native ecosystem.

You should understand that organizations may combine Kubernetes with technologies for:

Monitoring
Logging
Networking
Service Mesh
Security
Storage
Delivery

The goal is not to memorize every project.

Understand that Kubernetes often functions as one component within a larger platform ecosystem.

A service mesh can help manage communication between distributed services.

Conceptually:

Service A
Service Communication Layer
Service B

Capabilities may include:

Traffic Management
Observability
Service Identity
Encryption

At KCNA level, understand the purpose rather than deep implementation.

Cloud-native computing is broader than Kubernetes.

Organizations may also use:

Serverless Functions
Managed Containers
Platform Services
Event-Driven Systems

KCNA knowledge should therefore include broader cloud-native concepts, not Kubernetes alone.

Part 39 — Cloud-Native Security Lifecycle

Section titled “Part 39 — Cloud-Native Security Lifecycle”

Use this model:

Design
Develop
Build
Package
Deploy
Operate
Monitor
Improve

Security should be integrated throughout.

The idea of shifting security left means identifying problems earlier.

Instead of:

Production
Security Finds Problem

prefer:

Development
Security Validation
Build
Security Validation
Deployment

Shift-left does not mean security ends before production.

Use:

Build-Time Security
+
Runtime Security

Before moving to CKA, practice the basics.

Exercise 01 — Identify Kubernetes Components

Section titled “Exercise 01 — Identify Kubernetes Components”

Draw:

Control Plane
Worker Node
API Server
Scheduler
Controller
Pod

Explain the purpose of each.

Create this conceptual map:

Deployment
ReplicaSet
Pods
Service

Explain what each component provides.

Design:

Internet
Frontend
Backend
Database

Identify:

Which components could run in Kubernetes?
Which component requires persistent storage?
Which traffic flows are required?

Separate:

Application Image
Non-Sensitive Configuration
Sensitive Configuration

into:

Image
ConfigMap
Secret

conceptually.

For a workload, answer:

Which image does it use?
Which service account?
Which namespace?
Which service exposes it?
Which secrets can it access?

This introduces the Kubernetes security mindset.

Use this learning cycle:

Learn Concept
Draw Architecture
Explain in Your Own Words
Practice
Review

Do not only:

Watch Videos
Read Notes
Memorize Terms

Also:

Draw
Build
Inspect
Explain
Troubleshoot

Make sure you can confidently explain:

Concept A Concept B
Container Pod
Pod Deployment
Deployment Service
ConfigMap Secret
Node Cluster
Control Plane Worker Node
Authentication Authorization
Logs Metrics
Stateless Stateful

For every concept, add one security question.

Example:

Is the image trusted?
Who can access it?
Which permissions does it have?
Who can read it?
Who can reach it?
What sensitive information does it contain?

This habit prepares you for CKS long before you study CKS directly.

Mistake 1 — Learning Kubernetes Before Containers

Section titled “Mistake 1 — Learning Kubernetes Before Containers”

Understand containers first.

Mistake 2 — Memorizing Definitions Without Relationships

Section titled “Mistake 2 — Memorizing Definitions Without Relationships”

Kubernetes resources work together.

Networking becomes increasingly important in CKA and CKS.

Begin developing security thinking now.

Mistake 5 — Trying to Memorize the Entire Cloud-Native Ecosystem

Section titled “Mistake 5 — Trying to Memorize the Entire Cloud-Native Ecosystem”

Focus on concepts and use cases.

Mistake 6 — Thinking Kubernetes Automatically Makes Applications Secure

Section titled “Mistake 6 — Thinking Kubernetes Automatically Makes Applications Secure”

Kubernetes provides capabilities.

Security still requires correct:

Configuration
Identity
Networking
Workload Controls
Monitoring

KCNA-level knowledge can support your progression toward:

Cloud Engineer
Junior DevOps Engineer
Junior Platform Engineer
Technical Support Engineer
Cloud Security Engineer

It is primarily a foundation rather than the final career destination.

A cloud security learner may progress:

KCNA
Kubernetes Fundamentals
CKA-Level Administration
RBAC
Network Policies
Workload Security
Runtime Security
CKS
KCNA
Kubernetes Administration
CKA
CI/CD
GitOps
Platform Engineering
KCNA
Kubernetes Application Design
CKAD
Cloud-Native Development

Be ready to answer:

  1. What is cloud-native computing?
  2. What is Kubernetes?
  3. Why do organizations use Kubernetes?
  4. What problem does container orchestration solve?
  5. What is a container?
  6. What is a container image?
  7. What is a container registry?
  8. What is the difference between a container and a VM?
  9. What is a Kubernetes cluster?
  10. What is the control plane?
  11. What is a worker node?
  12. What is the Kubernetes API server?
  13. What does the scheduler do?
  14. What does a controller do?
  15. What is desired state?
  16. What is reconciliation?
  17. What is a Pod?
  18. What is a Deployment?
  19. What is a ReplicaSet?
  20. What is a Service?
  21. Why do Kubernetes applications use Services?
  22. What is a Namespace?
  23. What are labels and selectors?
  24. What is a ConfigMap?
  25. What is a Secret?
  26. What is a Persistent Volume?
  27. What is a Persistent Volume Claim?
  28. What is the difference between stateful and stateless?
  29. What is a Job?
  30. What is a CronJob?
  31. What are resource requests?
  32. What are resource limits?
  33. What is Kubernetes ingress?
  34. What is service discovery?
  35. What are logs?
  36. What are metrics?
  37. What are traces?
  38. What is Kubernetes RBAC?
  39. What is a service account?
  40. Why is Kubernetes security a shared responsibility across multiple layers?
  • Understand cloud-native computing
  • Understand microservices
  • Understand containers
  • Understand orchestration
  • Understand declarative configuration
  • Understand resilience
  • Understand clusters
  • Understand control plane
  • Understand worker nodes
  • Understand API server
  • Understand scheduling
  • Understand controllers
  • Understand desired state
  • Understand Pods
  • Understand Deployments
  • Understand ReplicaSets
  • Understand Jobs
  • Understand CronJobs
  • Understand Services
  • Understand service discovery
  • Understand DNS conceptually
  • Understand ingress
  • Understand pod communication
  • Understand ConfigMaps
  • Understand Secrets
  • Understand persistent storage
  • Understand PV and PVC
  • Understand stateful applications
  • Understand logs
  • Understand metrics
  • Understand traces
  • Understand health checks
  • Understand why observability matters
  • Understand container registries
  • Understand CI/CD conceptually
  • Understand GitOps conceptually
  • Understand automated delivery
  • Understand authentication
  • Understand authorization
  • Understand RBAC conceptually
  • Understand service accounts
  • Understand workload security concepts
  • Understand network security concepts
  • Understand runtime security concepts

Before moving deeper into Kubernetes administration, you should be able to look at:

Deployment
Pods
Service
Users

and explain:

Why each resource exists
How the resources relate
Where configuration lives
How networking works
Where identity appears
Where security controls should be applied

Remember this architecture:

Developer
Application
Container Image
Registry
Kubernetes Deployment
Pods
Service
Users

Around this architecture are:

Configuration
Storage
Networking
Observability
Security
Automation

That is the foundation of cloud-native Kubernetes knowledge.

After completing KCNA preparation, you should move from:

I Have Heard of Kubernetes

to:

I Understand How
Cloud-Native Systems,
Containers,
and Kubernetes
Fit Together.

That foundation prepares you for deeper hands-on administration.

➡️ 02 — CKA

In the next lesson, you will move from Kubernetes concepts into practical cluster administration and operational skills covering:

Cluster Architecture
Workload Management
Scheduling
Services and Networking
Storage
Cluster Administration
Troubleshooting

The progression is:

KCNA
Understand Kubernetes
CKA
Operate Kubernetes