我已经在Wireguard VPN的顶部使用印花布在数字海洋Ubuntu 18.04 LTS小滴上设置了一个k8s集群,并且能够使用traefik作为外部LB设置nginx-ingress。现在,我要遵循https://rook.io/docs/rook/master/ceph-quickstart.html上的快速入门,使用rook ceph来设置分布式存储,但是似乎监视器从未达到法定人数(即使只有一个法定人数)。实际上,监视器本身是一个范围,但是操作员或任何其他监视器似乎都不知道,操作员在尝试检查状态时会挂起。
我一直尝试从Wireguard,calico和ufw排除网络问题。我什至将ufw设置为默认情况下暂时允许所有流量,以确保我不允许一个端口,但流量在另一个接口上(我有wg0,eth1,tunl0和calico接口)。
我未遵循ceph故障排除指南:http://docs.ceph.com/docs/master/rados/troubleshooting/troubleshooting-mon/#recovering-a-monitor-s-broken-monmap
我已经做了4天了,但我没有解决办法。
这是我设置存储集群的方式
cd cluster/examples/kubernetes/ceph
kubectl apply -f common.yaml
kubectl apply -f operator.yaml
kubectl apply -f cluster-test.yaml
运行kubectl get pods
返回
NAME READY STATUS RESTARTS AGE
pod/rook-ceph-agent-9ws2p 1/1 Running 0 24s
pod/rook-ceph-agent-v6v9n 1/1 Running 0 24s
pod/rook-ceph-agent-x2jv4 1/1 Running 0 24s
pod/rook-ceph-mon-a-74cc6db5c8-8s5l5 1/1 Running 0 9s
pod/rook-ceph-operator-7cd5d8bd4c-pclxp 1/1 Running 0 25s
pod/rook-discover-24cfj 1/1 Running 0 24s
pod/rook-discover-6xsnp 1/1 Running 0 24s
pod/rook-discover-hj4tc 1/1 Running 0 24s
但是,当我尝试检查显示器的状态时,会从操作员窗格中得到:
#This hangs forever
kubectl exec -it rook-ceph-operator-7cd5d8bd4c-pclxp ceph status
#This hangs foverer
kubectl exec -it rook-ceph-operator-7cd5d8bd4c-pclxp ceph ping mon.a
#This returns [errno 2] error calling ping_monitor
#Which I guess should, becasue mon.b does/should not exist
#But I expected a response such as mon.b does not exist
kubectl exec -it rook-ceph-operator-7cd5d8bd4c-pclxp ceph ping mon.b
顺便说一下,从操作员那里撬动显示器吊舱就可以了
操作员日志 https://gist.github.com/figassis/0a3f499f5e3f79a430c9bd58718fd29f#file-operator-log
监视日志 https://gist.github.com/figassis/0a3f499f5e3f79a430c9bd58718fd29f#file-mon-a-log
监视状态,获取者通过套接字直接从监视窗格中形成 https://gist.github.com/figassis/0a3f499f5e3f79a430c9bd58718fd29f#file-mon-a-status
答案 0 :(得分:0)
您可以在ceph工具箱窗格中执行ceph status
命令。
https://github.com/rook/rook/blob/master/Documentation/ceph-toolbox.md