What is Kubernetes and its features ?
Limited Time Offer!
For Less Than the Cost of a Starbucks Coffee, Access All DevOpsSchool Videos on YouTube Unlimitedly.
Master DevOps, SRE, DevSecOps Skills!
Demystifying Kubernetes
Kubernetes (aka k8s) helps solves multi fold problems we can face while putting an application that’s required to scale while on production.
It is mainly used as an orchestrator of containers in a cluster environment (i.e. multi-node environment for distributed applications).
The following are the problems and the role it plays in solving :-
Problems | Kubernetes features |
Managing containers on different nodes | Workload placement in multi-node cluster Aim – Manage services/application or their replicas spread across different nodes effectively – be it scheduling/health checks |
Manage access containers with same ports | Schedules containers with same ports in different “pods” aka different logical separation where each pod is a different IP Aim – Less conflict in operating containers |
Auto Healing on container failure | Follows – desired state principle -if a container is down, it will immediately work to bring it up again. Aim – As less down time or lag in responding as possible |
K8s Features
- Declarative model of deployment – use a YAML and get the desired state of the cluster managed by Kubernetes
- Manages the health checks, Network routing , auto healing, scaling – to maintain the desired state – say minimum no. of containers for DB service to run.
- Has over 60+ objects or ways of instantiating K8s objects apart from the containers that can be used by applications at scale. For example – ConfigMaps, Secrets, Cron Jobs, Ingress etc.
- It is a cloud native model of development and has managed cluster services in cloud providers like Azure, AWS and GCP