Kubernetes 1.24 no longer uses Docker as the built-in container runtime. If you want to update the Kubernetes version of your Container Service for Kubernetes (ACK) cluster to 1.24 or later, you must change the container runtime from Docker to containerd for your cluster. This topic describes how to change the container runtime from Docker to containerd for an ACK cluster in the ACK console.
Prerequisites
- An ACK cluster is created. For more information, see Create an ACK managed cluster.
- Nodes that use Docker are deployed in the ACK cluster.
Background information
Kubernetes 1.24 no longer uses Docker as the built-in container runtime. Dockershim is removed in Kubernetes 1.24. kubelet can no longer use Dockershim to interact with Docker and manage containers.
Due to this update, ACK clusters that run Kubernetes 1.24 or later do not use Docker as the built-in container runtime. If your cluster uses Docker as the container runtime, you must change the container runtime to containerd before you can update the Kubernetes version of your cluster to 1.24 or later.
containerd is an industry-standard container runtime that overweighs Docker in terms of cost-effectiveness and security. For more information about containerd, see containerd.
Considerations
After you change the container runtime from Docker to containerd, Docker is no longer the administrator of the container lifecycle. You can no longer run Docker commands or call the Docker API to query container status or manage containers.
Procedure
- Log on to the ACK console and click Clusters in the left-side navigation pane.
- On the Clusters page, click the name of a cluster and choose in the left-side navigation pane.
- On the Node Pools page, select the node pool that you want to manage and choose More > Upgrade.
- Select Runtime Upgrade and click Precheck.
- After the cluster passes the precheck, select Runtime Upgrade and click Start Update.