Video: Google takes the wraps off of Agones
Kubernetes has become the cloud container orchestration program. Its developers aren't resting on their laurels. Kubernetes is continuing to develop at a rapid rate. Less than three-months, after the last significant release, Kubernetes 1.10, Kubernetes 1.11 is on its way.
Why so many releases, so quickly? To make it better as fast as possible. In Kubernetes 1.11, the latest version of Kubernetes goes a long way toward addressing fundamental networking and storage requirements.
Read also: Cisco joins the Kubernetes cloud rush
Specifically, according to Stephen Augustus, a former CoreOS engineer and now a Red Hat architect, "With each release of Kubernetes, we see a continued effort in building extensible APIs. This latest release brings greater stability and enhancements to Custom Resource Definitions (CRDs); pod priority and preemption enabled by default; the ability to use CoreDNS as the DNS plugin for the cluster; and more. We are especially thrilled with the additional work in this release to help developers build richer Kubernetes-native applications, especially Operators." This last is a method of packaging, deploying, and managing a Kubernetes application.
CRDs are an extension mechanism that enable you to create and program Kubernetes objects, such as Operators. CRD versioning is now available as a beta feature. This is, wrote Augustus, "a critical part of managing the lifecycle of an [application programming interface] API over time. In the past, CRD users had to manually convert their resources and recreate them with each version change." No one wants to do that. You can use the recently released Operator Framework to get started with Operators.
Read also: Kubernetes vendors agree on standardization
CoreDNS, a lightweight, fast, and pluggable cluster Domain Name System (DNS) module is now available. Eventually, this will replace KubeDNS as the de facto DNS plugin in Kubernetes. For now, both are supported.
To help with setting Kubernete firewalls, the program now supports IP Virtual Server (IPVS). Its load balancing feature lets you rapidly and automatically deploy Linux's iptables firewalls by using a kernel space hash table to determine routing. This can be much faster than earlier methods.
Kubernetes 1.11 also adds alpha support for raw block volumes to the Container Storage Interface (CSI). Other new alpha storage capabilities include the power to dynamically resize persistent volumes without having to terminate Kubernete pods and unmount a volume first. Finally, "StorageObjectInUseProtection," which prevents the removal of persistent volumes that are being used by a pod, is now stable. This feature has been one that users have wanted for some time.
Finally, you can now set the scheduling priority of a pod to be higher and lower than other pods. That's ideal for sysadmins who are running critical services.
As Augustus writes, "Imagine wanting to run jobs at night, run payroll processing or other functions that may have to be managed in a team with scarce resources. With the ability to associate relative weights to each pod, the scheduler evicts less critical pods in order to make room for the most important pods to run when the cluster is out of resources."
Read also: 10 Kubernetes tips - TechRepublic
Out of the box, there are two scheduling priorities: 'System-node-critical', and 'system-cluster-critical,' which have the highest scheduling priorities. Sysadmins can define additional priorities for their specific problems.
Sound interesting to you? Kubernetes 1.11 will be out anytime now.