我正在尝试使用 rook 在 kubernetes 集群上配置 ceph,我运行了以下命令:
kubectl apply -f common.yaml
kubectl apply -f operator.yaml
kubectl apply -f cluster.yaml
我有三个带有附加卷的工作节点,在主节点上,除了这三个节点的 rook-ceph-crashcollector pod 之外,所有创建的 pod 都在运行,当我描述这些 pod 时,我收到此消息
MountVolume.SetUp failed for volume "rook-ceph-crash-collector-keyring" : secret "rook-ceph-crash-collector-keyring" not found
但是所有节点都在运行和工作
最佳答案
很难确切地说出造成这种情况的原因,但可能性很小:
节点之间的集群网络问题
/var/lib/kubelet
目录中与 rook ceph 相关的一些可能剩余的套接字。连接到外部 Ceph 集群时出现错误。
为了解决您的问题,您可以:
使用 Flannel 并确保它使用正确的接口(interface)。检查
kube-flannel.yml
文件并查看它是否使用--iface=
选项。或者尝试使用 Calico。清除
./var/lib/rook/
、./var/lib/kubelet/plugins/
和./var/lib/kubelet/plugins_registry/
目录并重新安装 rook 服务。通过执行以下命令手动创建
rook-ceph-crash-collector-keyring
key :kubectl -n rook-ceph create Secret generic rook-ceph-crash-collector-keyring
.
关于kubernetes - 卷 "rook-ceph-crash-collector-keyring": secret "rook-ceph-crash-collector-keyring" not found 的 MountVolume.SetUp 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64129362/