Kubernetes (also called K8s) is a tool used to manage and run applications that are packaged in containers—small, portable units that contain code, settings and anything else the app requires to operate.
Originally developed by Google, Kubernetes is now an open-source platform maintained by the Cloud Native Computing Foundation (CNCF).
The K8s platform automates and orchestrates containerized application deployment, scaling and management. This helps IT managers ensure their apps are running as they intend, particularly in more complex environments in which multiple containers must interact with each other.
Among its most notable features, Kubernetes is able to:
- Orchestrate containers by automatically scheduling and running containers across a cluster of nodes
- Restart and replace unresponsive or failed containers
- Scale applications based on demand
- Balance loads across containers to maintain optimum availability and reliability
- Mount local and cloud storage systems to containers as needed
- Manage configuration data without embedding them in application code
- Update apps without causing downtime or failure
Nodes and workflow
A Kubernetes cluster is made up of multiple nodes. These nodes are often comprised of high-performance IT infrastructure platforms like
Dell’s PowerMax all-flash NVMe storage. PowerMax brings the added benefit of industry-leading cybersecurity and AI-driven storage efficiency to help enterprises work more efficiently and lower operating expenses.
A typical cluster includes a master node that manages and controls the cluster, and one or more worker nodes that host and run application workloads (the containers).
To execute a workflow, a user interacts with K8s via an API, web interface or the proprietary “kubectl” command line tool. A scheduler automatically assigns one or more pods (the smallest deployable unit in Kubernetes) to a worker node. During operation, a “Kubelet” on the worker node ensures pods are running correctly, relying on “Kube-proxy” for communication, networking and load-balancing.
As the system runs, Kubernetes continuously monitors the cluster and adjusts workloads as needed to maintain the most efficient execution.
You can help your customers deploy and maintain an optimum Kubernetes environment by working with Dell to leverage best-in-class hardware, software and as-a-service infrastructure. To find out how,
visit Dell.com/kubernetes today.