跳到内容 中国
HP.com 主页 产品与服务 支持及驱动程序 解决方案 如何购买
» 联系惠普
更多选项
HP.com 主页
管理 Serviceguard 第 13 版 > 第 3 章 了解 Serviceguard 的软件组件

Serviceguard 体系结构

» 

技术文档资料

完整的 PDF 手册
» 反馈
内容从此开始:

 » 目录

 » 索引

下图显示 Serviceguard 所使用的主要软件组件。本章较为详细地讨论了这些组件。

注释:您正在运行的 HP-UX 版本可能尚不支持 VERITAS CFS;请参阅“关于 VERITAS CFS 和 CVM”

图 3-1 Serviceguard 软件组件

Serviceguard 软件组件

Serviceguard 守护程序

Serviceguard 使用下列守护程序:

  • /usr/lbin/cmclconfd - Serviceguard 配置守护程序。

  • /usr/lbin/cmcld - Serviceguard 群集守护程序。

  • /usr/lbin/cmfileassistd - Serviceguard 文件管理守护程序。

  • /usr/lbin/cmlogd - Serviceguard Syslog 日志守护程序。

  • /usr/lbin/cmlvmd - 群集 Logical Volume Manager 守护程序。

  • /opt/cmom/lbin/cmomd - 群集 Object Manager 守护程序。

  • /usr/lbin/cmsnmpd - 群集 SNMP 子代理(可以选择运行)。

  • /usr/lbin/cmsrvassistd - Serviceguard 服务助手守护程序。

  • /usr/lbin/qs - Serviceguard Quorum Server 守护程序。

  • /usr/lbin/cmnetassistd - 网络传感器助手守护程序。

  • /usr/lbin/cmvxd - Serviceguard - VERITAS 成员协调守护程序(仅当
    安装了 VERITAS CFS 时,它才会存在)。

  • /usr/lbin/cmvxping Serviceguard - VERITAS 激活守护程序(仅当
    安装了 VERITAS CFS 时,它才会存在)。

上述各个守护程序都将日志记录到 /var/adm/syslog/syslog.log 文件中,但 /opt/cmom/lbin/cmomd 守护程序除外,它将日志记录到 /var/opt/cmom/cmomd.log 中。Quorum Server 在群集外部运行。缺省情况下,它将日志记录到标准输出中,建议您将该输出重定向到名为 /var/adm/qs/qs.log 的文件中。

配置守护程序:cmclconfd

Serviceguard 命令使用该守护程序来收集群集中所有节点的信息。它收集配置信息,如有关网络和卷组的信息。它还将群集二进制配置文件分发给群集中的所有节点。该守护程序由 inetd(1M) 启动。/etc/inetd.conf 文件中包含与该守护程序对应的条目。

禁用 Serviceguard

如果由于某种原因要在系统上禁用 Serviceguard,则可以通过注释掉 /etc/inetd.conf 中的下列条目执行此操作:

hacl-cfg dgram udp wait root /usr/lbin/cmclconfd cmclconfd -phacl-cfg stream tcp nowait root /usr/lbin/cmclconfd cmclconfd -c

然后强制 inetd 重新读取 inetd.conf:

/usr/sbin/inetd -c

可以通过尝试执行以下命令检查以上操作实际上是否禁用了 Serviceguard:

cmquerycl -n 节点名

其中,节点名是本地系统的名称。 如果该命令失败,则表明已经成功禁用了 Serviceguard。

注释:不应在实际运行 Serviceguard 的系统上禁用 Serviceguard。 如果不能确定,可以执行以下命令获得指示:

ps -e | grep cmclconfd

如果存在多个 cmclconfd 进程正在运行,这并不一定意味着 Serviceguard 正在该系统上运行(cmclconfd 可能只是在处理同一子网上 Serviceguard 群集中的 UDP 查询),但意味着在禁用 Serviceguard 之前应该进行进一步探究。

群集守护程序:cmcld

通过向 Serviceguard 群集内其他节点上的 cmcld 守护程序发送心跳线消息,该守护程序可确定群集成员。它按照实时优先级运行且锁定在内存中。cmcld 守护程序在内核中设置了一个安全定时器,用于检测内核挂起。如果此定时器未由 cmcld 定期复位,则内核将产生系统 TOC(即控制转移),也就是立即暂停系统而不是进行正常关闭。发生这种情况的原因可能是 cmcld 无法与大多数群集成员通信;或者是因为 cmcld 异常退出、中止以及无法运行足够长的时间并无法更新内核计时器(内核挂起)。在因安全定时器过期而导致 TOC 之前,消息将会写入 /var/adm/syslog/syslog.log 和内核消息的缓冲区中,并执行系统转储。

安全定时器的有效期取决于群集配置参数 HEARTBEAT_INTERVALNODE_TIMEOUT,还取决于群集配置的特性,如它是使用 Quorum Server 还是使用群集锁(以及锁的类型),以及是否配置了备用 LAN(要进一步的探讨,请参阅“节点超时时发生的情况”。有关设置 HEARTBEAT_INTERVALNODE_TIMEOUT 的建议,请参阅“群集配置参数 ”)。

cmcld 守护程序还监视群集网络的运行状况并执行本地局域网故障切换。最后,cmcld 管理 Serviceguard 程序包,确定在何处运行它们以及何时启动它们。

注释:Serviceguard 的三个核心组件 - 程序包管理器、群集管理器以及网络管理器均作为 cmcld 守护程序的组成部分运行。该守护程序在所有群集节点上都以 20 的优先级运行。因此用户进程一定要以低于 20 的优先级运行,否则它们可能使 Serviceguard 无法更新内核安全定时器,这将导致出现 TOC。

文件管理守护程序: cmfileassistd

cmcld 使用 cmfileassistd 守护程序来管理需要读取磁盘和写入磁盘的文件。这样可以防止在执行输入/输出过程中出现的延迟影响 cmcld 的计时。

Syslog 日志守护程序:cmlogd

cmcld 使用 cmlogd 将消息写入 syslog。任何通过 cmcld 写入 Syslog 的消息都是通过 cmlogd 写入的。这样可以防止在写入 Syslog 的过程中出现的延迟影响 cmcld 的计时。

群集 Logical Volume Manager 守护程序:cmlvmd

该守护程序负责跟踪所有可由群集识别的卷组。当某个卷组可由群集识别时,群集节点只能以独占模式将其激活。这样可以防止多个节点同时以写入模式激活卷组。

群集 Object Manager 守护程序:cmomd

该守护程序负责将有关群集的信息提供给客户端 - 需要获取群集对象状态信息的外部产品或工具(如 Serviceguard Manager 的工作站管理版本以及插件程序的命令行版本)。

客户端向对象管理器发送查询,并从该管理器接收响应(该通信间接通过 Serviceguard API 完成)。查询将分解为隶属于不同提供者的(多个类的)类别。提供者从各种源(这些源通常包括连接的所有节点上的 cmclconfd 守护程序)收集数据,然后将数据返回到一个中心分解点进行过滤,以满足特定查询的需要。

该守护程序由 inetd(1M) 启动。/etc/inetd.conf 文件中包含与该守护程序对应的条目。

该守护程序可能未在您的系统上运行,它仅用于 Object Manager 的客户端。

群集 SNMP 代理守护程序:cmsnmpd

Serviceguard Manager 的管理工作站版本使用该守护程序获取有关群集的信息。该守护程序生成群集 MIB(有关群集 MIB 的详细信息,请访问 http://docs.hp.com -> High Availability 并查看 Frequently Asked Questions 下面的内容)。只有编辑了 /etc/rc.config.d/cmsnmpagt 文件以自动启动该子代理时,cmsnmpd 才会运行。为确保正常运行,cmsnmpd 必须在 Serviceguard 群集之前启动。

服务助手守护程序:cmsrvassistd

该守护程序按照群集守护程序 cmcld 的要求派生并执行任何脚本或进程。该守护程序执行两种类型的派生操作:

  • 执行程序包运行和暂停脚本

  • 启动服务

就服务而言,cmcld 监视服务进程;同时根据服务重试的次数,cmcld 通过 cmsrvassistd 重新启动服务,或者暂停程序包并将该程序包移到一个可用的备用节点。

Quorum Server 守护程序:qs

使用 Quorum Server 是一种在群集重组时进行仲裁并建立定额的方法;另一种方法是使用群集锁。请参阅“避免脑分裂症状的群集定额”“群集锁”

Quorum Server(如果使用它)在群集外部的系统上运行,并且由系统管理员(而不是 Serviceguard)启动。通常使用 respawn 选项从 /etc/inittab 启动此守护程序,这意味着如果此守护程序失败或被强行终止,它也可自动重新启动。 群集的所有成员都将启动并维护与 Quorum Server 的连接;如果 Quorum Server 终止运行,则 Serviceguard 节点将会检测到此情况,并定期尝试重新连接 Quorum Server。 如果在 Quorum Server 已关闭时对群集进行重组,并且需要仲裁,则此重组将失败并且所有节点将暂停 (TOC)。 因此,应尽快重新启动 Quorum Server,这一点很重要。

网络传感器助手守护程序 cmnetassistd

网络传感器助手守护程序负责添加和删除可重新定位的程序包 IP(适用于 IPv4 和 IPv6 地址)。

CFS 组件

HP Serviceguard Storage Management Suite 提供了额外的组件,用于与 HP-UX 当前某些版本上的 VERITAS Cluster File System 进行接口通信(请参阅“关于 VERITAS CFS 和 CVM”)。管理套件的相应文档可在 http://docs.hp.com 上找到。

VERITAS CFS 组件直接在连接群集内节点的以太网上运行。为了避免单点故障,还需要冗余网络。

VERITAS CFS 组件包括:

  • GAB(Group Membership Services/Atomic Broadcast,组成员服务/原子广播)- 当 VERITAS Cluster Volume Manager (CVM) 4.1 或 VERITAS Cluster File System (CFS) 作为 Serviceguard Storage Managment Suite 软件包的一部分进行部署时,Serviceguard 将自动配置和维护 /etc/gabtab 文件。

    GAB 为 CVM 和 CFS 提供成员关系和消息处理。GAB 成员关系还提供群集文件系统的顺序启动和关闭。

  • LLT(Low Latency Transport,低延迟传输)- 当 VERITAS CVM 或 CFS 作为 Serviceguard Storage Managment Suite 软件包的一部分进行部署时,Serviceguard 将自动配置和维护 LLT 文件 /etc/llthosts/etc/llttab

    LLT 提供内核至内核的通信,并监视 CFS 的网络通信。

  • vxfend - 当 VERITAS CFS 作为 Serviceguard Storage Management Suite 的一部分进行部署时,I/O 护栏守护程序 vxfend 也包含在内。 它为 VERITAS Cluster File System 实现定额类型的功能。Serviceguard 控制 vxfend 来同步定额机制。

  • cmvxd - Serviceguard - VERITAS 守护程序协调 Serviceguard 与 VERITAS Clustered File System 产品之间的成员信息(仅当安装了 VERITAS CFS 时,它才会存在)。

  • cmvxping Serviceguard - VERITAS 守护程序激活 VERITAS Clustered File System 产品的某些子系统(仅当安装了 VERITAS CFS 时,它才会存在)。

打印版本
保密声明 使用本网站表示您同意其使用条件
© Hewlett-Packard Development Company, L.P.