白嘴鸦在kubernetes上坏了吗?

问题描述

使用Ceph v1.14.10,在内部k8s 1.16上运行Rook v1.3.8。经过10天没有任何麻烦之后,我们决定排干一些节点,然后,所有移动的吊舱不再能够附着到其PV,看起来Ceph群集已损坏:

我的ConfigMap rook-ceph-mon-endpoints引用了2个缺少的单连IP:

csi-cluster-config-json: '[{"clusterID":"rook-ceph","monitors":["10.115.0.129:6789","10.115.0.4:6789","10.115.0.132:6789"]}]

但是

kubectl -n rook-ceph get pod -l app=rook-ceph-mon -o wide

NAME                               READY   STATUS    RESTARTS   AGE     IP             NODE                    NOMINATED NODE   READInesS GATES
rook-ceph-mon-e-56b849775-4g5wg    1/1     Running   0          6h42m   10.115.0.2     XXXX   <none>           <none>
rook-ceph-mon-h-fc486fb5c-8mvng    1/1     Running   0          6h42m   10.115.0.134   XXXX   <none>           <none>
rook-ceph-mon-i-65666fcff4-4ft49   1/1     Running   0          30h     10.115.0.132   XXXX   <none>           <none>

是正常现象还是必须执行某种“对帐”任务才能使用新的mon pod IP更新CM?

(可能与https://github.com/rook/rook/issues/2262相关)


我必须手动更新:

  • 秘密rook-ceph-config
  • cm rook-ceph-mon-endpoints
  • cm rook-ceph-csi-config

解决方法

正如@travisn所说:

操作员拥有更新该configmap和密钥的权限。除非出现https://rook.github.io/docs/rook/v1.4/ceph-disaster-recovery.html中所述的某些灾难恢复情况,否则不要手动更新它们。