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

安装和配置 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。

从此处可转到何处

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