What is Kubernetes

Kubernetes is an open-source container-orchestration system for automating computer application deployment, scaling, and management of containerized applications. It was originally designed by Google and is now maintained by the Cloud Native Computing Foundation. Kubernetes, also known as K8s, groups containers that make up an application into logical units for easy management and discovery.

Salesforce deploys and runs Kubernetes directly atop bare metal, integrating it into the rest of the Salesforce infrastructure. Amazon Elastic Kubernetes Service (Amazon EKS) – Kubernetes manages clusters of Amazon EC2 compute instances and runs containers on those instances with processes for deployment, maintenance, and scaling.

Microsoft AKS is a completely managed service that enables Kubernetes in Azure, without having to manage Kubernetes clusters separately. Azure is able to manage all the complexities of Kubernetes, while one concentrates on the containers. Some basic features include Pay only for the nodes, easier cluster upgrades as well as Kubernetes RBAC and Azure Active Directory integration.

Google Cloud is where Kubernetes was first originated in 2014. Google developed the tool to containerize their 15 years’ worth of workloads. When they announced that it was an open-source tool, it paved the way for the community to make their contributions to the tool. Providing automated container orchestration, Kubernetes improves a Company’s reliability and reduces the time and effort of a resource.

How Kubernetes Works. Kubernetes works by managing a cluster of compute instances and scheduling containers to run on the cluster based on the available compute resources and the resource requirements of each container. Containers are run in logical groupings called pods and you can run and scale one or many containers together as a pod. Kubernetes control plane software decides when and where to run your pods, manages traffic routing, and scales your pods based on utilization or other metrics that you define. Kubernetes automatically starts pods on your cluster based on their resource requirements and automatically restarts pods if they or the instances they are running on fail. Each pod is given an IP address and a single DNS name, which Kubernetes uses to connect your services with each other and external traffic.

More learning: