35.3 服务监视

任何高可用性环境的一个关键要素是,能够以可靠且一致的方式监视应该保持高度可用的资源,以及这些资源所依赖的任何资源。SLE HAE 使用名为资源代理的部件执行此监视操作,资源代理的任务是提供每个资源的状态,以及(根据要求)启动或停止该资源。

资源代理只有提供了受监视资源的可靠状态,才能防止出现不必要的停机。误报(认为某个资源已发生故障,但事实上它能够自行恢复)可能会导致其实不必要的服务迁移(及相关的停机),而漏报(资源代理报告某个资源在正常运行,但事实上该资源未正常运行)可能会阻止服务的正常使用。另一方面,对服务进行外部监视可能相当困难。例如,Web 服务端口可能会响应简单的 ping 命令,但是当发出实际查询时无法提供正确的数据。在许多情况下,必须在服务本身中内置自检功能,才能提供真正准确的度量。

此解决方案为 Sentinel 提供了基本的 OCF 资源代理,该代理可以监视重大的硬件、操作系统或 Sentinel 系统故障。目前,Sentinel 的外部监视功能基于 IP 端口探测,因此,在某种程度上存在误报和漏报读取内容的可能性。我们计划不断改进 Sentinel 和资源代理,以提高此部件的准确性。