我在 Suse 12 上安装了 GlusterFS,其中包含 2 个虚拟机和 2 个副本。当一台服务器发生故障时,它不会自动故障转移到第二个 IP。我可以用负载均衡器或心跳服务做同样的事情吗?如果可以,怎么做?我需要为 GFS 配置 HA。
Gluster 卷信息:卷名称:gv0 类型:复制卷 ID:3b2eb6c9-a869-4e72-8cec-7d04583ea1d8 状态:已启动砖块数:1 x 2 = 2 传输类型:tcp 砖块:Brick1:10.116.33.146:/export/sdb1/brick Brick2:10.116.33.134:/export/sdb1/brick
Gluster 对等状态:对等体数量:1 主机名:mo-2005258b4.lab-rot.saas.sap.corp Uuid:85f4907b-d142-4fea-acc0-83ee74116142 状态:集群中的对等体(已连接) 其他名称:10.116.33.134
答案1
在这种情况下,不应使用或不需要负载平衡器的心跳。是的,您正在使用来自客户端的单个 IP 或主机名进行挂载(通过 mount 命令或通过 autofs),但这仅在挂载过程中进行。此后,Gluster 通过客户端的 FUSE 进行处理,并且知道(并连接到)所有存储节点。您肯定不会因为其他原因而进行故障转移。
您介意发布您的 gluster 信息以便我们查看吗?在这种情况下,缺乏故障转移可能是许多其他问题。确保 NTP 正常运行。这些节点必须保持时间同步才能作为 Gluster 对等节点正常运行。
您可以运行以下一些命令来输出一些有用的信息:
gluster volume info all
gluster peer status
您还可以通过以下方式找到您的卷/块的日志:
gluster volume log locate <VOLNAME> [BRICK]