The newest version of Kubernetes is about to get released. The question is what to expect from version 1.17. In this article, we have a brief overview of some of what Kubernetes 1.17 brings with it.
Feature 1053: Structured Output For The Kubeadm Command
The kubeadm tool is one of the ways you can set up a Kubernetes cluster on your own. Some higher-level tools may also use kubeadm behind the scenes like Terraform. Sometimes, those tools need to parse and process the output produced by the kubadm command. Any slight change to this output may break the chain. This feature allows kubeadm to generate structured output that can be consumed by other tools. For example, using kubeadm command -o json will produce the output in JSON format. This feature is in the alpha stage.
Feature 382: Allow Nodes To Be Tainted On Condition
This feature was already in Kubernetes since version 1.12. In this release, it finally graduates to stable stage. The feature basically allows the node controller to taint a node based on some predefined conditions that it observes. As usual, the user can opt to ignore those taints by adding the appropriate tolerations to the pods.
Feature 548: The kube-Scheduler is Responsible For Scheduling DaemonSet Pods
Another feature finding its way to stable. Like #382, this feature was already in Kubernetes since version 1.12 but in earlier stages of development. Through this change, DaemonSet pods are scheduled using the kube-scheduler just like other pods instead of being scheduled by the DaemonSet controller. The advantage of this is that DamonSets are treated the same way as other pods honoring pod priority and preemption.
Feature 563: IPv6 Support
Now you can assign IPv4 and IPv6 to the pods. This feature is in the apha release and is under heavy development so expect a lot of changes in this and upcoming releases.
Feature 980: Ensure That Service LoadBalancers Are Deleted When Their Parent Services are
By default, when a Service of type LoadBalancer is deleted, the underlying LoadBalancer resource should be deleted as well. However, in some cases, the LoadBalancer is not deleted after the Service is destroyed. This feature ensures that the LoadBalancer is removed when the Service is deleted. The deletion process will be blocked until the LoadBalancer is totally removed.
Feature 177: Support For Volume Snapshots
This feature has been in Kubernetes since 1.12. In this release, it is graduating to Beta. You can use VolumeSnapshot and VolumeSnapshotContent to create and use volume snapshots.
In this article, we discussed some of the most notable features of the Kubernetes 1.17.