配置定制应用程序监视器的步骤
本主题说明了配置定制应用程序监视器的步骤。
关于本任务
要设置定制应用程序监视方法,请完成下列步骤:
过程
- 从命令行输入
smit sysmirror - 在 SMIT 中,选择集群应用程序和资源 > 资源 > 配置用户应用程序(脚本和监视器) > 应用程序监视器 > 配置定制应用程序监视器 > 添加定制应用程序监视器 ,然后按 Enter。
此时将显示已定义应用程序控制器的列表。
- 选择要为其添加监视方法的应用程序控制器。
- 在 " 添加定制应用程序监视器 " 面板中,按如下所示填写字段值。 Monitor Method 和 Monitor Interval 字段要求提供您自己的脚本并指定您自己的轮询时间间隔首选项:
表 1. 添加自定义应用程序监控器字段 字段 值 应用程序控制器名称 从选取列表中选择应用程序控制器。 监控方式 选择应用程序监视器将用来监视应用程序的方式: - 启动监控。 在这种方式下,应用程序监视器将检查应用程序控制器是否已在指定的稳定期内成功启动。 如果您正在为父资源组中包括的应用程序配置监视器,请选择此方式(除为依赖资源组可能需要的其他监视器之外)。
- long-running monitoring。 在这种方式下,应用程序监视器将定期检查应用程序控制器是否在运行。 该检查将在指定的稳定时间间隔过去后启动。 这是缺省值。
- 两者。 在这种方式下,应用程序监视器将检查在稳定时间间隔内应用程序控制器是否已成功启动,并在稳定时间间隔过去后定期监视应用程序控制器是否正在运行。
注: 如果 监视方式 字段设置为 长期运行监视 方式,那么启动集群服务时不会运行应用程序监视器。 无论应用程序是否已在运行,应用程序控制器都将每次运行启动脚本以启动应用程序。 当包含应用程序的资源组处于联机状态时,将使用应用程序监视器来监视应用程序。您还可以指定启动集群服务时要运行的启动应用程序监视器。 当启动应用程序监视器运行时,它确定应用程序是否已处于活动状态。 当应用程序监视器指示应用程序已启动并正在运行时,应用程序控制器不会运行启动脚本。
通过选择 两者 作为 监视方式 字段的值,可以将同一应用程序监视器同时用于启动监视方式和长时间运行的监视方式。
您为应用程序监视器选择的方式确定应用程序监视器是在集群服务启动时运行还是在资源组联机时运行。 在编写监视脚本时,必须仔细选择这些方式,以便在应用程序监视器运行时执行正确的检查和执行操作。 例如,首次启动集群服务时,应用程序所依赖的其他资源可能未完全处于活动状态。 在这种情况下,您可以考虑指定启动集群服务时要运行的启动应用程序监视器。
Monitor Method 输入脚本或可执行文件以定制针对指定应用程序的运行状况的监视。 请不要将该字段保留为空白。 请注意,如果应用程序运行状况良好,该方法必须返回零值,如果检测到问题,必须返回非零值。
通过将消息打印到标准输出 stdout 文件,该方法可记录这些消息。 对于长时间运行的监视器,输出存储在 /var/hacmp/log/clappmond.application monitor name.resource group name.monitor.log 文件中。 对于启动监视器,该输出存储在 /var/hacmp/log/clappmond.application controller name.resource group name.monitor.log 文件中。 在 PowerHA® SystemMirror® V 7.1.1或更低版本中,每次重新启动应用程序监视器时都会覆盖单个日志文件。 在 PowerHA SystemMirror V 7.1.2或更高版本中,每次重新启动应用程序监视器时都会创建新的日志文件。
监视器时间间隔 输入用于检查应用程序运行状况的轮询时间间隔(以秒为单位)。 如果监视器在该时间间隔内不响应,那么会将其视为暂挂。 监视器重试计数 指定 PowerHA SystemMirror 在执行任何其他操作之前尝试重新启动定制应用程序监视器的次数。 缺省值为 0。 此字段与 重新启动计数相关。 Hung Monitor Signal 如果监视方法脚本在指定的监视时间间隔内没有返回,系统应发出此信号以停止监视方法脚本。 缺省值为 SIGKILL(9)。 稳定化时间间隔 指定时间(以秒为单位)。 PowerHA SystemMirror 以不同方式使用监视器的稳定周期,具体取决于在此 SMIT 面板中选择的监视器方式: - 如果选择 启动监视 方式,那么稳定时间间隔是 PowerHA SystemMirror 监视应用程序已成功启动的时间段。 当指定的时间到期时, PowerHA SystemMirror 将终止对应用程序启动的监视,并继续事件处理。 如果应用程序未能在稳定时间间隔内启动,那么资源组的获取将在节点上失败,并且 PowerHA SystemMirror 将启动资源组恢复操作以在另一个节点上获取资源组。 您指定的秒数应大约等于应用程序启动所要花费的时间段。 这取决于您使用的应用程序。
- 如果为监视器选择 长时间运行 方式,那么稳定时间间隔是 PowerHA SystemMirror 在开始监视应用程序是否正在成功运行之前等待应用程序稳定的时间段。 例如,对于数据库应用程序,您可能希望延迟监视,直至启动脚本和初始化数据库搜索完成后。 您可能需要试用该值来均衡性能和稳定性。
- 如果选择 both 作为监视方式,那么应用程序将使用稳定时间间隔等待应用程序成功启动。 应用程序将使用同一时间间隔等待,直到开始定期检查应用程序是否在节点上成功运行。
注: 在大多数情况下,此值 不应 为零。重新启动计数 指定采取任何其他操作前,尝试重新启动应用程序的次数。 缺省值为 3 。 重新启动时间间隔 指定重置重新启动计数前应用程序必须保持稳定的时间间隔(以秒为单位)。 请不要将该值设置为短于(重新启动计数)x(稳定时间间隔 + 监视时间间隔)的时间。 缺省时间比该值长 10%。 如果重新启动时间间隔过短,那么重新启动计数将迅速被重置,并且本应发生的所需故障响应操作可能尚未发生。 Action on Application Failure 指定在应用程序在重新启动计数范围内无法重新启动的情况下将执行的操作。 您可以保留缺省选项 notify,这将运行一个事件以向集群通知此故障,或者选择 fallover,在这种情况下,包含故障应用程序的资源组将移动到针对此资源组具有更高优先级的集群节点。 Notify Method (可选)用于在受监视应用程序故障时执行通知的用户定义方法的完整路径名。 该方法会在每次应用程序重新启动、完全故障或失败转移到集群中下一个节点时执行。 强烈建议您配置此方法。
清除方法 (可选)指定检测到故障应用程序后,在调用重新启动方法之前要调用的应用程序清除脚本。 缺省值是设置应用程序控制器时所定义的应用程序控制器停止脚本。 监视应用程序时,由于调用该脚本时应用程序可能已停止,所以服务器停止脚本可能会失败。
重新启动方法 (如果 Restart Count 不是零,那么此方法为必需。) 缺省重新启动方法是在先前设置应用程序控制器时定义的应用程序控制器启动脚本。 如果需要,可在此处指定其他方法。 - 按 Enter 键。
结果
SMIT 将检查值是否一致,并将它们输入到 PowerHA SystemMirror 配置数据库中。 资源组变为联机时,长时间运行方式下的应用程序监视器将启动。 应用程序启动监视器将在资源组变为联机前启动。
当您同步集群时,验证可确保您指定的所有方法均存在,且可在所有节点上执行。