<img src="https://ws.zoominfo.com/pixel/JHVDdRXH2uangmUMQBZd" width="1" height="1" style="display: none;">

What’s New with Kubernetes 1.15 Release

What’s New with Kubernetes 1.15 Release


Kubernetes 1.15 got out today! that's the 2nd Kuberentes release of 2019. I thought of sharing some highlights from this release.

In short, this release's highlights are:

  • Improved Container Storage Interface (CSI)
  • Improved Cluster Lifecycle Stability and Usability
  • More Extensibility of core Kubernetes APIs, focued on Custom Resources Management

Improved Container Storage Interface (CSI)

Major improvements were around bringing CSI feature parity with in-tree functionality, such as resizing inline volumes. You can now also clone volumes (alpha feature) by specifying another PVC as a DataSource when provisioning a new volume, given that the underlying storage system supports this functionality.

Improved Cluster Lifecycle Stability and Usability

A lot of investments were done in kubeadm, which moved to v1beta2 from v1beta1 btw. You can now use kubeadm to provision and maintain high availability (HA) by using the familiar kubeadm init and kubeadm join commands.

Certificate management had great attention and now you can rotate all your certifications on upgrades before they expire during control plane upgrade.

More Extensibility of Core Kubernetes APIs

The main focus in this release on CRDs data and behavior consistency. OpenAPI based validation schema will now require eachto be validated against a structural schema. Itbasically enforces non-polymorphic and complete typing of each field in a CustomResource. Non-structural schema will work as is, but any serious CRD application is urged to migrate to structural schemas in the foreseeable future.

Other notable improvements to CRDs

  • CustomResourceDefinitions with Kubernetes 1.15 gained the ability to convert between different versions on-the-fly via webhooks.
  • OpenAPI publishing for CRDs will be available with Kubernetes 1.15 as beta for structural schemas only.
  • Automatic removal of unknown fields enforces that only data structures specified by the CRD developer are persisted to etcd.
  • CustomResourceDefinitions get support for defaulting. Defaults are set for unspecified field in an object sent to the API, and when reading from etcd.


This release is targeting some advanced features such CRDs and the convenience of running highly available & resilient Kubernetes clusters. I encourage you to check the release notes for a complete list of notable features and fixes.

If you are still getting started with Kubernetes, check this cool curation of The Best Kubernetes Tutorials


Comments and Responses

Related Articles

Product In-Depth: Enforce Policies and Standards from a Single Console

Magalix provides a single management interface to control, enforce and visualize the state of compliance for all of your clusters.

Read more
Product In-Depth: Centralized Policy Management

achieving DevSecOps isn’t as difficult as you may have been led to believe. Interested in learning more about how to start resolving violations in minutes

Read more
Product In Depth: Detailed Violation Analysis

Security, compliance, and governance are not just one-time events that happen every so often. Managing a compliant environment is a 24x7 operation.

Read more