几天前,当我的节点不断重启时,我遇到了一个问题
我的堆栈:
1 个 master,2 个 worker 用 kubeadm (v1.17.1-00) 构建的 k8s-cluster
Ubuntu 18.04 x86_64 4.15.0-74-generic
法兰绒 cni 插件 (v0.11.0)
用于存储的 Rook (v1.2) cephfs。Ceph 部署在我的应用程序所在的同一个集群中
我能够运行 ceph 集群,但是当我尝试部署使用我的 rook-volumes 的应用程序时,突然我的 pod 开始死亡
kubectl describe pods/name
使用命令时收到此消息:
Pod sandbox changed, it will be killed and re-created
在我得到的 k8s 事件中:
<Node name> has been rebooted
一段时间后,节点会复活,但最终会在 2-3 分钟内死亡。
我试图耗尽我的节点并连接回我的集群,但之后另一个节点出现了这个错误。
我通过命令查看了失败节点的系统错误日志journalctl -p 3
。
并发现,日志中充斥着这些消息:kernel: cache_from_obj: Wrong slab cache. inode_cache but object is from ceph_inode_info
.
谷歌搜索这个问题后,我发现了这个问题: https ://github.com/coreos/bugs/issues/2616
事实证明,cephfs 只是不适用于某些版本的 Linux 内核!对我来说,这些都不起作用:
- Ubuntu 19.04 x86_64 5.0.0-32-generic
- Ubuntu 18.04 x86_64 4.15.0-74-generic