• K8S-解决报错--总结日记


    问题一:etcd和apiserver无法正常启动

    问题查看nodes节点发生报错

    image-20220725174108867

    解决方法/步骤

    步骤一:K8S集群节点异常重启后,再终端执行kubectl get nodes命令,出现报错dial tcp 10.200.18.100:6443: connect: connection refused。
    步骤二:通过docker ps -a可以看到api现在处于exit退出状态。

    image-20220725174251074

    步骤三:查看apiserver服务容器的启动日志, 发现又出现报错Error while dialing dial tcp 127.0.0.1:2379: connect: connection refused,2379是etcd的端口,那么apiserver是由于etcd无法连接而启动不了。

    image-20220725174342681

    步骤四:
    接着查看etcd的启动日志,发现报错mvcc: cannot unmarshal event: proto: wrong wireType = 0 for field Key。经查询资料,此报错是由于服务器非正常关机(意外掉电,强制拔电)后 etcd数据损坏导致的,这个节点之前确实是出现异常关机,etcd无法启动,那么解决此问题就行了。

    image-20220725174412210

    image-20220725174427092

    步骤五:
    按照指导进行操作,在故障节点上停止etcd服务并删除损坏的 etcd 数据,现在etcd服务本来就没有启动,删除前先备份数据,最后启动etcd服务。
    注:容器的数据在/var/lib目录下,按照下图操作。
    root@k8s-master:/var/lib/etcd# find ./ -type d -name member
    ./member
    root@k8s-master:/var/lib/etcd# cd ./member
    root@k8s-master:/var/lib/etcd/member# ls
    snap  wal
    root@k8s-master:/var/lib/etcd/member# mkdir ../bak
    root@k8s-master:/var/lib/etcd/member# mv * ../bak/
    root@k8s-master:/var/lib/etcd/member# ls
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    image-20220725174552022

    步骤六:最后先启动etcd服务,然后启动api-server,执行kubectl get nodes后可以正常显示节点状态,问题解决。

    可以重启容器

    root@k8s-master:/var/lib/etcd/member# docker start 37f1e8e68a81  重启 etcd
    
    root@k8s-master:/var/lib/etcd/member# docker start c32fbf338038  重启 api
    
    • 1
    • 2
    • 3

    /etcd/member# docker start c32fbf338038 重启 api

    
    
    ![image-20220725175143197](https://img-blog.csdnimg.cn/img_convert/08c7edc74f3785d2957d7e6badb59244.png)
    
    • 1
    • 2
    • 3
  • 相关阅读:
    流量狂飙!暴涨2000万播放成B站创作标杆
    面试真题汇总430家
    前端Mock神器-Apifox
    【C++】-- STL之map和set详解
    Go 中使用map时注意的问题
    第三次工业革命(六)
    数据结构 字符串 (第6天)
    企业架构LNMP学习笔记17
    【Leetcode】964. Least Operators to Express Number
    【Flink实战系列】Flink SQL 字符串类型的字段如何实现列转行?
  • 原文地址:https://blog.csdn.net/tianmingqing0806/article/details/126000216