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

安装和配置 Sun Cluster HA for SAP

本章包含有关如何安装和配置 Sun Cluster HA for SAP 的过程。

本章包含以下过程。

Sun Cluster HA for SAP 概述

请使用本节中的信息了解 Sun Cluster HA for SAP 如何使 SAP 具有高可用性。

有关故障转移和可伸缩服务的概念信息,请参见Sun Cluster 概念指南(适用于 Solaris OS)

Sun Cluster HA for SAP 为 SAP 应用程序提供了故障监视和自动故障转移,用于消除 SAP 系统中的单点故障。 下表列出了可以为 Sun Cluster 配置中的 SAP 组件提供最佳保护的数据服务。 您可以将 Sun Cluster HA for SAP 配置为故障转移应用程序或可伸缩应用程序。

表 1–1 对 SAP 组件的保护

SAP 组件  

保护该组件的服务 

SAP 数据库  

您所使用的数据库的数据服务,例如: 

  • 对于 SAP DB 数据库,数据服务为 Sun Cluster HA for SAP DB。

  • 对于 Oracle 数据库,数据服务为 Sun Cluster HA for Oracle。

SAP 中央实例 

Sun Cluster HA for SAP  

资源类型为 SUNW.sap_ciSUNW.sap_ci_v2

SAP 应用服务器 

Sun Cluster HA for SAP  

资源类型为 SUNW.sap_as SUNW.sap_as_v2

NFS 文件系统 

Sun Cluster HA for NFS  

Sun Cluster HA for SAP 需要一个运行正常的群集,并且已安装初始群集框架。 有关群集和数据服务软件的初始安装的详细信息,请参见Sun Cluster 软件安装指南(适用于 Solaris OS)。 成功安装 Sun Cluster 和 SAP 软件的基本组件之后,请注册 Sun Cluster HA for SAP。

安装和配置 Sun Cluster HA for SAP

表 1–2 列出了安装和配置 Sun Cluster HA for SAP 的任务。 请按照列出的顺序执行这些任务。

表 1–2 任务对应关系: 安装和配置 Sun Cluster HA for SAP

任务 

有关说明,请转到 

规划 SAP 安装 

规划 Sun Cluster HA for SAP 的安装和配置

升级 Sun Cluster HA for SAP 

如何升级资源类型或如何将故障转移应用程序资源转换为可伸缩应用程序资源

准备节点和磁盘 

如何准备节点

安装 SAP 和数据库。 

如何安装 SAP 和数据库

安装 SAP 应用服务器 

如果要将 SAP 应用服务器作为故障转移服务进行安装,请转至如何使故障转移 SAP 实例在群集中运行

如果要将 SAP 应用服务器作为可伸缩服务进行安装,请转至如何安装和启用 SAP 可伸缩应用服务器

配置高度可用的数据库 

配置高度可用的数据库

检验 SAP 安装  

如果要安装故障转移 SAP 应用服务器,请转至以下章节: 

如果要安装可伸缩 SAP 应用服务器,请转至检验 SAP 可伸缩应用服务器

安装 Sun Cluster HA for SAP 软件包 

安装 Sun Cluster HA for SAP 软件包

注册和配置 Sun Cluster HA for SAP  

如果要将 Sun Cluster HA for SAP 配置为故障转移数据服务,请转至: 

如果要将 Sun Cluster HA for SAP 配置为可伸缩数据服务,请转至: 

设置锁定文件 

设置锁定文件

检验 Sun Cluster HA for SAP 的安装和配置  

如果要将 Sun Cluster HA for SAP 配置为故障转移数据服务,请转至: 

如果要将 Sun Cluster HA for SAP 配置为可伸缩数据服务,请转至如何检验作为可伸缩数据服务的 Sun Cluster HA for SAP 的安装和配置

了解 Sun Cluster HA for SAP 故障监视器 

了解 Sun Cluster HA for SAP 故障监视器

规划 Sun Cluster HA for SAP 的安装和配置

本节包含规划 Sun Cluster HA for SAP 的安装和配置所需的信息。

配置限制


小心:小心:

如果您未遵循这些限制,您的数据服务配置可能不受支持。


请使用本节中的限制来规划 Sun Cluster HA for SAP 的安装和配置。 本节提供了适用于 Sun Cluster HA for SAP 的软件和硬件配置限制的列表。

有关适用于所有数据服务的限制,请参见关于您的 Sun Cluster 发行版本的发行说明。

配置要求


小心:小心:

如果您未遵循这些要求,您的数据服务配置可能不受支持。


请使用本节中的要求来规划 Sun Cluster HA for SAP 的安装和配置。 这些要求仅适用于 Sun Cluster HA for SAP。 您必须先满足这些要求,然后再进行 Sun Cluster HA for SAP 的安装和配置。

有关适用于所有数据服务的要求,请参见用于 Solaris OS 的 Sun Cluster 数据服务规划和管理指南》中的“规划 Sun Cluster 数据服务”

标准数据服务配置

请使用本节中的标准配置来规划 Sun Cluster HA for SAP 的安装和配置。 Sun Cluster HA for SAP 支持本节中的标准配置。 Sun Cluster HA for SAP 可能还支持其他配置。 但是,您必须与您的企业服务代表联系以获得有关其他配置的信息。

图形 1–1 具有中央实例、应用服务器和数据库的四节点群集

说明: 图形的标题介绍了此图形。

图形 1–2 具有中央实例、NFS、数据库和非 HA 外部应用程序的双节点群集

说明: 图形的标题介绍了此图形。


注意:

图形 1–2 中的配置是 Sun Cluster 先前版本中的常用配置。 为了最大限度地利用 Sun Cluster 软件,请按图形 1–1图形 1–3 中所示配置 SAP。


图形 1–3 具有中央实例、数据库和开发节点的双节点群集

说明: 图形的标题介绍了此图形。

配置注意事项

请使用本节中的信息来规划 Sun Cluster HA for SAP 的安装和配置。 本节中的信息会促使您思考您的决定对 Sun Cluster HA for SAP 的安装和配置的影响。

故障转移和可伸缩应用程序

可伸缩应用程序

配置规划问题

请使用本节中的问题来规划 Sun Cluster HA for SAP 的安装和配置。 请在用于 Solaris OS 的 Sun Cluster 数据服务规划和管理指南》的“配置工作单”中的数据服务工作单中填写对这些问题的回答。 有关可能适用于这些问题的信息,请参见配置注意事项

软件包和支持

表 1–3表 1–4 列出了 Sun Cluster HA for SAP 支持的软件包。

表 1–3 Sun Cluster 3.0 7/01 的 Sun Cluster HA for SAP 软件包

资源类型 

说明 

SUNW.sap_ci

增添了对故障转移中央实例的支持。 

SUNW.sap_as

增添了对故障转移应用服务器的支持。 

*_v2 资源类型是用于 Sun Cluster HA for SAP 的资源类型 (RT) 的最新版本。 *_v2 资源类型是初始 RT 的超集。 请尽可能使用提供的最新 RT。

表 1–4 Sun Cluster 3.0 12/01 的 Sun Cluster HA for SAP 软件包

资源类型 

说明 

SUNW.sap_ci

与 Sun Cluster 3.0 7/01 相同。请参见表 1–3

SUNW.sap_as

与 Sun Cluster 3.0 7/01 相同。请参见表 1–3

SUNW.sap_ci_v2

在资源类型注册 (RTR) 文件中增添了 Network_resources_used 资源特性。

 

保留了对故障转移中央实例的支持。 

SUNW.sap_as_v2

在 RTR 文件中增添了 Network_resources_used 资源特性。

增添了对可伸缩应用服务器的支持。 

 

保留了对故障转移应用服务器的支持。 

升级 Sun Cluster HA for SAP

表 1–3表 1–4 所示,Sun Cluster 3.0 7/01 中的 Sun Cluster HA for SAP 软件包不支持可伸缩应用服务器和 Network_resources_used 资源特性。 因此,您可以选择以下升级选项。

如何升级资源类型或如何将故障转移应用程序资源转换为可伸缩应用程序资源

请使用此过程来升级资源类型或将故障转移应用服务器资源转换为可伸缩应用服务器资源。 此过程要求计划停机时间。

  1. 禁用现有资源。

  2. 将现有资源从资源组中删除。

  3. 如果其他资源未使用现有资源类型,则将其删除。

  4. 登记新资源类型。

  5. 您要执行哪项任务?

    • 如果要升级中央实例的资源类型,请跳到 步骤 7

    • 如果要将故障转移应用服务器资源转换为可伸缩应用服务器资源,请继续步骤 6

  6. 创建新的应用服务器资源组。

  7. 将可伸缩应用程序资源添加到资源组中。

从此处可转到何处

转到如何准备节点

准备节点和磁盘

本节包含准备节点和磁盘所需的过程。

如何准备节点

请使用此过程来准备 SAP 的安装和配置。

  1. 成为所有节点上的超级用户。

  2. 配置 /etc/nsswitch.conf,以便在进行切换或故障转移时 Sun Cluster HA for SAP 能够正常地启动和停止。

    在可以控制逻辑主机(运行 Sun Cluster HA for SAP)的每个节点上,为 /etc/nsswitch.conf 文件中的 group 包含以下项之一。


    group:
    group: files [NOTFOUND=return] nis
    group: file [NOTFOUND=return] nisplus
    

    Sun Cluster HA for SAP 使用 su user 命令启动和探测 SAP。 如果群集节点的公共网络出现故障,网络信息名称服务可能会变为不可用。 为 /etc/nsswitch.conf 文件中的 group 添加其中一个项后,可确保在网络信息名称服务不可用时 su(1M) 命令不参考 NIS/NIS+ 名称服务。

从此处可转到何处

转到如何将 Sun Cluster HA for SAP 注册和配置为可伸缩数据服务

安装和配置 SAP 和数据库

本节包含安装和配置 SAP 和数据库所需的过程。

如何安装 SAP 和数据库

请使用此过程来安装 SAP 和数据库。

  1. 成为要安装中央实例的群集中的某个节点上的超级用户。

  2. 在群集文件系统中安装 SAP 二进制。


    注意:

    在群集文件系统中安装 SAP 软件之前,请使用scstat(1M) 命令以验证 Sun Cluster 软件完全可操作。


    1. 对于 SAP 必需的所有内核参数的更改,请编辑要运行 SAP 应用程序的所有群集节点上的 /etc/system 文件。

      编辑 /etc/system 文件后,重新引导每个节点。 有关内核参数更改的详细信息,请参见 SAP 文档 R/3 Installation on UNIX-OS Dependencies

    2. 有关如何安装中央实例、数据库和应用服务器实例的详细信息,请参见 SAP 文档 Installation of the SAP R/3 on UNIX

      有关如何在 Sun Cluster 环境中安装可伸缩应用服务器的过程,请参见如何安装和启用 SAP 可伸缩应用服务器

从此处可转到何处

转到如何使故障转移 SAP 实例在群集中运行 如何安装和启用 SAP 可伸缩应用服务器

如何安装和启用 SAP 可伸缩应用服务器

请使用此过程来安装可伸缩应用服务器实例。 此过程假定您已安装中央实例和数据库。 对于 SAP 6.10 和 SAP 6.20 用户,此过程包括附加步骤,以确保 Sun Cluster HA for SAP 可以管理 SAP 6.10 和 SAP 6.20 服务并使其联机。 SAP 6.10 和 SAP 6.20 将创建一个 startsap 脚本和一个 stopsap 脚本。 其他 SAP 版本将为您创建的每个服务创建上述其中一个脚本。 此区别解释了 SAP 6.10 和 SAP 6.20 用户为何要执行附加步骤。

要使用 Sun Cluster HA for SAP 配置 J2EE 引擎群集,请在完成此过程后完成如何针对应用服务器使用 Sun Cluster HA for SAP 配置 J2EE 引擎群集中的附加步骤。

要使用 Sun Cluster HA for SAP 代理配置 SAP Web 分发程序,请在完成此过程后完成如何使用 Sun Cluster HA for SAP 配置 SAP Web 分发程序中的附加步骤。


提示:

以下文件系统布局可确保易用性并防止数据被覆盖。


  1. 在群集文件系统中创建所有 SAP 目录。

    • 确保中央实例和数据库能够进行故障转移。

    • 在群集文件系统中为中央实例设置锁定文件,以防止多次启动另一节点。

      有关如何针对中央实例设置锁定文件的过程,请参见如何设置中央实例或故障转移应用服务器的锁定文件

    • 确保所有应用服务器都可以使用群集文件系统中的 SAP 二进制。

  2. 在群集文件系统中安装中央实例和数据库。

    有关如何安装中央实例和数据库的详细信息,请参见 SAP 文档 Installation of the SAP R/3 on UNIX

  3. 在要托管可伸缩应用服务器的所有节点上,创建一个用于 data/log/sec/work 目录的本地目录以及用于启动和停止应用服务器的日志文件。

    为每个新的应用服务器创建一个本地目录。

    示例:


    # mkdir -p /usr/sap/local/SID/D03
    

    小心:小心:

    您必须执行此步骤。 否则,您会不经意地在群集文件系统中安装另一应用服务器实例,并且这两个应用服务器会彼此覆盖。


  4. 在群集文件系统中设置一个指向本地应用服务器目录的链接,这样,应用服务器以及 startupstop 日志文件都将会安装到本地文件系统中。

    示例:


    # ln -s /usr/sap/local/SID/D03 /usr/sap/SID/D03
    
  5. 安装应用服务器。

  6. 您在使用 SAP 6.10 或 SAP 6.20 吗?

  7. 成为用户 sapsidadm。

  8. 复制 startsap 脚本和 stopsap 脚本,并将这些文件保存到 SAPSIDadm 起始目录中。 您选择的文件名应指定此实例。


    # cp /usr/sap/SID/SYS/exe/run/startsap \
    $SAPSID_HOME/startsap_instance-number
    
    # cp /usr/sap/SID/SYS/exe/run/stopsap \
    $SAPSID_HOME/stopsap_instance-number
    
  9. 由于要修改以下文件,请备份这些文件。 在 SAP 配置文件目录中,修改此实例的所有文件名。 您选择的文件名必须专用于此实例,并且这些文件名必须遵循您在步骤 8 中选择的同一命名惯例。


    # mv SAPSID_Service-StringSystem-Number_physical-hostname \
    SAPSID_Service-StringSystem_instance-number
    
    # mv START_Service-StringSystem-Number_physical-hostname \
    START_Service-StringSystem_instance-number
    
  10. 修改您在步骤 9 中创建的文件的内容,以用实例号替换对物理主机的所有引用。


    小心:小心:

    使您的更新保持一致是很重要的,这样您可以从要运行此可伸缩应用服务器的所有节点启动和停止此应用服务器实例。 例如,如果您对于 SAP 实例号 02 进行了这些更改,则请在此实例号出现的地方使用 02。 如果未使用一致的命名惯例,您将无法从要运行此可伸缩应用服务器的所有节点启动和停止此应用服务器实例。


  11. 编辑 start 脚本和 stop 脚本,以使 startup 日志文件和 stop 日志文件针对于节点并位于 sapsidadmorasapsid 用户的起始目录下。

    示例:


    # vi startsap_D03
    

    之前:


    LOGFILE=$R3S_LOGDIR/`basename $0.log`

    之后:


    LOGFILE=$R3S_LOGDIR/`basename $0`_`uname -n`.log
  12. 在运行可伸缩应用服务器的所有节点上复制应用服务器(具有相同的 SAPSID 和相同的实例号)。

    运行可伸缩应用服务器的节点位于可伸缩应用服务器资源组 nodelist 中。

  13. 确保可以在每个节点上启动和停止应用服务器,并检验日志文件是否位于正确的位置。

  14. 如果要使用登录组,请创建 SAP 登录组。

从此处可转到何处

要使用 Sun Cluster HA for SAP 配置 J2EE 引擎群集,请转到如何针对应用服务器使用 Sun Cluster HA for SAP 配置 J2EE 引擎群集

要使用 Sun Cluster HA for SAP 代理配置 SAP Web 分发程序,请转到如何使用 Sun Cluster HA for SAP 配置 SAP Web 分发程序

如果您未将 J2EE 引擎群集或 SAP Web 分发程序与 Sun Cluster HA for SAP 一起使用,请转到配置高度可用的数据库

如何使故障转移 SAP 实例在群集中运行

在 SAP 安装过程中,SAP 软件将在安装有 SAP 实例的服务器上创建文件和 shell 脚本。 这些文件和脚本使用物理服务器名。 要使 SAP 软件和 Sun Cluster 软件一起运行,请将物理服务器引用替换为网络资源引用(逻辑主机名)。 请使用此过程以使 SAP 可以在群集中运行。

要针对中央实例使用 Sun Cluster HA for SAP 配置 J2EE 引擎群集,请在完成此过程后完成如何针对中央实例使用 Sun Cluster HA for SAP 配置 SAP J2EE 引擎中的附加步骤。

要针对 SAP 应用服务器使用 Sun Cluster HA for SAP 配置 J2EE 引擎群集,请转到如何针对应用服务器使用 Sun Cluster HA for SAP 配置 J2EE 引擎群集

要使用 Sun Cluster HA for SAP 代理配置 SAP Web 分发程序,请在完成此过程后完成如何使用 Sun Cluster HA for SAP 配置 SAP Web 分发程序中的附加步骤。

  1. 备份要在步骤 5步骤 8 中修改的文件。

  2. 登录安装了 SAP 软件的节点。

  3. 关闭 SAP 实例(中央实例和应用服务器实例)和数据库。

  4. 您在使用 SAP 6.10 或 SAP 6.20 吗?

  5. 复制 startsap 脚本和 stopsap 脚本,并将这些文件保存到 SAPSIDadm 起始目录中。 您选择的文件名必须指定此实例。


    # cp /usr/sap/SID/SYS/exe/run/startsap  \
    $SAPSID_HOME/startsap_logical-hostname_instance-number
    # cp /usr/sap/SID/SYS/exe/run/startsap \
    $SAPSID_HOME/stopsap_logical-hostname_instance-number
    
  6. 成为用户 sapsidadm,然后执行以下任务。

    • 在 SAPSIDadm 起始目录中,修改所有引用了物理服务器名的文件名。

    • 在 SAPSIDadm 起始目录中,修改所有引用了物理服务器名的文件内容(日志文件内容除外)。

    • 在 SAPSID 配置文件目录中,修改所有引用了物理服务器名的文件名。

  7. 以用户 sapsidadm 的身份为参数 SAPLOCALHOST 添加项。

    将此项添加到 /sapmnt/SAPSID/profile 目录下的 SAPSID_ Service-StringSystem-Number _logical-hostname 配置文件中。

    对于中央实例:


    SAPLOCALHOST=ci-logical-hostname
    

    此项使外部应用服务器可以通过网络资源(逻辑主机名)来查找中央实例。

    对于应用服务器:


    SAPLOCALHOST=as-logical-hostname
    
  8. 成为用户 orasapsid,然后执行以下任务。

    • oraSAPSID 起始目录中,修改所有引用了物理服务器名的文件名。

    • oraSAPSID 起始目录中,修改所有引用了物理服务器名的文件内容(日志文件内容除外)。

  9. 确保所有可控制故障转移 SAP 实例的节点上都存在用户 sapsidadm 和组 sapsys 所拥有的 /usr/sap/tmp 目录。

从此处可转到何处

要针对中央实例使用 Sun Cluster HA for SAP 配置 J2EE 引擎群集,请转到如何针对中央实例使用 Sun Cluster HA for SAP 配置 SAP J2EE 引擎

要针对 SAP 应用服务器使用 Sun Cluster HA for SAP 配置 J2EE 引擎群集,请转到如何针对应用服务器使用 Sun Cluster HA for SAP 配置 J2EE 引擎群集

要使用 Sun Cluster HA for SAP 代理配置 SAP Web 分发程序,请转到如何使用 Sun Cluster HA for SAP 配置 SAP Web 分发程序

如果您未将 J2EE 引擎群集或 SAP Web 分发程序与 Sun Cluster HA for SAP 代理一起使用,请转到配置高度可用的数据库

如何针对应用服务器使用 Sun Cluster HA for SAP 配置 J2EE 引擎群集

在完成如何安装和启用 SAP 可伸缩应用服务器 之后,请执行以下步骤。


注意:

SAP J2EE 引擎使用 SAP 分发程序启动,该程序在 Sun Cluster HA for SAP 的保护之下。 如果 SAP J2EE 引擎停止,SAP 分发程序将重新启动它。


  1. 使用 SAP J2EE 管理工具 GUI,更改 ClusterHosts 参数以列出中央实例的逻辑主机和 dispatcher/Manager/ClusterManager 下的端口对。


    logical-host-ci:port
  2. 将文件 j2ee-install-dir/additionalproperties 更改如下:


    com.sap.instanceId = logical-host-as_SID_SYSNR
    
  3. 将文件 j2ee-install-dir/server/services/security/work/R3Security.properties 更改如下:


    sapbasis.ashost = logical-host-as
    

从此处可转到何处

转到配置高度可用的数据库

如何针对中央实例使用 Sun Cluster HA for SAP 配置 SAP J2EE 引擎

在完成如何使故障转移 SAP 实例在群集中运行 如何使故障转移 SAP 实例在群集中运行 之后,请执行以下步骤。


注意:

SAP J2EE 引擎使用 SAP 分发程序启动,该程序在 Sun Cluster HA for SAP 的保护之下。 如果 SAP J2EE 引擎停止,SAP 分发程序将重新启动它。


  1. 使用 SAP J2EE 管理工具 GUI,更改 ClusterHosts 参数以列出应用服务器的所有逻辑主机和 dispatcher/Manager/ClusterManager 下的端口对。 例如,


    as1–1h:port;as2–1h:port ...
    

  2. 将文件 j2ee-install-dir/additionalproperties 更改如下:


    com.sap.instanceId = logical-host-ci_SID_SYSNR
    
  3. 将文件 j2ee-install-dir/server/services/security/work/R3Security.properties 更改如下:


    sapbasis.ashost = logical-host-ci
    
  4. 更改文件 SDM-dir/program/config/flow.xml


    host = logical-host-ci
    

从此处可转到何处

转到配置高度可用的数据库

如何使用 Sun Cluster HA for SAP 配置 SAP Web 分发程序

使用 Sun Cluster HA for SAP 配置了 SAP Web 分发程序之后,请执行以下步骤。


注意:

SAP Web 分发程序具有自动重新启动功能。 如果 SAP Web 分发程序停止,SAP Web 分发程序监视进程将重新启动。 目前,还没有可用于 SAP Web 分发程序的 Sun Cluster 代理。


  1. 确保 SAP Web 分发程序具有与中央实例和应用服务器实例不同的实例号。

    例如,SAPSYSTEM = 66 用于 SAP Web 分发程序的配置文件中。

  2. 安装 SAP Web 应用服务器之后,手动激活 Internet Communication Frame Services。

    有关详细信息,请参见 SAP OSS 说明 517484。

从此处可转到何处

转至配置高度可用的数据库

配置高度可用的数据库

SAP 可以支持各种数据库。 有关如何为高可用性数据库配置资源类型、资源组和资源的详细信息,请参见相应的 Sun Cluster 数据服务书籍。 例如,有关详细信息,请参见以下文档:

此外,要了解可为数据库配置的其他资源类型的详细信息,请参见相应的 Sun Cluster 数据服务书籍和数据库安装书籍的相应章节。 Sun Cluster 数据服务书籍包括有关如何为数据库配置其他资源类型的详细信息。 例如,如果要使用 SAP DB 数据库或 Oracle 数据库,请设置 SUNW.HAStoragePlus 资源类型。 有关详细信息,请参见以下章节:

从此处可转到何处

转到如何检验 SAP 和数据库安装是否适合于中央实例 检验 SAP 可伸缩应用服务器

检验 SAP 安装

本节包含检验 SAP 安装所需的过程。

如何检验 SAP 和数据库安装是否适合于中央实例

请使用此过程来检验 SAP 中央实例。 在可运行中央实例的所有潜在节点上执行以下步骤。

  1. 创建故障转移资源组,以保留网络资源和中央实例资源。


    # scrgadm -a -g sap-ci-resource-group [-h nodelist]

    注意:

    使用 scrgadm (1M) 命令的 -h 选项选择 SAP 中央实例可以在其上运行的节点的集合。


  2. 检验是否已将您使用的所有网络资源都添加到了名称服务数据库中。

  3. 将网络资源(逻辑主机名)添加到故障转移资源组中。


    # scrgadm -a -L -g sap-ci-resource-group
     -l ci-logical-hostname [-n netiflist]
  4. 启用该资源组。

    运行scswitch(1M) 命令以将资源组移为被管理状态并将资源组联机。


    # scswitch -Z -g sap-ci-resource-group
    
  5. 登录到托管中央实例资源组的群集成员。

  6. 确保数据库正在运行。

  7. 手动启动中央实例。

  8. 使用逻辑主机名启动 SAP GUI,并检验 SAP 初始化是否正确。

    缺省分发程序的端口为 3200

  9. 手动停止中央实例。

  10. 将此资源组切换到可托管中央实例的其他群集成员。


    # scswitch -z -h node -g sap-ci-resource-group
    
  11. 重复步骤 5步骤 9,直到在每个可托管中央实例的群集节点上都检验了中央实例的启动和关闭操作。

从此处可转到何处

转到 如何检验 SAP 故障转移应用服务器

如何检验 SAP 故障转移应用服务器

请使用此过程来检验故障转移应用服务器的 SAP 和数据库安装。 在可运行故障转移应用服务器的所有潜在节点上执行以下步骤。

  1. 创建故障转移资源组,以保留网络资源和应用服务器资源。


    # scrgadm -a -g sap-as-fo-resource-group
    

    注意:

    请使用 scrgadm 命令的 -h 选项选择可运行 SAP 应用服务器的节点集。


    # scrgadm -a -g sap-as-fo-resource-group\
     [-h nodelist]


  2. 检验是否已将您使用的所有网络资源都添加到了名称服务数据库中。

  3. 将网络资源(逻辑主机名)添加到故障转移资源组中。


    # scrgadm -a -L -g sap-as-fo-resource-group\
     -l as-fo-logical-hostname [-n netiflist]
  4. 启用该资源组。

    运行scswitch(1M) 命令以将资源组移为被管理状态并将资源组联机。


    # scswitch -Z -g sap-as-of-resource-group
    
  5. 登录到托管应用服务器资源组的群集成员。

  6. 手动启动应用服务器。

  7. 使用逻辑主机名启动 SAP GUI,并检验 SAP 初始化是否正确。

  8. 手动停止应用服务器。

  9. 将此资源组切换到可托管应用服务器的其他群集成员。


    # scswitch -z -h node -g sap-as-fo-resource-group
    
  10. 重复步骤 5步骤 7,直到您在每个可运行应用程序服务器的群集节点上都检验了应用程序服务器的启动和关闭操作。

从此处可转到何处

转到安装 Sun Cluster HA for SAP 软件包

检验 SAP 可伸缩应用服务器

如果在如何安装和启用 SAP 可伸缩应用服务器 中安装了可伸缩应用服务器实例,则需要在如何安装和启用 SAP 可伸缩应用服务器 步骤 13 中检验 SAP 可伸缩应用服务器的安装。

从此处可转到何处

转到安装 Sun Cluster HA for SAP 软件包

安装 Sun Cluster HA for SAP 软件包

如果未在 Sun Cluster 初始安装期间安装 Sun Cluster HA for SAP 软件包,请执行此过程以安装该软件包。 在要安装 Sun Cluster HA for SAP 软件包的每个群集节点上执行此过程。 必需使用 Sun Java Enterprise System Accessory CD Volume 3 才能完成此过程。

如果要同时安装多个数据服务,请执行Sun Cluster 软件安装指南(适用于 Solaris OS)》的“安装软件”中的过程。

请使用以下安装工具之一来安装 Sun Cluster HA for SAP 软件包:


注意:

在早于 Sun Cluster 3.1 数据服务 10/03 的发行版中提供 Web Start 程序。


如何使用 Web Start 程序来安装 Sun Cluster HA for SAP 软件包

您可以使用命令行界面 (CLI) 或图形用户界面 (GUI) 运行 Web Start 程序。 CLI 和 GUI 中指令的内容和顺序类似。 有关 Web Start 程序的详细信息,请参见 installer(1M) 手册页。

  1. 在要安装 Sun Cluster HA for SAP 软件包的群集节点上成为超级用户。

  2. (可选的) 如果要使用 GUI 运行 Web Start 程序,请确保已设置 DISPLAY 环境变量。

  3. 将 Sun Java Enterprise System Accessory CD Volume 3 放入 CD-ROM 驱动器。

    如果卷管理守护程序 vold( 1M) 正在运行并被配置为管理 CD-ROM 设备,它将在 /cdrom/cdrom0 目录中自动装载 CD-ROM。

  4. 更改到 CD-ROM 的 Sun Cluster HA for SAP 组件目录。

    用于 Sun Cluster HA for SAP 数据服务的 Web Start 程序位于此目录中。


    # cd /cdrom/cdrom0/\
    components/SunCluster_HA_SAP_3.1/
    
  5. 启动 Web Start 程序。


    # ./installer
    
  6. 系统提示时,选择安装类型。

    • 要仅安装 C 语言环境,请选择“典型”。

    • 要安装其他语言环境,请选择“定制”。

  7. 按照屏幕上的说明在节点上安装 Sun Cluster HA for SAP 软件包。

    完成安装后,Web Start 程序将提供安装摘要。 此摘要使您可以查看 Web Start 程序在安装期间创建的日志。 这些日志位于 /var/sadm/install/logs 目录中。

  8. 退出 Web Start 程序。

  9. 从 CD-ROM 驱动器中取出 Sun Java Enterprise System Accessory CD Volume 3。

    1. 为确保没有在使用 CD-ROM,请将目录更改为 CD-ROM 中的目录。

    2. 弹出 CD-ROM。


      # eject cdrom
      

从此处可转到何处

转到注册和配置 Sun Cluster HA for SAP

如何使用 scinstall 公用程序安装 Sun Cluster HA for SAP 软件包

  1. 将 Sun Java Enterprise System Accessory CD Volume 3 放入 CD-ROM 驱动器。

  2. 运行 scinstall 公用程序(不使用任何选项)。

    此步骤将以交互模式启动 scinstall 公用程序。

  3. 选择菜单选项“将新数据服务的支持添加到此群集节点”。

    scinstall 公用程序将提示您输入其他信息。

  4. 提供 Sun Java Enterprise System Accessory CD Volume 3 的路径。

    公用程序将此 CD-ROM 称为“数据服务 CD”。

  5. 指定要安装的数据服务。

    scinstall 公用程序将列出您选定的数据服务,并要求您确认选择。

  6. 退出 scinstall 公用程序。

  7. 从驱动器中取出 CD-ROM。

从此处可转到何处

转到注册和配置 Sun Cluster HA for SAP

注册和配置 Sun Cluster HA for SAP

本节包含配置 Sun Cluster HA for SAP 所需的过程。

Sun Cluster HA for SAP 扩展特性

请使用适用于中央实例的 Sun Cluster HA for SAP 扩展特性 适用于应用服务器的 Sun Cluster HA for SAP 扩展特性 中的扩展特性创建资源。 创建资源时,使用命令行 scrgadm -x parameter=value 来配置扩展特性。 如果已创建了资源,请使用用于 Solaris OS 的 Sun Cluster 数据服务规划和管理指南》的“管理数据服务资源”中的过程来配置扩展特性。 您可以动态地更新某些扩展特性。 但是,只能在创建或禁用资源时更新其他扩展特性。 “可调”项表示何时可以更新各个特性。 有关所有 Sun Cluster 特性的详细信息,请参见用于 Solaris OS 的 Sun Cluster 数据服务规划和管理指南》中的“标准特性”

适用于中央实例的 Sun Cluster HA for SAP 扩展特性

SAP 配置扩展特性如下所示:

SAPSID

SAP 系统 ID 或 SID

缺省值:

可调:被禁用时

Ci_instance_id

两位数的 SAP 系统编号。

缺省值: 00

可调:被禁用时

Ci_services_string

中央实例服务的字符串。

缺省值: DVEBMGS

可调:被禁用时

启动 SAP 扩展特性如下所示:

Ci_start_retry_interval

从尝试连接数据库到启动中央实例前的等待时间间隔(以秒为单位)。

缺省值: 30

可调:被禁用时

Ci_startup_script

此实例的 SAP 启动脚本的名称,它位于 SIDadm 起始目录中。

缺省值:

可调:被禁用时

停止 SAP 扩展特性如下所示:

Stop_sap_pct

stop-timeout 百分比变量,用于停止 SAP 进程。 在调用 Process Monitor Facility (PMF) 来结束进程前,使用 SAP 关闭脚本可以停止进程。

缺省值: 95

可调:被禁用时

Ci_shutdown_script

此实例的 SAP 关闭脚本的名称,它位于 SIDadm 起始目录中。

缺省值:

可调:被禁用时

探测扩展特性如下所示:

Message_server_name

SAP Message Server 的名称。

缺省值: sapms SAPSID

可调:被禁用时

Lgtst_ms_with_logicalhostname

如何通过 SAP lgtst 公用程序来检查 SAP Message Server。 lgtst 公用程序需要一个主机名(IP 地址)来作为 SAP Message Server 的位置。 此主机名既可以是 Sun Cluster 逻辑主机名,也可以是本地主机(回送)名。 如果将此资源特性设置为 TRUE,请使用逻辑主机名。 否则,请使用本地主机名。

缺省值: TRUE

可调:任何时候

Check_ms_retry

在报告失败总数和启动 Resource Group Manager (RGM) 之前,SAP Message Server 检查失败的最大次数。

缺省值: 2

可调:被禁用时

Probe_timeout

探测时使用的超时值(以秒为单位)。

缺省值: 120

可调: 任何时候

Monitor_retry_count

允许故障监视器重新启动 PMF 的次数。

缺省值: 4

可调: 任何时候

Monitor_retry_interval

故障监视器重新启动的时间间隔(以分钟为单位)。

缺省值: 2

可调:任何时候

开发系统扩展特性如下所示:

Shutdown_dev

RGM 是否应在启动中央实例之前关闭开发系统。

缺省值: FALSE

可调:被禁用时

Dev_sapsid

开发系统的 SAP 系统名(如果将 Shutdown_dev 设置为 TRUE,Sun Cluster HA for SAP 需要此特性)。

缺省值:

可调:被禁用时

Dev_shutdown_script

用于关闭开发系统的脚本。 如果将 Shutdown_dev 设置为 TRUE,Sun Cluster HA for SAP 需要此特性。

缺省值:

可调:被禁用时

Dev_stop_pct

启动超时百分比,Sun Cluster HA for SAP 在启动中央实例之前使用它来关闭开发系统。

缺省值: 20

可调:被禁用时

适用于应用服务器的 Sun Cluster HA for SAP 扩展特性

SAP 配置扩展特性如下所示:

SAPSID

应用服务器的 SAP 系统名或 SAPSID

缺省值:

可调:被禁用时

As_instance_id

应用服务器的两位数的 SAP 系统编号。

缺省值:

可调:被禁用时

As_services_string

应用服务器服务的字符串。

缺省值: D

可调:被禁用时

启动 SAP 扩展特性如下所示:

As_db_retry_interval

尝试连接数据库和启动应用服务器之间的等待时间间隔(以秒为单位)。

缺省值: 30

可调:被禁用时

As_startup_script

应用服务器的 SAP 启动脚本的名称。

缺省值:

可调:被禁用时

停止 SAP 扩展特性如下所示:

Stop_sap_pct

停止超时百分比变量,用于停止 SAP 进程。 在调用 Process Monitor Facility (PMF) 来结束进程前,使用 SAP 关闭脚本可以停止进程。

缺省值: 95

可调:被禁用时

As_shutdown_script

应用服务器的 SAP 关闭脚本的名称。

缺省值:

可调:被禁用时

探测扩展特性如下所示:

Probe_timeout

探测时使用的超时值(以秒为单位)。

缺省值: 60

可调:任何时候

Monitor_retry_count

探测时允许故障监视器重新启动 PMF 的次数。

缺省值: 4

可调:任何时候

Monitor_retry_interval

故障监视器重新启动的时间间隔(以分钟为单位)。

缺省值: 2

可调:任何时候

如何针对中央实例注册和配置 Sun Cluster HA for SAP

请使用此过程针对中央实例配置 Sun Cluster HA for SAP。

  1. 成为托管中央实例的群集中的某个节点上的超级用户。

  2. 注册中央实例的资源类型。


    # scrgadm -a -t SUNW.sap_ci | SUNW.sap_ci_v2
    
  3. 将 HAStoragePlus 资源添加到中央实例资源组中。


    # scrgadm -a -t SUNW.HAStoragePlus
    # scrgadm -a -j ci-storage-resource \
    -g sap-ci-resource-group \
    -t SUNW.HAStoragePlus -x filesystemmountpoints=mountpoint, ... | 

    有关如何设置 HAStoragePlus 资源的详细信息,请参见用于 Solaris OS 的 Sun Cluster 数据服务规划和管理指南》中的“启用高度可用的本地文件系统”

  4. 启用中央实例存储资源。


    # scswitch -e -j ci-storage-resource
    
  5. 在此故障转移资源组中创建 SAP 中央实例资源。


    # scrgadm -a -j sap-ci-resource \
    -g sap-ci-resource-group\
    -t SUNW.sap_ci | SUNW.sap_ci_v2
    -x SAPSID=SAPSID -x Ci_instance_id=ci-instance-id \
    -x Ci_startup_script=ci-startup-script \
    -x Ci_shutdown_script=ci-shutdown-script \
    -y resource_dependencies=ci-storage-resource
    

    有关扩展特性的列表,请参见Sun Cluster HA for SAP 扩展特性

  6. 启用当前包含 SAP 中央实例资源的故障转移资源组。


    # scswitch -Z -g sap-ci-resource-group
    

    如果您将中央实例资源配置为关闭开发系统,您将收到以下控制台消息。


    错误:未设置 SAPSYSTEMNAME
    请检查环境并重新启动

    如果中央实例在未安装开发系统的节点上以及不应运行中央实例的节点上启动,将显示此消息。 SAP 将显示此消息,您可以安全地忽略它。

从此处可转到何处

转到如何将 Sun Cluster HA for SAP 注册和配置为故障转移数据服务 如何将 Sun Cluster HA for SAP 注册和配置为可伸缩数据服务

如何将 Sun Cluster HA for SAP 注册和配置为故障转移数据服务

请使用此过程将 Sun Cluster HA for SAP 配置为故障转移数据服务。

  1. 成为托管应用服务器的群集中的某个节点上的超级用户。

  2. 注册故障转移应用服务器的资源类型。


    # scrgadm -a -t SUNW.sap_as | SUNW.sap_as_v2
    
  3. 将 HAStoragePlus 资源添加到故障转移应用服务器资源组中。


    # scrgadm -a -t SUNW.HAStoragePlus
    # scrgadm -a -j sap-as-storage-resource -g sap-as-fo-resource-group \
    -t SUNW.HAStoragePlus \
    -x filesystemmountpoints=mountpoint, ...
    

    有关如何设置 HAStoragePlus 资源的详细信息,请参见用于 Solaris OS 的 Sun Cluster 数据服务规划和管理指南》中的“启用高度可用的本地文件系统”

  4. 启用故障转移应用服务器存储资源。


    # scswitch -e -j sap-as-storage-resource
    
  5. 在其故障转移资源组中创建 SAP 应用服务器资源。


    # scrgadm -a -j sap-as-resource \
    -g sap-as-fo-resource-group \
    -t SUNW.sap_as | SUNW.sap_as_v2
    -x SAPSID=SAPSID -x As_instance_id=as-instance-id \
    -x As_startup_script=as-startup-script \
    -x As_shutdown_script=as-shutdown-script \
    -y resource_dependencies=sap-as-storage-resource
    

    有关扩展特性的列表,请参见Sun Cluster HA for SAP 扩展特性

  6. 启用当前包含 SAP 应用服务器资源的故障转移资源组。


    # scswitch -Z -g sap-as-fo-resource-group
    

从此处可转到何处

转到如何检验 Sun Cluster HA for SAP 的安装和配置以及中央实例

如何将 Sun Cluster HA for SAP 注册和配置为可伸缩数据服务

请使用此过程将 Sun Cluster HA for SAP 配置为可伸缩数据服务。

  1. 成为托管应用服务器的群集中的某个节点上的超级用户。

  2. 为应用服务器创建可伸缩资源组。


    # scrgadm -a -g sap-as-sa-appinstanceid-resource-group \
    -y Maximum_primaries=value \
    -y Desired_primaries=value
    

    注意:

    由于 SAP 登录组执行应用服务器的负载均衡,所以作为可伸缩数据服务的 Sun Cluster HA for SAP 不使用共享地址。



    注意:

    如果您使用 SUNW.RGOffload 资源类型来卸载此可伸缩应用服务器资源组中的应用服务器,请设置 Desired_primaries=0。 有关使用 SUNW.RGOffload 资源类型的详细信息,请参见用于 Solaris OS 的 Sun Cluster 数据服务规划和管理指南》中的“通过卸载非关键资源组释放节点资源”


  3. 注册可伸缩应用服务器的资源类型。


    # scrgadm -a -t SUNW.sap_as_v2
    
  4. 将 HAStoragePlus 资源添加到故障转移应用服务器资源组中。


    # scrgadm -a -t SUNW.HAStoragePlus 
    # scrgadm -a -j sap-as-storage-resource -g \
    -g sap-as-sa-appinstanceid-resource-group \
    -t SUNW.HAStoragePlus \
    -x filesystemmountpoints=mountpoint, ... \

    有关如何设置 HAStoragePlus 资源的详细信息,请参见用于 Solaris OS 的 Sun Cluster 数据服务规划和管理指南》中的“启用高度可用的本地文件系统”

  5. 启用故障转移应用服务器存储资源。


    # scswitch -e -j sap-as-storage-resource
    
  6. 在此可伸缩资源组中创建 SAP 应用服务器资源。


    # scrgadm -a -j sap-as-resource \
    -g sap-as-sa-appinstanceid-resource-group \
    -t SUNW.sap_as_v2 \
    -x SAPSID=SAPSID  \
    -x As_instance_id=as-instance-id \
    -x As_startup_script=as-startup-script \
    -x As_shutdown_script=as-shutdown-script \
    -y resource_dependencies=sap-as-storage-resource
    

    有关扩展特性的列表,请参见Sun Cluster HA for SAP 扩展特性

  7. 启用当前包含 SAP 应用服务器资源的可伸缩资源组。

    • 如果RGOffload 资源类型用于此应用服务器,请使用以下命令。


      # scswitch -Z -g sap-as-sa-appinstanceid-resource-group
      
    • 如果将 RGOffload 资源类型用于此应用服务器,请使用以下命令。


      # scswitch -z -h node1, node2 -g sap-as-sa-appinstanceid-resource-group
      

    注意:

    如果将 SUNW.RGOffload 资源类型用于此应用服务器,则必须指定要在哪个节点上通过 -z 选项(而非 -j 选项)使资源联机。


从此处可转到何处

转到如何检验 Sun Cluster HA for SAP 的安装和配置以及中央实例

设置锁定文件

请使用本节中的过程执行以下任务。

当实例在某个节点上处于活动状态时,设置锁定文件可以防止多次启动 SAP 实例。 多次启动同一实例会导致相互崩溃。 并且,这种崩溃还会使 SAP 关闭脚本无法完全关闭实例,这可能会导致数据损坏。

如果设置了锁定文件,当您启动 SAP 实例时,SAP 软件将锁定文件 startup_lockfile。 如果您在 Sun Cluster 环境之外启动了同一实例,然后试图在 Sun Cluster 环境下启用 SAP,则 Sun Cluster HA for SAP 数据服务将尝试启动同一实例。 但是,由于文件锁定机制的作用,这种尝试将失败。 数据服务将在 /var/adm/messages 中记录相应的错误消息。

中央实例或故障转移应用服务器的锁定文件与可伸缩应用服务器的锁定文件之间的唯一区别是:可伸缩应用服务器的锁定文件驻留在本地文件系统中,中央实例或故障转移应用服务器的锁定文件则驻留在群集文件系统中。

如何设置中央实例或故障转移应用服务器的锁定文件

请使用此过程来设置中央实例或故障转移应用服务器的锁定文件。

  1. 安装 sapstart 可执行文件的最新修补程序(Sun Cluster HA for SAP 用户通过该文件配置锁定文件)。

  2. 群集文件系统中设置中央实例锁定文件或故障转移应用服务器锁定文件。

  3. 编辑 sapstart 用于启动实例的配置文件,以便您为中央实例或故障转移应用服务器添加新的 SAP 参数 sapstart/lockfile。 此配置文件作为 startsap 脚本中的一个参数传送给 sapstart

    对于中央实例,请输入以下内容。


    sapstart/lockfile =/usr/sap/SID/ Service-StringSystem-Number/work/startup_lockfile
    

    对于故障转移应用服务器,请输入以下内容。


    sapstart/lockfile =/usr/sap/SID/ Dinstance-id/work/startup_lockfile
    
    sapstart/lockfile

    新的参数名称。

    /usr/sap/SID/ Service-StringSystem-Number/work

    中央实例的工作目录。

    /usr/sap/SID/ Dinstance-id/work

    故障转移应用服务器的工作目录。

    startup_lockfile

    Sun Cluster HA for SAP 使用的锁定文件名。

    SAP 将创建锁定文件。


    注意:

    必须将锁定文件路径定位在群集文件系统中。 如果将锁定文件路径定位在本地节点上,则无法防止从多个节点启动同一实例。


如何设置可伸缩应用服务器的锁定文件

请使用此过程来设置可伸缩应用服务器的锁定文件。

  1. 安装 sapstart 可执行文件的最新修补程序(Sun Cluster HA for SAP 用户通过该文件配置锁定文件)。

  2. 本地文件系统中设置应用服务器的锁定文件。

  3. 编辑 sapstart 用于启动实例的配置文件,以便您为可伸缩应用服务器添加新的 SAP 参数 sapstart/lockfile。 此配置文件作为 startsap 脚本中的一个参数传送给 sapstart


    sapstart/lockfile =/usr/sap/local/SID/Dinstance-id/work/startup_lockfile
    
    sapstart/lockfile

    新的参数名称。

    /usr/sap/local/SID/D instance-id/work

    可伸缩应用服务器的工作目录。

    startup_lockfile

    Sun Cluster HA for SAP 使用的锁定文件名。

    SAP 将创建锁定文件。


    注意:

    锁定文件将驻留在本地文件系统中。 锁定文件无法防止其他节点的多次启动。但是,它可以防止同一节点的多次启动。


检验 Sun Cluster HA for SAP 的安装和配置

本节包含检验您是否正确安装和配置了数据服务所需的过程。

如何检验 Sun Cluster HA for SAP 的安装和配置以及中央实例

请使用此过程来检验 Sun Cluster HA for SAP 的安装和配置以及中央实例。

  1. 登录到托管资源组(包含 SAP 中央实例资源)的节点。

  2. 启动 SAP GUI,以检验 Sun Cluster HA for SAP 是否运行正常。

  3. 以用户 sapsidadm 的身份使用中央实例 stopsap 脚本来关闭 SAP 中央实例。

    Sun Cluster 软件将重新启动中央实例。

  4. 以用户 root 的身份将 SAP 资源组切换到其他群集成员。


    # scswitch -z -h node2 -g sap-ci-resource-group
    
  5. 检验在此节点上是否已启动 SAP 中央实例。

  6. 重复步骤 1步骤 5,直到您对可运行 SAP 中央实例的所有潜在节点都进行了测试。

从此处可转到何处

转到如何检验作为故障转移数据服务的 Sun Cluster HA for SAP 的安装和配置 如何检验作为可伸缩数据服务的 Sun Cluster HA for SAP 的安装和配置

如何检验作为故障转移数据服务的 Sun Cluster HA for SAP 的安装和配置

请使用此过程来检验作为故障转移数据服务的 Sun Cluster HA for SAP 的安装和配置。

  1. 登录到当前托管资源组(包含 SAP 应用服务器资源)的节点。

  2. 以用户 sapsidadm 的身份启动 SAP GUI,以检验应用服务器是否运行正常。

  3. 使用应用程序服务器 stopsap 脚本关闭在步骤 1 中所标识的节点上的 SAP 应用程序服务器。

    Sun Cluster 软件将重新启动应用服务器。

  4. 以用户 root 的身份将包含 SAP 应用服务器资源的资源组切换到其他群集成员。


    # scswitch -z -h node2 -g sap-as-resource-group
    
  5. 检验 SAP 应用服务器是否能在步骤 4 中所标识的节点上启动。

  6. 重复 步骤 1步骤 5,直到您对可运行 SAP 应用程序服务器的所有潜在节点都进行了测试。

如何检验作为可伸缩数据服务的 Sun Cluster HA for SAP 的安装和配置

请使用此过程来检验作为可伸缩数据服务的 Sun Cluster HA for SAP 的安装和配置。

  1. 登录到运行应用服务器的某个节点。

  2. 成为用户 sapsidadm

  3. 启动 SAP GUI,以检验应用服务器是否运行正常。

  4. 使用应用服务器 stopsap 脚本关闭步骤 1 中所标识的节点上的 SAP 应用服务器。

    Sun Cluster 软件将重新启动应用服务器。

  5. 重复步骤 1步骤 3,直到您对可运行 SAP 应用服务器的所有潜在节点都进行了测试。

了解 Sun Cluster HA for SAP 故障监视器

Sun Cluster HA for SAP 故障监视器可以检查 SAP 进程和数据库的可用性。 SAP 进程的可用性会影响 SAP 资源的故障历史记录。 SAP 资源的故障历史记录进而又决定了故障监视器的操作方式,其中包括不执行任何操作、重新启动或故障转移。

相对于 SAP 进程可用性,SAP 数据库可用性对 SAP 资源的故障历史记录没有影响。 但是,数据库可用性能够为使用数据库的 SAP 资源触发 SAP 故障监视器,以将所有 syslog 消息都记录到 /var/adm/messages 并相应地设置状态。

适用于中央实例的 Sun Cluster HA for SAP 故障探测

对于中央实例,故障探测执行以下步骤。

  1. 检索 SAP Message Server 和分发程序的进程 ID

  2. 不断地进行循环(如果为 Thorough_probe_interval,则休眠)

  3. 检查 SAP 资源的可用性

    1. 非正常退出 – 如果 Process Monitor Facility (PMF) 检测到 SAP 进程树失败,故障监视器就会将此问题视为完全失败。 故障监视器根据资源的故障历史记录重新启动或将 SAP 资源故障转移到其他节点。

    2. 通过探测来检查 SAP 资源的可用性 – 探测使用 ps(1) 命令来检查 SAP Message Server 和主分发程序进程。 如果在系统的活动进程列表中找不到任何 SAP Message Server 或主分发程序进程,则故障监视器会将此问题视为完全失败。

      如果您将参数 Check_ms_retry 配置为大于零的值,探测就会检查 SAP Message Server 连接。 如果将扩展特性 Lgtst_ms_with_logicalhostname 设置为缺省值 TRUE,则探测将通过公用程序 lgtst 来完成 SAP Message Server 连接的测试。 探测使用在 SAP 资源组中指定的逻辑主机名接口来调用 SAP 提供的公用程序 lgtst。 如果您将扩展特性 Lgtst_ms_with_logicalhostname 设置为 TRUE 以外的值,探测就会通过节点的本地主机名(回送接口)来调用 lgtst

      如果 lgtst 公用程序调用失败,说明 SAP Message Server 连接无效。 在这种情况下,故障监视器将该问题视为部分失败,因而不会立即触发 SAP 重新启动或故障转移。 如果发生以下情况,故障监视器会将两个部分失败计为一个完全失败。

      1. 将扩展特性 Check_ms_retry 配置为 2

      2. 在资源特性 Retry_interval 设置的重试时间间隔内,故障监视器累计发生的两个部分失败。

      根据资源的故障历史记录,完全失败将触发本地重新启动或故障转移。

    3. 通过探测来检查数据库的连接状态 – 探测调用 SAP 提供的公用程序 R3trans 来检查数据库连接的状态。 Sun Cluster HA for SAP 故障探测可以检验 SAP 是否能够连接到数据库。 但是,Sun Cluster HA for SAP 依赖于具有高可用性的数据库故障探测来确定数据库的可用性。 如果数据库连接状态检查失败,故障监视器将在 /var/adm/messages 中记录以下消息:数据库可能要关闭。 然后,故障监视器会将 SAP 资源的状态设置为 DEGRADED。 如果探测再次检查数据库的状态时连接已重新建立,则故障监视器将在 /var/adm/messages 中记录以下消息:数据库正在运行,同时将 SAP 资源的状态设置为 OK

  4. 评估故障历史记录

    根据故障历史记录,故障监视器可以完成以下操作之一。

    • 不执行任何操作

    • 本地重新启动

    • 故障转移

适用于应用服务器的 Sun Cluster HA for SAP 故障探测

对于应用服务器,故障探测执行以下步骤。

  1. 检索主分发程序的进程 ID

  2. 不断地进行循环(如果为 Thorough_probe_interval,则休眠)

  3. 检查 SAP 资源的可用性

    1. 非正常退出 – 如果 Process Monitor Facility (PMF) 检测到 SAP 进程树失败,故障监视器就会将此问题视为完全失败。 故障监视器根据资源的故障历史记录重新启动或将 SAP 资源故障转移到其他节点。

    2. 通过探测来检查 SAP 资源的可用性 – 探测使用 ps(1) 命令来检查 SAP Message Server 和主分发程序进程。 如果在系统的活动进程列表中没有找到 SAP 主分发程序进程,故障监视器就会将该问题视为完全失败。

    3. 通过探测来检查数据库的连接状态 – 探测调用 SAP 提供的公用程序 R3trans 来检查数据库连接的状态。 Sun Cluster HA for SAP 故障探测可以检验 SAP 是否能够连接到数据库。 但是,Sun Cluster HA for SAP 依赖于具有高可用性的数据库故障探测来确定数据库的可用性。 如果数据库连接状态检查失败,故障监视器将在 /var/adm/messages 中记录以下消息:数据库可能要关闭,并将 SAP 资源的状态设置为 DEGRADED。 如果探测再次检查数据库的状态时连接已重新建立,故障监视器将在 /var/adm/messages 中记录以下消息:数据库正在运行。 然后,故障监视器会将 SAP 资源的状态设置为 OK

  4. 评估故障历史记录

    根据故障历史记录,故障监视器可以完成以下操作之一。

    • 不执行任何操作

    • 本地重新启动

    • 故障转移

      如果应用服务器资源是故障转移资源,则故障监视器会对该应用服务器进行故障转移。

      如果应用服务器资源是可伸缩资源,则本地重新启动的次数用尽后,RGM 将在另一节点上启动该应用服务器(如果群集中有其他可用节点)。