A Kubernetes cluster consists of a set of worker machines, called nodes, that run containerized applications. Every cluster has at least one worker node. The worker node(s) host the Pods that are the components of the application workload. The control plane manages the worker nodes and the Pods in the cluster.
The control plane's components make global decisions about the cluster (for example, scheduling), as well as detecting and responding to cluster events
Node components run on every node, maintaining running pods and providing the Kubernetes runtime environment.
Kubernetes as a Service (KaaS) makes it possible to operate Kubernetes, the world’s most popular container orchestrator, as a managed service. KaaS services are commonly provided in the public cloud, but some KaaS platforms can also be deployed on-premises.
Here are some of the most popular Kubernetes as a Service platforms--
GKE was the first commercial Kubernetes as a Service offering, and is a respected and mature solution, built by Google which originally developed Kubernetes. Is part of the Google Cloud Platform (GCP). GKE lets you deploy, manage and monitor applications, services and persistent storage in managed Kubernetes clusters. It includes auto-scaling and offers auto-updates for Kubernetes.
EKS is a service used to run managed Kubernetes on AWS. It can deploy clusters across multiple availability zones (AZ) with high availability. EKS integrates with AWS services such as IAM, CloudTrail, and App Mesh. Worker nodes can be deployed using Amazon EC2 or Amazon Fargate, which provides a serverless model with billing according to actual memory and CPU resources used.
AKS is a fully managed service that lets you manage Kubernetes on Microsoft Azure resources. It allows you to deploy directly to Azure, Azure Stack, or Internet of Things (IoT) edge devices. You can integrate with existing Azure services such as Azure Dev Spaces, Visual Studio Code, Azure DevOps, and Azure Monitor.
OpenShift OpenShift Dedicated is a highly customizable managed service you can use to deploy Kubernetes to any cloud (other editions of the service are specific to AWS, Azure, or IBM Cloud). It supports multi-tenancy, has a built-in dedicated image registry, and provides extended support for CI/CD tooling. It is based on the open source OpenShift Origin project.
VMware Tanzu is a platform that enables organizations to build and manage Kubernetes environments, alongside traditional VMware workloads, with central control. It enables integrating Kubernetes with VMware technology like vSphere, vSAN and NSX, to manage VMware Kubernetes clusters within the same software defined data center (SDDC).
Tanzu has strong support for multi-cloud deployments, and provides enterprise-grade features like security, backup and utilization management.
GKE was the first commercial Kubernetes as a Service offering, and is a respected and mature solution, built by Google which originally developed Kubernetes. Is part of the Google Cloud Platform (GCP). GKE lets you deploy, manage and monitor applications, services and persistent storage in managed Kubernetes clusters. It includes auto-scaling and offers auto-updates for Kubernetes.
EKS is a service used to run managed Kubernetes on AWS. It can deploy clusters across multiple availability zones (AZ) with high availability. EKS integrates with AWS services such as IAM, CloudTrail, and App Mesh. Worker nodes can be deployed using Amazon EC2 or Amazon Fargate, which provides a serverless model with billing according to actual memory and CPU resources used.
AKS is a fully managed service that lets you manage Kubernetes on Microsoft Azure resources. It allows you to deploy directly to Azure, Azure Stack, or Internet of Things (IoT) edge devices. You can integrate with existing Azure services such as Azure Dev Spaces, Visual Studio Code, Azure DevOps, and Azure Monitor.
OpenShift OpenShift Dedicated is a highly customizable managed service you can use to deploy Kubernetes to any cloud (other editions of the service are specific to AWS, Azure, or IBM Cloud). It supports multi-tenancy, has a built-in dedicated image registry, and provides extended support for CI/CD tooling. It is based on the open source OpenShift Origin project.
VMware Tanzu is a platform that enables organizations to build and manage Kubernetes environments, alongside traditional VMware workloads, with central control. It enables integrating Kubernetes with VMware technology like vSphere, vSAN and NSX, to manage VMware Kubernetes clusters within the same software defined data center (SDDC).
Tanzu has strong support for multi-cloud deployments, and provides enterprise-grade features like security, backup and utilization management.
Kubernetes can expose a container using the DNS name or using their own IP address. If traffic to a container is high, Kubernetes is able to load balance and distribute the network traffic so that the deployment is stable.
Kubernetes allows you to automatically mount a storage system of your choice, such as local storages, public cloud providers, and more
You can describe the desired state for your deployed containers using Kubernetes, and it can change the actual state to the desired state at a controlled rate
You provide Kubernetes with a cluster of nodes that it can use to run containerized tasks. You tell Kubernetes how much CPU and memory (RAM) each container needs.
Kubernetes restarts containers that fail, replaces containers, kills containers that don't respond to your user-defined health check, and doesn't advertise them to clients until they are ready to serve.
Kubernetes lets you store and manage sensitive information, such as passwords, OAuth tokens, and SSH keys. You can deploy and update secrets and application configuration without rebuilding your container images, and without exposing secrets in your stack configuration.