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

如何安装和配置 SAP J2EE 引擎

  1. 在群集的一个节点上安装 SAP J2EE 引擎软件。

    请参阅 SAP 安装文档。

  2. 为 SAP 排队服务器和 SAP 拷贝服务器创建配置文件。

    请参阅 SAP 文档《SAP Web Application Server in Switchover Environments, UNIX Platforms》。


    注意 –

    SAP 排队服务器配置文件和 SAP 拷贝服务器配置文件中的 SAPSYSTEM 参数必须具有相同的值。


  3. 修改返回 SAP 消息服务器和 SAP J2EE 引擎的逻辑主机名的脚本。

    修改名为 loghost 的脚本,该脚本返回每个 SAP 消息服务器和 SAP J2EE 引擎实例的逻辑主机名。该脚本必须位于 $HOME 目录中,其中 $HOME 指定 SAP 用户的起始目录。


    实例 1–6 修改脚本以返回逻辑主机名


    if [ "$1" = "DVEBMGS00" ]; then
        echo loghost-1;
    fi
    if [ "$1" = "SCS01" ]; then
        echo loghost-2;
    fi
    if [ "$1" = "D02" ]; then
        echo loghost-3;
    fi

  4. 设置脚本的文件权限,从而使其可以执行。


    # chmod 755 $HOME/loghost
  5. 修改 SAP 启动和停止脚本,如下所示:

    1. 确保实例名称的唯一性。

      在 SAP 启动和停止脚本中,向以 INSTANCE= 开头的行的行尾添加 sort -u 命令。此命令对找到的所有实例名称进行排序,并且仅保留唯一的名称。

      原始行如下(其中 arg 为参数编号,例如 1 或 2):


      INSTANCE=`echo $arg | awk '/SCS[0-9][0-9]/{print $1}
      /ASCS[0-9][0-9]/{print $1} /DVEBMGS[0-9][0-9]/{print $1} 
      /JC[0-9][0-9]/{print $1} /D[0-9][0-9]/{print $1} 
      /J[0-9][0-9]/{print $1} /G[0-9][0-9]/{print $1}'`

      在向结尾处的 sort -u 命令添加一个管道后,该行如下(其中 arg 为参数编号,例如 1 或 2):


      INSTANCE=`echo $arg | awk '/SCS[0-9][0-9]/{print $1}
      /ASCS[0-9][0-9]/{print $1} /DVEBMGS[0-9][0-9]/{print $1} 
      /JC[0-9][0-9]/{print $1} /D[0-9][0-9]/{print $1} 
      /J[0-9][0-9]/{print $1} /G[0-9][0-9]/{print $1}' | sort -u`
    2. 更新 SAP 启动和停止脚本以调用返回逻辑主机名的脚本。

      在设置 HOSTNAME 的部分中,插入您在步骤 3 中创建的脚本 $HOME/loghost 的名称。通过将行 HOSTNAME='hostname' 替换为以下示例中的行即可完成此操作。


      实例 1–7 更改 SAP 启动和停止脚本以调用返回逻辑主机名的脚本


      < remove
      > add
      
      # Set HOSTNAME
      case `uname` in
         OS/390* | z/OS* | AIX* | BOS*)
           HOSTNAME=`hostname -s`
           ;;
         *)
      <    HOSTNAME=`hostname`
      >    if [ $# -eq 2 ]; then
      >         HOSTNAME=`$HOME/loghost $2`
      >    else
      >         HOSTNAME=`hostname`
      >    fi
           ;;
      esac

    3. 为了获得用户配置文件从而也获得特定于 SAP 的环境文件,请将以下行作为 SAP 启动和停止脚本的第二行添加。

      . $HOME/.profile

    4. 从 SAP 启动脚本中删除用于 SAP 中心服务组件的 DB 检查。SAP 中心服务组件包括 SAP 排队服务器、SAP 拷贝服务器和 SAP 消息服务器。

    5. 如果结合使用 PMF 与 SAP Web 应用服务器,请从此 SAP Web 应用服务器 使用的 SAP 启动脚本中删除有关 saposcol 程序的启动的部分。

  6. 修改文件名和文件内容以使用逻辑主机名(而不是物理主机名)。

    标准 SAP J2EE 引擎安装使用安装 SAP 系统的节点的物理主机名。您必须修改 SAP J2EE 引擎以使用逻辑主机名,以便使 SAP J2EE 引擎能够在 Sun Cluster 环境中工作。

    1. 从 SAP 用户的起始目录中的 “.” 文件的名称中删除物理主机名。

      在以下示例中,physical-hostname 表示物理主机名。


      实例 1–8 从文件名中删除物理主机名


      # for i in .*physical-hostname.*
        > do
        > mv $i `echo $i | sed "s/_physical-hostname//"`
        > done

    2. 更改数据库 “.” 文件以引用逻辑主机名(而不是物理主机名)。

    3. 更改配置文件的文件名和文件内容以使用逻辑主机名(而不是物理主机名)。

      这些文件位于 /usr/sap/SAPSID/SYS/profile,其中 SAPSID 为 SAP 系统标识。

    4. 向位于 SAP 配置文件目录中的逻辑主机名文件 SAPSID_INSTANCE_NAMESYSTEM_NUMBER_logical-hostname 中添加以下逻辑主机名条目。注意,SAPSID 为 SAP 系统标识,INSTANCE_NAME 为 SAP 实例名称,SYSTEM_NUMBER 为 SAP 系统编号。

      SAPLOCALHOST=logical-hostname

      SAPLOCALHOSTFULL=logical-hostname.domain

    5. 在文件 /usr/sap/SAPSID/INSTANCE_NAME/igs/conf/igs.xml 中,使用逻辑主机名替换物理主机名。注意,SAPSID 为 SAP 系统标识,INSTANCE_NAME 为 SAP 实例名称。

  7. 使用 SAP 配置工具修改 SAP J2EE 引擎设置以引用逻辑主机名。

    要启动 SAP 配置工具,您可以使用位于目录 /usr/sap/SAPSID/JCINSTANCE_NUMBER/j2ee/configtool 中的脚本 offlinecfgeditor.sh

    1. LockingManager 部分中,修改 enqu.host 以引用 SAP 排队服务器的逻辑主机名。检查所有设置(常规设置和特定于实例的设置)下的此条目。

    2. LockingManager 部分中,修改出现的所有 enq.profile.filename 以使用逻辑主机名。例如,将 SAPSID_JCINSTANCE_NUMBER_physicalhost 更改为 SAPSID_JCINSTANCE_NUMBER_logicalhost。新文件名应与文件 /sapmnt/SAPSID/profile 中的文件名相同。

    3. ClusterManager 部分中,更改 ms.host 以引用 SAP 消息服务器的逻辑主机名。

    4. 确保 enqu.port 参数和 dbpool 参数中的 URL 设置正确。