What’s new in Kubernetes v1.20
By: Dimitris Poulopoulos
Tags: Containers, Kubernetes, Technology, DevOps, Towards Data Science

Major Enhancements

Kubernetes v1.20 marks the third and final release of 2020. Usually, the project follows a quarterly release cycle but v1.19 was pretty prolonged. Jeremy Rickard, Kubernetes release lead and staff engineer at VMWare, said that the process “overlapped with a lot of things happening in the world — COVID, unrest in the U.S.”, thus, this delay was expected.

However, this could mark a new era for the community, where we will have three, instead of four, annual releases moving forward. This could lift some of the pressure off developers, who can focus their efforts on making everything more stable.

For now, let’s dissect this new release.

Volume Snapshot Operations: This feature is now stable in v1.20 and allows users to trigger volume snapshot operations in a standard way.

This feature is now stable in v1.20 and allows users to trigger volume snapshot operations in a standard way. kubectl debug: kubectl alpha debug has graduated to beta becoming kubect debug , and can be used as a common debugging tool to troubleshoot workloads that crash on startup, distroless containers by adding a new container with debugging tools, or a node by creating a container running in the host namespaces and with access to the host’s filesystem.

has graduated to beta becoming , and can be used as a common debugging tool to troubleshoot workloads that crash on startup, distroless containers by adding a new container with debugging tools, or a node by creating a container running in the host namespaces and with access to the host’s filesystem. IPv4/IPv6 support: We can now create clusters that support both IPv4 and IPv6 services. Thus, we can do things like leave the legacy workloads running on IPv4 and create the new ones on IPv6.

We can now create clusters that support both IPv4 and IPv6 services. Thus, we can do things like leave the legacy workloads running on IPv4 and create the new ones on IPv6. Graceful node shutdown: This feature has entered Alpha, and makes the kubelet aware of system shutdowns, enabling graceful termination of Pods. This was not the case until recently and could cause several issues to workloads that were forced to terminate upon node shutdown.

This feature has entered Alpha, and makes the kubelet aware of system shutdowns, enabling graceful termination of Pods. This was not the case until recently and could cause several issues to workloads that were forced to terminate upon node shutdown. Docker deprecation: This release deprecates Dockershim, essentially breaking the support for Docker. Kubernetes will continue supporting runtimes that use the Container Runtime Interface(CRI), such as containerd and CRI-O . You can read more about this change, and how it affects you, in the article below:

CronJobs: The CronJobs’ controller is now updated, as part of the work towards moving them to General Availability.

Conclusion & Next Steps

These are the major themes of the v1.20 Kubernetes release. To study the new features in detail, visit the blog post announcement.

Finally, let’s see what are the next steps for Kubernetes. First, it seems we are entering a new cycle of three annual releases, instead of four. It remains to be seen if this is the case, but as Jeremy said, “there is a lot of pressure to keep things working from a backward compatibility standpoint, and what number of releases stay in support. It’s a lot of overhead on the release teams, just a lot of toil.”

Also, we realize that features cannot stay in Beta forever. The community decided that features currently in Beta should either graduate to stable, or be replaced by a new beta version. If nothing happens they should be deprecated. In any case, there should exist a solid timeline for every feature.

Last but not least, the community is pushing towards more transparency concerning future releases, and their planning. Users should know what releases were released when, or what versions they are planned for.

Learning Rate is my weekly newsletter for those who are curious about the world of AI and MLOps. You’ll hear from me every Friday with updates and thoughts on the latest AI news, research, repos and books. Subscribe here!

About the Author

My name is Dimitris Poulopoulos, and I’m a machine learning engineer working for Arrikto. I have designed and implemented AI and software solutions for major clients such as the European Commission, Eurostat, IMF, the European Central Bank, OECD, and IKEA.

If you are interested in reading more posts about Machine Learning, Deep Learning, Data Science, and DataOps, follow me on Medium, LinkedIn, or @james2pl on Twitter.

Opinions expressed are solely my own and do not express the views or opinions of my employer.