本节讨论《Sun Cluster Data Service for SAP Web Application Server Guide for Solaris OS》中的错误和遗漏之处。
在 SAP 7.0 和 NW2004SR1 中,当启动一个 SAP 实例时,sapstartsrv 进程默认情况下也会随之启动。sapstartsrv 进程不受 Sun Cluster HA for SAP Web Application Server 的控制。因此,当 Sun Cluster HA for SAP Web Application Server 停止 SAP 实例或者对其进行故障转移时,sapstartsrv 进程不会停止。
要避免 sapstartsrv 进程在 Sun Cluster HA for SAP Web Application Server 启动 SAP 实例时随之一起启动,您必须修改 startsap 脚本。此外,还应在所有的 Sun Cluster 节点上将 /etc/rc3.d/S90sapinit 文件重命名为 /etc/rc3.d/xxS90sapinit。
在基于 SPARC 和 x86 平台的系统上,非全局区域中支持用于 SAP Web Application Server 的 Sun Cluster 数据服务。关于此支持问题,应在“用于 SAP Web Application Server 的 Sun Cluster 数据服务指南”中进行以下更改。在已配置为运行于全局区域的群集上,可执行下列步骤。如果要安装运行于非全局区域的群集,可能无需执行下面指出的某些步骤。
在每个区域上,确保 /etc/hosts 文件中包含所有的网络资源,以免由于进行名称服务查找而引起故障。
在每个区域上,在 /etc/group 文件中为 SAP Web Application Server 组创建一个相应的条目,并将潜在的用户添加到该组中。
在每个区域上,为 SAP Web Application Server 用户 ID 创建一个相应的条目。
使用以下命令更新 /etc/passwd 文件和 /etc/shadow 文件,使其包含该用户 ID 条目。
# useradd -u uid -g group -d /sap-home sap user |
在可能会运行 SAP Web Application Server 的区域中创建挂载点目录。
配置 /etc/nsswitch.conf 文件,以便在进行切换或故障转移时,Sun Cluster HA for SAP 能够正确地启动和停止。
在每个区域上,更新 /etc/services 文件,使其包含从全局区域 /etc/services 中获取的所有必要的 SAP 端口。对于要安装在非全局区域中的 SAP Web Application Server,可能无需执行此步骤。
(仅限基于 x86 平台的系统)在将会运行 SAP 的所有本地区域上执行 crle -64 -u -l /sapmnt/SAPSystemName/exe。
可执行以下操作过程来为非全局区域配置 HAStoragePlus 资源。
/etc/vfstab 文件中对应于群集文件系统的条目应在其挂载选项中包含 global 关键字。
使用 HAStoragePlus 资源后会具备高可用性的 SAP 二进制文件应当可从非全局区域访问。
在非全局区域中,不同资源组中的不同资源所使用的文件系统必须都驻留在一个 HAStoragePlus 资源中,且该资源应驻留在某个可伸缩资源组中。可伸缩 HAStoragePlus 资源组的节点列表必须是应用程序资源组(具有依赖于文件系统的资源)节点列表的超集。必须为这些依赖于文件系统的应用程序资源设置对 HAStoragePlus 资源的牢固资源依赖性。此外,还必须为从属应用程序资源组设置与可伸缩 HAStoragePlus 资源组的资源组正向强关联性。
在群集的任一节点上,成为超级用户或使用一个可提供 solaris.cluster.modify RBAC 授权的角色。
在包含 HAStoragePlus 资源的非全局区域中创建可伸缩资源组。
# clresourcegroup create \ -p Maximum_primaries=m\ -p Desired_primaries=n\ [-n node-zone-list] hasp-resource-group |
指定该资源组的活动主节点的最大数目。
指定尝试启动资源组的活动主节点的数目。
在 HAStoragePlus 资源组的节点列表中,指定“节点名称:区域名称”对的列表作为 HAStoragePlus 资源组的节点列表,其中的 SAP 实例可以处于联机状态。
指定要添加的可伸缩资源组的名称。此名称必须以 ASCII 字符开头。
为 HAStoragePlus 资源注册资源类型。
# clresourcetype register HAStoragePlus |
创建 HAStoragePlus 资源 hasp-resource,并定义 SAP 文件系统挂载点和全局设备路径。
# clresource create -g hasp-resource-group -t SUNW.HAStoragePlus \ -p GlobalDevicePaths=/dev/global/dsk/d5s2,dsk/d6 \ -p affinityon=false -p FilesystemMountPoints=/sapmnt/JSC,/usr/sap/trans,/usr/sap/JSC hasp-resource |
指定资源组名称。
包含以下值:
全局设备组名称,例如 sap-dg、dsk/d5
全局设备的路径,例如 /dev/global/dsk/d5s2、/dev/md/sap-dg/dsk/d6
包含以下值:
本地或群集文件系统的挂载点,例如 /local/mirrlogA、/local/mirrlogB、/sapmnt/JSC、/usr/sap/JSC
创建后的 HAStoragePlus 资源将处于“已启用”状态。
为 SAP 应用程序注册资源类型。
# clresourcetype register resource-type |
指定要添加的资源类型的名称。有关更多信息,请参见支持的产品。
创建一个 SAP 资源组。
# clresourcegroup create [-n node-zone-list] -p RG_affinities=++hastorageplus-rg resource-group-1 |
指定 SAP 服务资源组。
将 SAP 应用程序资源添加到 resource-group-1 中,并设置对 hastorageplus-1 的依赖性。
# clresource create -g resource-group-1 -t SUNW.application \ [-p "extension-property[{node-specifier}]"=value, ?] \ -p Resource_dependencies=hastorageplus-1 resource |
使故障转移资源组联机。
# clresourcegroup online resource-group-1 |