Microservices in production
Deploy, scale, and update each service independently.
Kubernetes (K8s) is an open-source platform that orchestrates containers across a cluster of machines: it schedules where they run, restarts failures, exposes services, handles scaling and rolling updates. Born at Google and governed by the CNCF, it is the de facto standard for running containerized apps in production at medium and large scale.
In one sentence
Kubernetes decides where, when, and how many containers run—and brings them back if they fail.
Key points
Term at a glance
Docker (or another OCI runtime) runs a container on one machine. Kubernetes coordinates hundreds of containers across many machines: placement, health, scaling, rolling updates, and service discovery.
The model uses Pods (smallest deployable unit), Deployments/StatefulSets, and Services. You declare desired state; controllers fix drift (self-healing).
For a Montreal SME, K8s makes sense once you have multiple services, autoscaling needs, or an internal platform. Before that, Compose, a PaaS, or a managed container service often wins.
Healthy images, health checks, and externalized config before orchestrating.
GKE/EKS/AKS reduce control-plane toil; self-managed needs dedicated ops.
Manifests or Helm/Kustomize: Deployments, Services, Ingress, HPA, NetworkPolicies.
Metrics, logs, traces; deploys via CI and often Argo CD / Flux.
A B2B SaaS in Quebec City runs API, worker, and frontend on GKE. A traffic spike doubles API pods via HPA. A rolling update ships a new version with no downtime. When a node dies, pods are rescheduled—clients see only a brief latency blip.
Deploy, scale, and update each service independently.
Replicas, probes, and reschedule on node failure.
Standardize deploys for multiple product teams.
Jobs and CronJobs for one-off or scheduled work.
| Kubernetes | Docker Compose | |
|---|---|---|
| Scope | Multi-node cluster, production scale | Mostly local / single host |
| Self-healing | Reschedule, replicas, probes | Basic service restarts |
| Scaling | HPA, cluster autoscaler | Limited manual scale |
| Complexity | High | Low — great to start |
When the product moves from “one API on a VPS” to several critical services, managed K8s avoids manual firefighting. In Quebec, talent and partners already speak this language. The costly mistake is adopting too early—or too late without a safety net.
No. Docker builds and runs containers. K8s orchestrates at cluster scale.
The open-source software is; running it (managed cluster, engineering, monitoring) has real cost.
PaaS (Cloud Run, Render, Fly), ECS/Fargate, or Compose on one or two servers.
No, but Helm or Kustomize help manage complex manifests and multiple environments.
Torn between Compose, a PaaS, and managed Kubernetes? We can scope architecture to your load and team.
Talk about orchestration