8.3. 集群和 Gluster Hook

8.3.1. 管理 Gluster Hook

Gluster hook 是卷的扩展。您可以通过 Manager 来管理 Gluster hook。如果 hook 的内容类型是文本,您可以直接查看它的内容。
通过 Manager,您可以执行以下操作:
  • 查看主机上可用的 hook。
  • 查看 hook 的内容和状态。
  • 启用或禁用 hook。
  • 解决 hook 的冲突。

8.3.2. 列出 hook

介绍

列出您的环境中的 Gluster hook。

过程 8.12. 列出 hook

  1. 使用集群资源标签页、树形模式或搜索功能来找到并选择集群。
  2. 选择 Gluster Hooks 子标签页在详情框中类出 hook。
结果

列出您的环境中的 Gluster hook。

8.3.3. 查看 hook 的内容

介绍

查看您的环境中的 hook 的内容。

过程 8.13. 查看一个 hook 的内容

  1. 使用集群资源页、树形模式或搜索功能来找到并选择集群。
  2. 选择 Gluster Hooks 子标签页在详情框中类出 hook。
  3. 选择内容类型是文本的 hook,点查看内容打开 Hook 内容窗口。
结果

您查看了您的环境中的一个 hook 的内容。

8.3.4. 启用或禁用 hook

介绍

切换启用或禁用 Gluster hook。

过程 8.14. 启用或禁用一个 hook。

  1. 使用集群资源页、树形模式或搜索功能来找到并选择集群。
  2. 选择 Gluster Hooks 子标签页在详情框中类出 hook。
  3. 选择一个 hook,点启用禁用键。这个 hook 会在集群的所有节点上被启用或被禁用。
结果

您在您的环境中启用或禁用了一个 Gluster hook。

8.3.5. 刷新 hook

介绍

在默认条件下,Manager 会每个小时运行一个程序来检查集群中所有服务器上所安装的 hook 的状态。您也可以点同步键手动刷新 hook。

过程 8.15. 刷新一个 hook

  1. 使用集群资源页、树形模式或搜索功能来找到并选择集群。
  2. 选择 Gluster Hooks 子标签页在详情框中列出 hook。
  3. 同步键。
结果

hook 被同步,并在详情框中显示最新的结果。

8.3.6. 解决冲突

hook 在集群页中的 Gluster Hooks 子页中被显示。那些有冲突的 hook 会被一个感叹号标注。这意味着这个 hook 的内容或状态在不同的服务器上不一致;或在一个或多个服务器上缺少这个 hook 的脚本。服务器上的 hook 会定期和引擎数据库进行同步,不同服务器上的 hook 可能会出现以下冲突:
  • 内容冲突 - 相同 hook 的内容在不同服务器上不一致。
  • 丢失冲突 - 一个或多个服务器上没有这个 hook。
  • 状态冲突 - 同一个 hook 的状态在不同服务器上不一致。
  • 多重冲突 - 一个 hook 有以上提到的两个或两个以上的冲突。

8.3.7. 解决内容冲突

介绍

当一个 hook 的内容在不同服务器上不一致时,系统会把这个 hook 标记为有冲突。要解决这类冲突,您必须选择一个 hook 内容的版本,并把它复制到所有服务器上。

过程 8.16. 解决一个内容冲突

  1. 使用集群资源标签页、树形模式或搜索功能来找到并选择集群。
  2. 选择 Gluster Hooks 标签页在详情框中类出了所有 hook。
  3. 选择有冲突的 hook,点解决冲突打开解决冲突窗口。
  4. 从“选择源来查看内容”项中选择引擎或服务器来查看 hook 的内容,并决定使用哪个版本的 hook 内容。

    注意

    所选的 hook 内容将覆盖所有服务器和引擎上的相同 hook 的内容。
  5. 使用 Use content from 下拉菜单选择您需要的 hook 内容所在的服务器或引擎。
  6. 确定解决冲突并关闭窗口。
结果

被选择的 hook 内容被复制到所有服务器和引擎中。这个 hook 的内容在您的环境中被保持一致。

8.3.8. 解决丢失 hook 冲突

介绍

当一个 hook 没有出现在所有服务器和引擎上时,系统会把这个 hook 标记为有冲突。要解决这类冲突,您可以选择一个 hook 内容的版本,并把它复制到所有服务器和引擎上;或把这个 hook 删除。

过程 8.17. 解决一个丢失 hook 冲突

  1. 使用集群资源标签页、树形模式或搜索功能来找到并选择集群。
  2. 选择 Gluster Hooks 子标签页在详情框中类出 hook。
  3. 选择有冲突的 hook,点解决冲突打开解决冲突窗口。
  4. 选择状态为已启用的 hook 来查看它的内容。
  5. 根据您的具体情况,选择 复制这个 hook 到所有服务器删除缺失的 hook。如果选择后一个选项,这个 hook 会从所有服务器和引擎上删除。
  6. 启动解决冲突并关闭窗口。
结果

根据您所做的选择,被选择的 hook 内容被复制到所有服务器和引擎中,它的内容在您的环境中被保持一致;或您选择的 hook 被从您的环境中完全删除。

8.3.9. 解决状态冲突

介绍

当一个 hook 的状态在不同服务器上不一致时,系统会把这个 hook 标记为有冲突。要解决这类冲突,您必须选择一个 hook 状态,并把这个 hook 在所有服务器上都设置为这个状态。

过程 8.18. 解决一个状态冲突

  1. 使用集群资源标签页、树形模式或搜索功能来找到并选择集群。
  2. 选择 Gluster Hooks 在标签页,在详情框中列出了所有 hook。
  3. 选择有冲突的 hook,点解决冲突打开解决冲突窗口。
  4. Hook 状态设置为已启用已禁用
  5. 确定解决冲突并关闭窗口。
结果

这个 hook 在所有服务器和引擎上的状态都被设为同一个值。

8.3.10. 解决多重冲突

介绍

一个 hook 可能会有多种冲突,这可以通过解决冲突窗口来同时解决所有冲突或单独解决每个冲突,从而到达 hook 在所有服务器和引擎上保持一致的目的。

过程 8.19. 解决多重冲突

  1. 使用集群资源标签页、树形模式或搜索功能来找到并选择集群。
  2. 选择 Gluster Hooks 子标签页,在详情框中类出了所有 hook。
  3. 选择有冲突的 hook,点解决冲突打开解决冲突窗口。
  4. 根据冲突的类型选择相应的步骤。
  5. 确定解决冲突并关闭窗口。
结果

您解决了所有冲突,hook 在所有服务器和引擎上保持一致。

8.3.11. 管理 Gluster 同步(Gluster 同步)

Gluster 同步 (Gluster Sync)功能会定期从 GlusterFS 上获取最新的集群配置,并通过 Manager 把这些配置和引擎数据库进行同步。当一个集群被选择后,用户可以选择导入主机或从所选择的集群中分离一个主机。如果集群中有一个主机,您可以执行 Gluster 同步操作。

注意

Manager 会持续监测是否有主机被添加到集群中,或从集群中被删除。当监测到有这种事件发生时,它会在集群的常规标签页中显示。您可以选择 导入来导入主机或选择分离来把主机从集群中分离。