opensuse配置k0s
k0s管理镜像工具nerdctl
```shell
sudo su
# 手动拉取镜像
k0s kubectl get pods --all-namespaces
# NAMESPACE NAME READY STATUS RESTARTS AGE
# kube-system metrics-server-7446cc488c-qxz4t 0/1 Pending 0 4h9m
# kube-system coredns-7bf57bcbd8-2r6gr 0/1 Pending 0 4h9m
# kube-system kube-proxy-f82w4 0/1 ContainerCreating 0 4h9m
# kube-system kube-router-rhvvp 0/1 Init:0/2 0 4h9m
k0s kubectl describe pods/metrics-server-7446cc488c-qxz4t -n kube-system|grep Image:
k0s kubectl describe pods/kube-proxy-f82w4 -n kube-system|grep Image:
k0s kubectl describe pods/kube-router-rhvvp -n kube-system|grep Image:
k0s kubectl describe pods/coredns-747bdcfcc5-l7n49 -n kube-system|grep Image:
k0s kubectl describe pods/metrics-server-fd869c6b5-vqhkq -n kube-system|grep Image:
# 对应pod缺少的镜像
# registry.k8s.io/metrics-server/metrics-server:v0.6.2
# docker.io/coredns/coredns:1.10.1
# registry.k8s.io/kube-proxy:v1.26.2
# docker.io/cloudnativelabs/kube-router:v1.5.1
registry.k8s.io/pause:3.6
export CONTAINERD_NAMESPACE=k8s.io
export CONTAINERD_ADDRESS=unix:///run/k0s/containerd.sock
# 拉取镜像并重新标签
./nerdctl pull anjia0532/google-containers.metrics-server.metrics-server:v0.6.2
./nerdctl tag 0542aeb0025f registry.k8s.io/metrics-server/metrics-server:v0.6.2
./nerdctl pull docker.io/coredns/coredns:1.10.1
#
./nerdctl pull linode/kube-proxy:v1.26.2
./nerdctl tag linode/kube-proxy:v1.26.2 registry.k8s.io/kube-proxy:v1.26.2
./nerdctl pull docker.io/cloudnativelabs/kube-router:v1.5.1
./nerdctl pull quay.io/k0sproject/cni-node:1.1.1-k0s.0
./nerdctl pull aiotceo/pause:3.6
./nerdctl tag aiotceo/pause:3.6 registry.k8s.io/pause:3.6
# 查看镜像
./nerdctl images
# 重启服务
k0s kubectl get deployment --all-namespaces
k0s kubectl rollout restart deployment metrics-server -n kube-system
k0s kubectl rollout restart deployment coredns -n kube-system
# 配置文件
k0s config create > ./k0s.yaml
# 需要下载的镜像列表
k0s airgap list-images -c ./k0s.yaml
# 下载镜像
sudo k0s airgap list-images | xargs -n1 sudo nerdctl -H /var/run/docker/containerd/containerd.sock -n k8s.io pull
sudo nerdctl -H /var/run/docker/containerd/containerd.sock -n k8s.io images
# 1.通过配置文件安装服务
sudo k0s install controller -c ./k0s.yaml