Docker kubernetes 1.12.2未能加载Kubelet配置文件/var/lib/Kubelet/config.yaml

Docker kubernetes 1.12.2未能加载Kubelet配置文件/var/lib/Kubelet/config.yaml,docker,kubernetes,kubelet,Docker,Kubernetes,Kubelet,环境: 库伯内特斯1.12.2 Docker 18.9.0 微K8S.kubectl $k全部获得 NAME READY STATUS RESTARTS AGE pod/mysql-0 1/1 Running 0 72s pod/nginx-ingress-mic

环境:

  • 库伯内特斯1.12.2
  • Docker 18.9.0
  • 微K8S.kubectl
$k全部获得

NAME                                          READY   STATUS             
RESTARTS   AGE
pod/mysql-0                                   1/1     Running            0          72s
pod/nginx-ingress-microk8s-controller-c2pgz   0/1     CrashLoopBackOff   129        22h
pod/web-0                                     1/1     Running            0          78s

NAME                    TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)    AGE
service/kubernetes      ClusterIP   10.152.183.1   <none>        443/TCP    70m
service/mysql-service   ClusterIP   None           <none>        3306/TCP   72s
service/nginx-service   ClusterIP   None           <none>        80/TCP     78s

NAME                                               DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR   AGE
daemonset.apps/nginx-ingress-microk8s-controller   1         1         0       1            0           <none>          2d22h

NAME                     DESIRED   CURRENT   AGE
statefulset.apps/mysql   1         1         72s
statefulset.apps/web     1         1         78s

什么是nginx-ingres-microk8s-controller-c2pgz?谁开始的?

因为我已经更新了kubelet,所以我无法找到/var/lib/kubelet/config.yaml

对于“系统控制状态kubelet | journalctl-xe”

未能加载Kubelet配置文件/var/lib/Kubelet/config.yaml

根据下面的链接,我已经从其他工作节点及其工作节点复制了config.yaml


您在评论中提到原因与
kubeadm init
失败有关

/var/lib/kubelet/config.yaml
config文件仅在以下情况下填充:

  • 主节点中成功的群集初始化(
    kubeadmin init

  • 在工作节点中-成功加入集群后(
    kubeadm-join

  • 因此,如果问题出在
    kubeadm init
    上,您应该检查命令的输出(如果可以将其粘贴到问题中,也很好)。
    确保您不使用
    --ignore preflight errors=all
    标志运行kubeadm init

    我不熟悉您的具体错误,但为了让答案更有帮助,我将尝试给出一些可能的解决方案:

  • 确保kubeadm已就位

  • 检查防火墙规则-确保不阻止出口流量,并且工作节点的端口
    6443
    入口规则已打开(与加入阶段相关)

  • 确保设备未被占用

  • 尝试使用
    systemctl restart Kubelet
    重新启动Kubelet,并使用以下工具检查最新日志:
    sudo journalctl-u Kubelet-n 100--无寻呼机

  • 检查Docker版本是否可以更新为较新的stabler版本

  • 尝试运行
    kubeadm reset
    ,并通过添加
    --kubernetes version=X.Y.Z
    确保以最新版本或特定稳定版本重新运行
    kubeadm init


  • 它是在加入工作节点时发生的吗?或者系统已经在运行,并且它开始发生了?系统上是否存在/var/lib/kubelet/config.yaml?否。文件丢失。您说的“否”是什么意思?你能分享你想做什么、你的集群架构以及你什么时候会遇到这个错误吗?我认为这是因为kubeadm init失败了:欢迎链接到一个解决方案,但请确保你的答案在没有它的情况下是有用的:这样你的其他用户就会知道它是什么以及为什么它会出现,然后引用你链接到的页面最相关的部分,以防目标页面不可用。
    failed to load Kubelet config file /var/lib/kubelet/config.yaml, error failed to read kubelet config file "/var/lib/kubelet/config.yaml", error: open /var/lib/kubelet/config.yaml: no such file or directory
    
    Error syncing pod f0ab0f74-e6f2-11e8-8410-482ae31e6a94 ("nginx-ingress-microk8s-controller-c2pgz_default(f0ab0f74-e6f2-11e8-8410-482ae31e6a94)"), skipping: failed to "StartContainer" for "nginx-ingress-microk8s" with CrashLoopBackOff: "Back-off 5m0s restarting failed container=nginx-ingress-microk8s pod=nginx-ingress-microk8s-controller-c2pgz_default(f0ab0f74-e6f2-11e8-8410-482ae31e6a94)"