DEV Community

Cover image for AltSchool Of Engineering Tinyuka’24 Month 10 Week 3
Ikoh Sylva
Ikoh Sylva

Posted on

AltSchool Of Engineering Tinyuka’24 Month 10 Week 3

If you missed our previous session, you can catch up here. This week, we took a deep dive into Terraform exploring what it is, why it matters, and what makes it such a powerful tool in modern cloud engineering.

Image of a computer system

Container Technology & Kubernetes Explained

In the last decade, container technology has completely transformed how software is built, packaged, shipped, and deployed. From small startups to global enterprises, containers and especially Kubernetes have become the backbone of modern cloud infrastructure. But how did we get here? Why are containers such a big deal? And how does Kubernetes orchestrate them like a world-class conductor of a digital orchestra?
Let’s break it down in a simple, well-structured, and captivating way.

1. What Are Containers? (And Why the Tech World Loves Them)

A container is a lightweight, self-contained package that includes everything an application needs to run:

  • The app code

  • Dependencies

  • Runtime environment

  • System libraries

Think of a container like a sealed food pack you can heat anywhere.

Whether you're in Lagos or London, the food tastes exactly the same.

Real example

If your Python app requires Python 3.10, Flask, and specific system libraries, a container ensures it runs exactly the same way:

  • On your laptop

  • On your team’s machines

  • In production

  • In the cloud

Gone are the days of “Works on my machine.”

2. Container Technologies (The Ecosystem That Makes It All Work)

Container technologies include several categories:

a) Container Engine / Runtime

This is the low-level component that actually runs the container.

Examples:

  • containerd (used by Docker and Kubernetes)

  • CRI-O (lightweight runtime used in many Kubernetes environments)

  • runc (executes containers according to OCI specs)

b) Container Client Tools

These are the tools developers interact with.

Examples:

  • Docker CLI → docker build, docker run

  • Podman → A daemonless alternative to Docker

  • Buildah → For building images

  • Skopeo → For managing container images in registries

c) Container Registries

A place to store and share container images.

Examples:

  • Docker Hub

  • GitHub Container Registry

  • AWS ECR

  • GCP Container Registry

  • Azure Container Registry

These registries function like “app stores,” but for infrastructure.

3. Container Runtimes (The Engine Under the Hood)

A container runtime manages:

  • Creating containers

  • Executing containers

  • Managing container lifecycle

  • Enforcing security isolation

One important detail:

Kubernetes no longer manages Docker directly.

It now uses the Container Runtime Interface (CRI) to communicate with:

  • containerd

  • CRI-O

  • Others that implement CRI

This makes Kubernetes more modular, faster, and cloud-agnostic.

4. Container Orchestration (Why We Need Something Bigger Than Docker)

Running one container is easy.

Running hundreds or thousands across multiple servers is not.

That’s where container orchestration comes in.

Orchestration tools handle:

  • Automated deployment

  • Scaling containers up/down

  • Rollouts and rollbacks

  • Load balancing

  • Self-healing containers

  • Monitoring container health

Leading container orchestration platforms:

  • Kubernetes (industry standard)

  • Docker Swarm

  • Nomad by HashiCorp

But Kubernetes reigns supreme.

5. Kubernetes (K8s): The Operating System of the Cloud

Kubernetes is the most popular orchestration system.

It treats containers like tiny workers and coordinates them intelligently.

It ensures apps always run smoothly, reliably, and scalably even under heavy traffic.

Why companies love Kubernetes

  • Highly scalable

  • Works in any cloud (AWS, GCP, Azure, DigitalOcean)

  • Self-healing

  • Automated deployments

  • High availability

  • Huge community & ecosystem

From Netflix to Spotify to banks and telecom providers Kubernetes powers mission-critical systems globally.

Image of a computer system

6. Kubernetes Cluster Components (How Kubernetes Actually Works)

A Kubernetes cluster is made up of two key groups of components:

A. Control Plane Components

This is the “brain” of Kubernetes that makes decisions.

1. API Server

  • Acts as the gateway for all Kubernetes operations

  • Every command (CLI, UI, automation) interacts with this server

  • Example: kubectl apply -f app.yaml first hits the API server

2. etcd

  • Key-value store that holds cluster state

  • Think of it as the “memory” of Kubernetes

  • Highly available and distributed

3. Scheduler

  • Assigns containers (pods) to appropriate worker nodes

  • Decides placements based on:

  • CPU

  • RAM

  • Node capacity

  • Affinity rules

4. Controller Manager

Controls long-running processes such as:

  • Node controller

  • Replication controller

  • Endpoint controller

  • Service account tokens

B. Worker Node Components

This is where containers actually run.
Each worker node includes:

1. Kubelet

  • Agent that runs on every worker node

  • Ensures containers are running as instructed

  • Talks directly to the container runtime

2. Kube-Proxy

  • Handles networking across nodes

  • Ensures routing between services and pods

3. Container Runtime

  • Actually launches containers (e.g., containerd)

7. How It All Works Together Example Workflow

Let’s say you deploy a containerized Flask app using Kubernetes:

  1. You write a YAML file (deployment.yaml).
  2. You run:

kubectl apply -f deployment.yaml

  1. It goes to API Server.
  2. Scheduler picks the best worker node.
  3. Kubelet tells container runtime to start the container.
  4. Kube-Proxy ensures networking & load balancing.
  5. Controllers ensure the app maintains the desired replicas.
  6. If a pod fails → Kubernetes automatically restarts it.

This automation + intelligence is the reason Kubernetes is the backbone of cloud-native computing.

8. Why Containers + Kubernetes Matter Today

They help organizations:

  • Deploy faster

  • Reduce costs

  • Improve reliability

  • Scale effortlessly

  • Standardize development

  • Simplify multi-cloud strategies

Industries using containers + Kubernetes include:

  • FinTech

  • E-commerce

  • Banking

  • Telecom

  • Energy

  • Government

  • Healthcare

For anyone pursuing cloud engineering, DevOps, or platform engineering, understanding this ecosystem is essential.

Image of a PC fan

Containers changed how we package applications.
Kubernetes changed how we run them at scale.

Together, they form the foundation of modern cloud infrastructure powering the apps we use every day.

This article gives a solid, deep, yet beginner-friendly guide to understanding containers, container runtimes, orchestration, and Kubernetes components. Mastering this knowledge opens the door to advanced cloud engineering roles and DevOps practices.

I’m Ikoh Sylva, a passionate cloud computing enthusiast with hands-on experience in AWS. I’m documenting my cloud journey from a beginner’s perspective, aiming to inspire others along the way.

If you find my content helpful, please like and follow my posts, and consider sharing this article with anyone starting their own cloud journey.

Let’s connect on social media. I’d love to engage and exchange ideas with you!

LinkedIn Facebook X

Top comments (0)