Kubernetes can schedule workloads for CI/CD pipelines by running containerized workloads across Kubernetes clusters. It provides features like self-healing, horizontal pod autoscaling, automated rollouts and rollbacks, service discovery, storage orchestration, and secret management. Kubernetes was born out of Borg at Google and is now a top-level Apache project donated to the CNCF. It uses a controller manager to reconcile the desired state with the actual cluster state. Key Kubernetes objects include deployments, replicasets, pods, services, and secrets. Kubernetes is well-suited for scheduling CI/CD workloads across clusters.
3. From the creation to the
destruction of a
container
CONTAINER
LIFECYCLE
4. • State created : Docker create –name nginx nginx
• State running: Docker run nginx
• State paused: Docker pause nginx
• State running: Docker unpause nginx
• State stop: Docker stop nginx
• State destroy : Docker rm nginx
• State exit: Docker run –name nginx nginx, Ctrl + C
5. KUBERNETES – FEATURES
• Schedule containers on VM or Bare-metals servers
• Self healing
• Horizontal Pod autoscaling
• Automated Rollouts and rollbacks
• Service discovery and load balancing
• Storage Orchestration
• Secret and configuration management
• Batch execution
6. FROM BORG … TO
KUBERNETES (K8S)
• Born in Google
• Shares the same DNA like
orchestrator frameworks, Borg and
Omega
• Under Apache 2.0 License
• Donated to CNCF in 2014
8. CONTROLLER OR
« WHILE; TRUE »
LOOP
What is the current state of
the cluster (X)?
What is the desired state of
the cluster (Y)?
X == Y ?
∙ true - Do nothing.
∙ false - Perform tasks to get to Y
(such as starting or restarting
containers, or scaling the number of
replicas of a given application).
(Return to 1)