问题:出现这种问题的根本原因在于:程序包关闭时,用户已从程序包 ASCII 配置文件中删除了对该服务的引用,但更为严重的是,程序包暂停时该服务将失败。由于该服务不再存在,所以无法以手动方式将其暂停。对此操作的任何尝试都会导致以下错误:
cmhaltserv :Service name oasmon is not running
解决办法:开始编辑任何文件之前,通过暂停程序包删除服务时,应确保执行正确的操作。如果在这种情况下结束操作,请执行以下操作:
暂停程序包。
将该服务添加回程序包 ASCII 配置文件。
重新应用配置。
用 cmhaltserv 命令手动暂停该服务。
再次从程序包 ASCII 配置文件中删除该服务。
重新启动程序包。
另外,还可以添加服务名与原来删除的服务相匹配的新程序包,然后用 cmhaltserv 命令暂停该服务。这样,不必暂停程序包、节点或群集即可解决问题。
最后一种方法是,如果暂停或重新启动群集(或节点),该问题即可解决;但是,这种方法要求群集(或节点)的停机时间,在某些 24x7 的环境中不能使用。
问题:如果安装 ServiceGuard 修补软件时群集正在运行中,则 ServiceGuard 不能执行修补软件的功能。
解决办法: 按照修补软件中给出的下列安装说明进行安装:
暂停将要安装修补软件的节点上的 ServiceGuard。
在该节点上安装修补软件。
在该节点上重新启动 ServiceGuard。
修补软件需要安装在群集中所有的节点上。
安装过程中,ServiceGuard snmp 辅助代理程序将停止运行,并且不能自动重新启动。此辅助代理程序主要用于 ClusterView 产品。如果您需要使用它,请执行下述命令以手动方式重新启动它:
# /usr/lbin/cmsnmpagt start
问题: cmmakepkg 的联机帮助页没有说明“*”是 NODE_NAME 字段的有效值,且必须只用于系统多节点程序包(即 CVM 程序包 VxVM-CVM-pkg)。
解决办法:
以下是有关程序包 ASCII 文件中 NODE_NAME 字段的正确的联机帮助页信息:
NODE_NAME
运行程序包的节点名。这个名称必须与群集配置中配置的名称相匹配。可指定多个 NODE_NAME 项。第一个 NODE_NAME 是主节点,接下来指定的节点被视为备用节点。特殊情况下,可以用“*”指定配置的程序包运行在所有节点上。目前“*”只供特殊的 CVM 程序包 VxVM-CVM-pkg 使用。
问题: 用于系统多节点程序包的 cmrunpkg 命令不等待程序包在所有节点上都完成启动。程序包启动后,它立即返回。在程序包状态变为“Running”之前,它不会等待程序包在所有节点上都完成启动。
解决办法:请稍等片刻,等系统多节点程序包在所有节点上完成启动之后,再用 cmviewcl 命令检查是否为“Running”状态。
问题:如果 ServiceGuard 用于探测磁盘的命令(如 cmquerycl)遇到禁用的磁盘,该命令可能会挂起。
解决办法:如果整个磁盘配置(LUN 的个数)不大,请等待命令完成;否则,请使用 CTRL-C 终止命令。
问题:运行 cmmakepkg -s 时,获得缺省的程序包启动和关闭脚本。在启动脚本中,有一个名为 freeup_busy_mountpoint_and_mount_fs 的函数,其中包含命令 fuser -ku。由于该命令与安装点有关,所以 fuser 命令应为 fuser -kuc。
解决办法:尚无。
问题:如果在暂停程序包过程中使用 cmhaltnode,并且协调器节点 TOC 或进行重新引导,则程序包暂停将失败,同时导致 cmhaltnode 命令失败。
问题:如果 uname 与主机名不匹配,则使用 VxVM 存储的 ServiceGuard 程序包将不能启动,同时报告错误:Function check_vg failed。
解决办法:保持 uname 和主机名相同或使用 VERITAS vxdctl hostid 命令将 hostid 设置成主机名,确保 hostid 与主机名相匹配。
问题:由于 cmcld 发现对等列表与桥接网信息不匹配,所以出现异常中止现象。
解决办法:解决办法是在执行新的 cmapplyconf 之后执行 cmdeleteconf 命令。群集关闭时,必需执行此操作。
问题:如果指定了 -C 选项,则只对群集锁磁盘(如果有)执行设备探测。另一方面,如果只指定了 -P 选项,则对使用 io_search 找到的所有磁盘执行设备探测。这将延长所需的时间,并且磁盘数越多,时间越长。
解决办法:指定 -C 选项,只对群集锁磁盘(如果有)执行设备探测。
问题:实际上, cmcheckconf -k 选项只检查在群集 ASCII 配置文件中定义的 LVM 磁盘的磁盘连通性。没有 -k 选项(缺省行为),cmcheckconf 将检查群集中所有节点上的所有 LVM 磁盘的连通性。
解决办法:使用 -k 选项可以显著加快 cmcheckconf 命令的操作。
问题:如果使用 cmsnmpd 将陷阱发送到应用程序,则群集启动时发送的陷阱为 hpmcSGClusterUp、hpmcSGPkgUp、hpmcSGIPAddrUp 和 hpmcSGNodeUp;群集暂停时为 hpmcSGSvcDown、hpmcSGPkgHalt、hpmcSGIPAddrDown、hpmcSGPkgDown 和 hpmcSGNodeHalted。但是,没有 hpmcSGClusterDown 陷阱。
问题:如果程序包正在某节点上运行时节点失败,并且该程序包未在群集中其他地方重新启动,则 ServiceGuard MIB 结构中的程序包状态将不正确。