kubekey
kubekey copied to clipboard
arm64 crictl architecture and containerd wrong
What is version of KubeKey has the issue?
kk version: &version.Info{Major:"3", Minor:"1", GitVersion:"v3.1.11-dirty", GitCommit:"f9d473060ec34cd8ffe5a87f2eceb1dead397f5c", GitTreeState:"dirty", BuildDate:"2025-08-18T17:06:14Z", GoVersion:"go1.23.2", Compiler:"gc", Platform:"linux/arm64"}
What is your os environment?
Ubuntu 22.04 ARM64
KubeKey config file
apiVersion: kubekey.kubesphere.io/v1alpha2
kind: Cluster
metadata:
name: sample
spec:
hosts:
- {name: arm-us1, address: 10.0.0.28, internalAddress: 10.0.0.28, port: 22, user: kube, password: "kube@password", privateKeyPath: "~/.ssh/kube", arch: arm64}
- {name: arm-us2, address: 10.0.0.29, internalAddress: 10.0.0.29, port: 22, user: kube, password: "kube@password", privateKeyPath: "~/.ssh/kube", arch: arm64}
roleGroups:
etcd:
- arm-us1
control-plane:
- arm-us1
worker:
- arm-us1
- arm-us2
controlPlaneEndpoint:
## Internal loadbalancer for apiservers
# internalLoadbalancer: haproxy
domain: lb.kubesphere.local
address: ""
port: 6443
kubernetes:
version: v1.32.8
clusterName: cluster.local
autoRenewCerts: true
containerManager: containerd
etcd:
type: kubekey
network:
plugin: calico
kubePodsCIDR: 10.230.28.0/18
kubeServiceCIDR: 10.230.29.0/18
## multus support. https://github.com/k8snetworkplumbingwg/multus-cni
multusCNI:
enabled: false
registry:
privateRegistry: ""
namespaceOverride: ""
registryMirrors: []
insecureRegistries: []
addons: []
A clear and concise description of what happend.
14:27:53 CST [PullModule] Start to pull images on all nodes
14:27:53 CST message: [arm-us2]
downloading image: kubesphere/pause:3.9
14:27:53 CST message: [arm-us1]
downloading image: kubesphere/pause:3.9
14:27:53 CST message: [arm-us1]
pull image failed: Failed to exec command: sudo -E /bin/bash -c "env PATH=$PATH crictl pull kubesphere/pause:3.9"
FATA[0000] validate service connection: validate CRI v1 image API for endpoint "unix:///run/containerd/containerd.sock": rpc error: code = Unimplemented desc = unknown service runtime.v1.ImageService: Process exited with status 1
14:27:53 CST retry: [arm-us1]
14:27:53 CST message: [arm-us2]
pull image failed: Failed to exec command: sudo -E /bin/bash -c "env PATH=$PATH crictl pull kubesphere/pause:3.9"
FATA[0000] validate service connection: validate CRI v1 image API for endpoint "unix:///run/containerd/containerd.sock": rpc error: code = Unimplemented desc = unknown service runtime.v1.ImageService: Process exited with status 1
14:27:53 CST retry: [arm-us2]
14:27:58 CST message: [arm-us1]
downloading image: kubesphere/pause:3.9
14:27:58 CST message: [arm-us2]
downloading image: kubesphere/pause:3.9
14:27:58 CST message: [arm-us2]
solve: all nodes excute
wget https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.34.0/crictl-v1.34.0-linux-arm64.tar.gz
tar xf crictl-v1.34.0-linux-arm64.tar.gz
mv crictl /usr/bin/crictl
pull image failed: Failed to exec command: sudo -E /bin/bash -c "env PATH=$PATH crictl pull kubesphere/pause:3.9"
FATA[0000] validate service connection: validate CRI v1 image API for endpoint "unix:///run/containerd/containerd.sock": rpc error: code = Unimplemented desc = unknown service runtime.v1.ImageService: Process exited with status 1
14:29:57 CST message: [arm-us2]
pull image failed: Failed to exec command: sudo -E /bin/bash -c "env PATH=$PATH crictl pull kubesphere/pause:3.9"
FATA[0000] validate service connection: validate CRI v1 image API for endpoint "unix:///run/containerd/containerd.sock": rpc error: code = Unimplemented desc = unknown service runtime.v1.ImageService: Process exited with status 1
14:29:57 CST failed: [arm-us1]
14:29:57 CST failed: [arm-us2]
error: Pipeline[CreateClusterPipeline] execute failed: Module[PullModule] exec failed:
failed: [arm-us1] [PullImages] exec failed after 3 retries: pull image failed: Failed to exec command: sudo -E /bin/bash -c "env PATH=$PATH crictl pull kubesphere/pause:3.9"
FATA[0000] validate service connection: validate CRI v1 image API for endpoint "unix:///run/containerd/containerd.sock": rpc error: code = Unimplemented desc = unknown service runtime.v1.ImageService: Process exited with status 1
failed: [arm-us2] [PullImages] exec failed after 3 retries: pull image failed: Failed to exec command: sudo -E /bin/bash -c "env PATH=$PATH crictl pull kubesphere/pause:3.9"
FATA[0000] validate service connection: validate CRI v1 image API for endpoint "unix:///run/containerd/containerd.sock": rpc error: code = Unimplemented desc = unknown service runtime.v1.ImageService: Process exited with status 1
solve: all nodes excute
vim /etc/containerd/config.toml
#disabled_plugins = ["cri"]
disabled_plugins = []
systemctl restart containerd
# test
$ crictl pull kubesphere/pause:3.9
### Relevant log output
```shell
Additional information
No response
Thanks for the feedback. The reason might be that the version of containerd you installed is too low to support the Kubernetes version youβre using. You can uninstall the old version of containerd and use Kubekey to install containerd instead.