Kubernetes, the container manager that is at the center of cloud deployment processes today, released the first update of 2022 at the beginning of May. So what’s changed with this update?
Kubernetes, the open-source container manager that is at the heart of many modern cloud deployment projects and enables the internet functions we’re used to today, released its first update of 2022 in early May. Released with version number 1.24, this version contains a total of 46 improvements. As Global IT, the first partner of Google Cloud in Turkey, in this article we will focus on the innovations that have emerged with the Stargazer update, which has become an industry standard in container management and is used by thousands of developers, Kubernetes, which is also used with meanings such as dreamer and dreamer, and actually corresponds to the star watcher.
Before we begin, we would like to remind you that we are trying to answer questions such as microservice, container, what is Kubernetes, what does it do, how to use Kubernetes in our article.
What does the Kubernetes 1.24 update include?
In the new version of Kubernetes, 14 developments are being stabilized, while 15 developments are being moved to beta. Alpha testing is beginning for 13 developments. Another issue that concerns many developers is the deprecated updates. Let’s take a closer look at the featured updates.
Dockershim removed from kubelet
These topics and concepts may seem a bit complicated at first. To better understand this update, let’s first define a few concepts:
Pod: In the Kubernetes ecosystem, each container is called a “pod”.
Node (node): Pods, or containers, are the areas where they run that support one or more containers. Workloads run on nodes.
Container runtime: Container runtimes are components that must be installed on each node in the cluster for code to run. Kubernetes supports containerized and CRI-O containerized runtime components.
Kubelet: Kubelet is defined as the primary “node agent” that runs on each node.
Docker: Docker is one of the foundations of the inclusive approach. It is a software for creating containers to use the resources in the operating system effectively and efficiently.
Dockershim: Component that allows versions prior to 1.24 to connect to Docker Engine.
Having explained this short dictionary, let’s continue where we left off. The removal of Dockershim from kubelet means that developers can no longer use Dockershim as a component of container runtimes in Kubernetes. Starting with version 1.24, developers can use one of the supported runtimes, such as containerd or CRI-O. Developers who already rely on Docker Engine for the runtime can use another component, such as dockershim, called cri-dockerd.
This change, which made a lot of noise when it was announced, does not actually affect many Kubernetes users. The Cloud Native ecosystem uses the Open Container Interface (CRI) to avoid being dependent on a specific container runtime. For the most part, Kubernetes clusters use the containerd and cri-o runtimes that the ecosystem already supports. Explanations of the removal of Dockershim and how it will affect developers are included on the following page.
On the other hand, Kat Casgrove of the Cloud Native Computing Foundation admits that they need to be a little more transparent during this announcement. Stating that Docker can be understood as the entire software or the company that develops the software, Casgrove says that they only remove the Docker runtime Dockershim. Saying that Kubernetes is not moving away from Docker, Casgrove says, “Removing Dockershim from kubelet will be good for the community, the ecosystem, the project, and the open source culture in general.”
Software supply chain security with Sigstore
The Sigstore program, one of the results of the Supply Chain Levels for Software Fabrics study that Kubernetes developers began to improve Kubernetes software supply chain security by 2021, is described as a “big step forward” for Kubernetes security. The update makes it easier to cryptically sign publication files, container images, and binaries, improving software supply chain security.
New kubelet metric: OOM
Another innovation introduced with the 1.24 Stargazer update is a new metric brought to the primary node agents, aka kubelet. The OOM metric allows cluster operators to count out-of-memory events that occur on each container running in a Kubernetes cluster. When software in the Kubernetes ecosystem does not work as expected, the process is terminated. However, the root cause of this inactivity is not easily found. The OOM metric is expected to allow for more detailed exploration of these errors.
Beta APIs are now “turned off by default”
Today, the developers of Kubernetes, which is supported by the Cloud Native Computing Foundation, count the update in which beta APIs will be turned off by default among the improvements at the heart of version 1.24. While existing beta APIs and new versions of these APIs will continue to be enabled by default, beta APIs created after update 1.24 will be automatically considered closed. This update, which is not a new feature or deprecation, is seen as a change in the way the Kubernetes team manages beta APIs.
OpenAPI v3 support
To understand OpenAPI v3 support, let’s talk about API and OpenAPI concepts. API, which can be translated as “application program interface” in Turkish, is a technology that allows two or more software to interact. For example, when you place an order from a grocery delivery application, it is possible to connect to your bank’s payment screen through the interaction on the API.
OpenAPI stands out as a technology that allows a programmer from anywhere in the world to access and integrate with the API and allows companies to integrate different software into their daily operations. Kubernetes 1.24 brings beta support to the third version of OpenAPI.
Load balancer type selection
The ability to select a load balancer type, which was also available in the previous version and tested in beta, is being made available to the entire Kubernetes ecosystem with the Stargazer update. It is the service provider’s responsibility to create a type of service called LoadBalancer on a managed Kubernetes cluster that can be translated into Turkish as a load balancer. With the development of LoadBalancerClass, users are finding that they will be determining what type of load balancer they want. This update is expected to make networking easier for users of managed Kubernetes services.
How was the Kubernetes 1.24 update interpreted?
ZDNet’s Senior Guest Editor Steven Vaughan-Nichols describes Kubernetes 1.24 as a “phenomenal update.” Noting that businesses often prefer to wait a bit before switching to a new Kubernetes version, Nichols also believes that an exception may be applied for this update.
Engineer Víctor Jiménez Cerrada specifically refers to the removal of dockershim, saying that the transition to runtime providers such as containerd or CRI-O is laborious but essential.
Senior chief software engineer Mrunal Patel argues that the removal of dockershim should not be feared. According to Patel, developers need to usher in the era of CRI-based runtimes, which will enable them to move faster in adopting newer features. Encouraging developers to switch to recommended runtime practices, Patel thinks “those who don’t switch to one of the recommended ones are taking a security risk.”
As Global IT, which offers a new era in distribution to businesses in Turkey with 15 years of experience, more than 3,300 completed projects, 700 reference customers moving to the cloud and nearly 90 thousand users, we ask:
What do you think about Kubernetes 1.24? Can you share with us your views on the new version of Kubernetes, which he says is “the work of hundreds of contributors and thousands of end users around the world” and that the logo and name were “inspired by the idea that each stakeholder is a star in the sky”?