The cloud native community has shipped the first release of Kubernetes in 2019. The latest version, 1.14 comes with many new features and extensibility options. However, the most notable is the production-level support for Microsoft Windows-based nodes.
The latest version of Kubernetes comes with 31 enhancements, of which 10 are graduated to stable, 12 in beta along with an addition of 7 exclusive new features.
Kubernetes has two key components – a set of master nodes that act as the control plane and a set of nodes that act as the workhorses that run containerized workloads. When a workload that is composed of multiple containers is deployed on Kubernetes, the control plane chooses one or more worker nodes to host the containers. Till now, both the master and worker node could run only on mainstream Linux OS distributions such as Ubuntu, Red Hat Enterprise Linux and CentOS. This means applications with a specific need for Microsoft Windows couldn’t be deployed on Kubernetes.
A couple of years ago, Microsoft embarked on a journey to make containers first-class citizens in the Windows world. It partnered with Docker to bring a compatible container engine to Windows to deliver the familiar and consistent workflow to developers and operators. The company hired Brendan Burns, one of the co-founders of Kubernetes, from Google to exclusively focus on Windows containers and Azure Kubernetes Service (AKS). Since then, Microsoft has been actively contributing to Kubernetes and the cloud native ecosystem.
The support for Microsoft Windows in the latest version of Kubernetes makes it possible for customers to mix and match Linux and Windows machines in the same cluster. They can now build cloud native, microservices-based applications that use traditional .NET runtime along with contemporary platforms such as Go. Microsoft is expected to announce support for Windows Server-based nodes on its managed Kubernetes service, AKS.
Apart from support for Microsoft Windows, Kubernetes 1.14 has multiple other enhancements. Some of the notable ones are highlighted below:
Durable local storage management – This feature makes locally attached block storage available as a persistent volume source. This allows users to take advantage of the cheaper and improved performance of persistent local storage that doesn’t have the overhead of using network storage.
Pod priority and preemption – Pods are the basic units of deployment in Kubernetes. They package one or more containers that are deployed and scaled together. The latest feature of 1.14 enables Kubernetes to instantiate important Pods first, and when the cluster is out of resources, it removes less important pods to create room for more important ones.
Kubectl enhancements – Kubectl is the swiss army knife used by Kubernetes users. It’s the command line tool to manage the cluster and applications. Kubectl now includes support for plugins and extensibility options through a new extension called Kustomize.
The Kubernetes community continues to make brisk progress. The latest release marks yet another milestone for the most popular, open source container orchestration engine.
>> Source Link