Migrating Kubernetes Clusters from Docker to containerd
This topic describes migrating legacy Kubernetes clusters from Docker container runtime to the the new Hewlett Packard Enterprise distribution of Kubernetes, which implements containerd runtime.
Prerequisites
- You must upgrade the existing HPE Ezmeral Runtime Enterprise deployment to version 5.5.0 or later. See Upgrading to HPE Ezmeral Runtime Enterprise 5.7.x.
- You must migrate data from HPE Ezmeral Data Fabric on Kubernetes or Embedded Data Fabric to HPE Ezmeral Data Fabric on Bare Metal. See HPE Ezmeral Data Fabric as Tenant/Persistent Storage.
About this task
Legacy Kubernetes clusters using Docker container runtime must be migrated to the
Hewlett Packard Enterprise distribution of Kubernetes, which
implements containerd runtime.
NOTE
The Kubernetes cluster is unavailable for user
workloads during migration.IMPORTANT
Setups with only 1
master host require extra hardware to ensure ETCD data is not lost.To simplify this migration process, Hewlett Packard Enterprise can provide a command line migration tool that runs on the HPE Ezmeral Runtime Enterprise Controller node, either as root or as the user who installed HPE Ezmeral Runtime Enterprise. For more information, contact Hewlett Packard Enterprise support.
Procedure
-
Migrate the Kubernetes master hosts:
- Shrink the Kubernetes masters, one host at a time.
- Delete each Kubernetes master host removed in the previous step.
- Re-add each host that you deleted in the previous step as a Kubernetes host, and assign it the master role. Each newly added host comes up with the Hewlett Packard Enterprise distribution of Kubernetes and containerd runtime.
- Repeat this process for any remaining masters that are still on Docker container runtime.
-
Migrate the Kubernetes worker hosts:
- After migrating the Kubernetes masters to containerd, delete the Kubernetes workers one host at a time.
- Re-add each host that you deleted in the previous step as a Kubernetes worker host. Each newly added host comes up with the Hewlett Packard Enterprise distribution of Kubernetes and containerd runtime.
- Repeat this process for any remaining workers that are still on Docker container runtime.