用于 SAP DB 的 Sun Cluster 数据服务指南(适用于 Solaris OS)

调节 Sun Cluster HA for SAP DB 故障监视器

以下故障监视器提供了 Sun Cluster HA for SAP DB 数据服务的故障监视:

每个故障监视器都包含在一个具有下表所示的资源类型的资源中。

表 1–3 Sun Cluster HA for SAP DB 故障监视器的资源类型

故障监视器 

资源类型 

SAP DB 

SUNW.sapdb

SAP xserver 

SUNW.sap_xserver

这些资源的系统特性和扩展特性控制着故障监视器的行为。这些特性的缺省值确定了故障监视器的预设行为。预设行为应该适用于大多数 Sun Cluster 安装。因此,在需要修改此预设行为时才应该调节 Sun Cluster HA for SAP DB 故障监视器。

调节 Sun Cluster HA for SAP DB 故障监视器涉及到以下任务:

有关更多信息,请参见Sun Cluster 数据服务规划和管理指南(适用于 Solaris OS)》中的“调节 Sun Cluster 数据服务的故障监视器”。执行这些任务所需要的有关 Sun Cluster HA for SAP DB 故障监视器的信息可在后面的小节中找到。

Sun Cluster HA for SAP DB 还允许您控制故障监视器如何响应 SAP DB 父内核进程未运行的情况。有关更多信息,请参阅如果父内核进程被终止,强制重新启动 SAP DB 数据库实例

在您注册和配置 Sun Cluster HA for SAP DB 时,请调节 Sun Cluster HA for SAP DB 故障监视器。有关更多信息,请参阅注册和配置 Sun Cluster HA for SAP DB

影响故障监视器探测间隔的因素

为了确定 SAP xserver 和 SAP DB 数据库实例是否运行正常,Sun Cluster HA for SAP DB 故障监视器会定期探测这些资源。两次故障监视器探测之间的最佳间隔取决于响应资源中的故障所需的时间。该时间依赖于资源的复杂性影响执行操作(如重新启动该资源)所需的时间的程度。

例如,SAP xserver 是比 SAP DB 简单的资源,其重新启动的速度也相对较快 。因此,两次 SAP xserver 故障监视器探测之间的最佳间隔会比两次 SAP DB 故障监视器探测之间的最佳间隔短。

Sun Cluster HA for SAP DB 故障监视器探测过程中的操作

故障监视器探测的最佳超时取决于故障监视器对资源进行探测时所执行的操作。

SAP DB 故障监视器探测过程中的操作

在探测过程中,SAP DB 故障监视器执行以下操作:

  1. SAP DB 故障监视器确定 SAP DB 数据库实例是否联机。

  2. 如果 SAP DB 数据库实例处于联机状态,SAP DB 故障监视器将确定 SAP DB 数据库实例的父内核进程是否在运行。如果父内核进程不在运行,您可以控制故障监视器如何做出响应。有关更多信息,请参阅如果父内核进程被终止,强制重新启动 SAP DB 数据库实例

  3. SAP DB 故障监视器确定 SAP xserver 是否可用。此故障监视是对 SAP xserver 故障监视器所提供的故障监视的补充。

SAP xserver 故障监视器探测过程中的操作

在探测过程中,SAP xserver 故障监视器将确定 SAP xserver 是否可用。

Sun Cluster HA for SAP DB 故障监视器检测的故障

后面的小节中说明了每个 Sun Cluster HA for SAP DB 故障监视器检测的故障。

SAP DB 故障监视器检测的故障

SAP DB 故障监视器检测 SAP DB 中的以下故障:

SAP DB 故障监视器还检测 SAP xserver 是否可用。此故障监视是对 SAP xserver 故障监视器所提供的故障监视的补充。


注意 –

如果 SAP DB 故障监视器在重试间隔内两次检测到 SAP xserver 不可用,SAP DB 故障监视器将重新启动 SAP DB。通过重新启动 SAP DB,故障监视器确保了 SAP DB 数据库在 SAP xserver 持续不可用时可以向其他节点进行故障转移。


SAP xserver 故障监视器检测的故障

SAP xserver 故障监视器检测以下故障:

检测到故障时相应采取的恢复操作

为了尽量减小资源中的瞬态故障所造成的破坏,遇到此类故障时,故障监视器将重新启动资源。对于持久性故障,需要比重新启动资源更具破坏性的操作:

如果父内核进程被终止,强制重新启动 SAP DB 数据库实例

缺省情况下,父内核进程的意外终止不会导致 SAP DB 故障监视器重新启动 SAP DB 数据库实例。SAP DB 数据库实例可以在没有父内核进程的情况下继续发挥作用。在这种情况下,重新启动 SAP DB 数据库实例可能会导致无谓的 SAP DB 数据库实例不可用故障。因此,在需要父内核进程提供的功能(例如要维护日志历史的完整性)时,才应该强制重新启动 SAP DB 数据库实例。

如果父内核进程被终止,要强制重新启动 SAP DB 数据库实例,将 SUNW.sapdb 资源的 Restart_if_Parent_Terminated 扩展特性设置为 True