kubernetes节点断电重启


背景:运行的好好的k8s集群,某天断电,发现一个节点炸了,显示NotReady

kubectl get nodes

 

可以确定 k8s-node1是真的炸了,那么如何查找问题呢? 我们用它:journalctl工具是CentOS-7才有的工具

Systemd 统一管理所有 Unit 的启动日志。带来的好处就是 ,可以只用journalctl一个命令,查看所有日志(内核日志和 应用日志)。日志的配置文件/etc/systemd/journald.conf 

journalctl用法:
查看所有日志(默认情况下 ,只保存本次启动的日志): journalctl 
查看内核日志(不显示应用日志): journalctl -k 
查看系统本次启动的日志: journalctl -b

查看上一次启动的日志(需更改设置):
 在该[Journal]部分下,将该Storage=选项设置为“persistent”以启用持久记录:
        vim    /etc/systemd/journald.conf
    . . .
    [Journal]
    Storage=persistent

查看httpd服务的日志信息:

我们使用的是:

追踪日志
要主动追踪当前正在编写的日志,大家可以使用-f标记。同样功能类似为tail -f,只要不终止,会一直监控
journalctl -f

也许最有用的过滤方式是你感兴趣的单位。我们可以使用这个-u选项来过滤我们可以使用这个-u选项来过滤
journalctl -u

所以我们最终使用的命令是:
journalctl -f -u kubelet!

最后重新启动。

#重启docker
systemctl daemon-reload systemctl restart docker

#重启kubelet
systemctl restart kubelet.service

 

这次的原因是断电导致的集群某个节点挂掉。

 可以看出kubernetes容灾能力很强,重启docker后,node节点上部署的容器也在逐步恢复。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM