3.3. 配置 Pacemaker


当 HANA Scale-Out 环境配置且 HANA 系统复制按预期工作时,您可以配置 HA 集群,以使用 RHEL HA 附加组件管理 HANA Scale-Out System Replication 环境。

需要额外的仲裁实例,以防止 Pacemaker 脑裂配置。在本例中,我们添加一个节点。此节点作为 大多数制造商称为大多数制造商,需要奇数个集群节点才能进行工作配置。这是一个额外的最小的主机,它只需要 Pacemaker 和公共网络。虽然在这个节点上,没有安装 SAP HANA 数据库,存储配置已过时。

先决条件

  • 已安装 saphostagent,并检查 /usr/sap/hostcontrol/exe/sapcontrol 是否存在。如需更多信息,请参阅 1031096 - 安装软件包 SAPHOSTAGENT
  • 您已确认系统中配置了 RHEL 高可用性存储库。您不能在没有此配置的情况下安装 Pacemaker。
  • 您已以 root 用户身份登录所有系统。
  • 您已确认所有集群节点都已注册,并启用了必要的软件仓库来安装集群软件包,如 Registering your RHEL system and enable repositories 部分所述。

    [root@dc1hana01]# subscription-manager repos --list-enabled
    +----------------------------------------------------------+
    	Available Repositories in /etc/yum.repos.d/redhat.repo
    +----------------------------------------------------------+
    Repo ID:   rhel-8-for-x86_64-baseos-e4s-rpms
    Repo Name: Red Hat Enterprise Linux 8 for x86_64 - BaseOS - Update Services for SAP Solutions (RPMs)
    Repo URL:  <Your repo URL>
    Enabled:   1
    
    Repo ID:   rhel-8-for-x86_64-sap-solutions-e4s-rpms
    Repo Name: Red Hat Enterprise Linux 8 for x86_64 - SAP Solutions - Update Services for SAP Solutions (RPMs)
    Repo URL:  <Your repo URL>
    Enabled:   1
    
    Repo ID:   ansible-2.8-for-rhel-8-x86_64-rpms
    Repo Name: Red Hat Ansible Engine 2.8 for RHEL 8 x86_64 (RPMs)
    Repo URL:  <Your repo URL>
    Enabled:   1
    
    Repo ID:   rhel-8-for-x86_64-highavailability-e4s-rpms
    Repo Name: Red Hat Enterprise Linux 8 for x86_64 - High Availability - Update Services for SAP Solutions (RPMs)
    Repo URL:  <Your repo URL>
    Enabled:   1
    
    Repo ID:   rhel-8-for-x86_64-appstream-e4s-rpms
    Repo Name: Red Hat Enterprise Linux 8 for x86_64 - AppStream - Update Services for SAP Solutions (RPMs)
    Repo URL:  <Your repo URL>
    Enabled:   1
    
    
    yum repolist
    Updating Subscription Management repositories.
    repo id                                                                  	repo name
    advanced-virt-for-rhel-8-x86_64-rpms                                     	Advanced Virtualization for RHEL 8 x86_64 (RPMs)
    ansible-2.8-for-rhel-8-x86_64-rpms                                       	Red Hat Ansible Engine 2.8 for RHEL 8 x86_64 (RPMs)
    rhel-8-for-x86_64-appstream-e4s-rpms                                     	Red Hat Enterprise Linux 8 for x86_64 - AppStream - Update Services for SAP Solutions (RPMs)
    rhel-8-for-x86_64-baseos-e4s-rpms                                        	Red Hat Enterprise Linux 8 for x86_64 - BaseOS - Update Services for SAP Solutions (RPMs)
    rhel-8-for-x86_64-highavailability-e4s-rpms                              	Red Hat Enterprise Linux 8 for x86_64 - High Availability - Update Services for SAP Solutions (RPMs)
    rhel-8-for-x86_64-sap-netweaver-e4s-rpms                                 	Red Hat Enterprise Linux 8 for x86_64 - SAP NetWeaver - Update Services for SAP Solutions (RPMs)
    rhel-8-for-x86_64-sap-solutions-e4s-rpms                                 	Red Hat Enterprise Linux 8 for x86_64 - SAP Solutions - Update Services for SAP Solutions (RPMs)

流程

  1. 配置集群。如需更多信息,请参阅 配置和管理高可用性集群
  2. 在集群的每个节点中(包括 大多数制造商 )安装 Red Hat High Availability Add-On 软件包,以及 High Availability 频道中所有可用的隔离代理:

    [root]# yum -y install pcs pacemaker fence-agents

    或者,您只能安装特定的 fence-agents :

    [root]# yum install fence-agents-sbd fence-agents-ipmilan
  3. 如果您正在运行 防火墙 守护进程,请执行以下命令启用红帽高可用性附加组件所需的端口:

    [root]# firewall-cmd --permanent --add-service=high-availability
    [root]# firewall-cmd --add-service=high-availability
  4. 配置后,在每个集群节点上为用户 hacluster 设置密码。

    [root]# passwd hacluster
    
    Changing password for user hacluster. New password:
    Retype new password:
    passwd: all authentication tokens updated successfully.
  5. 通过在每个节点上执行以下命令来启动并启用守护进程:

    [root]# systemctl start [root]# pcsd.service systemctl enable pcsd.service
  6. 只在一个节点中,您必须验证 hacluster 用户。在此命令中包含每个节点非常重要,这应该是集群的一部分。如果没有指定密码,系统会要求您输入在上一步中定义的 hacluster 密码。对于 RHEL 8.x,运行以下命令:

    [root@dc1hana01]# pcshost auth -u hacluster -p <clusterpassword> dc1hana01 dc1hana02 dc1hana03 dc1hana04 dc2hana01 dc2hana02 dc2hana03 dc2hana04 majoritymaker
    Username: hacluster
    Password:
    majoritymaker: Authorized
    dc1hana03: Authorized
    dc1hana02: Authorized
    dc1hana01: Authorized
    dc2hana01: Authorized
    dc2hana02: Authorized
    dc1hana04: Authorized
    dc2hana04: Authorized
    dc2hana03: Authorized
  7. 在同一节点上使用 pcs cluster setup 来生成和同步 corosync 配置。RHEL 8 示例还显示,如果您使用 2 个集群网络

    [root@dc1hana01]# pcs cluster setup scale_out_hsr majoritymaker addr=10.10.10.41 addr=192.168.102.100 dc1hana01 addr=10.10.10.21 addr=192.168.102.101 dc1hana02 addr=10.10.10.22 addr=192.168.102.102 dc1hana03 addr=10.10.10.23 addr=192.168.102.103 dc1hana04 addr=10.10.10.24 addr=192.168.102.104 dc2hana01 addr=10.10.10.31 addr=192.168.102.201 dc2hana02 addr=10.10.10.33 addr=192.168.102.202 dc2hana03 addr=10.10.10.34 addr=192.168.212.203 dc2hana04 addr=10.10.10.10 addr=192.168.102.204
    
    Destroying cluster on nodes: dc1hana01, dc1hana02, dc1hana03,
    dc1hana04, dc2hana01, dc2hana02, dc2hana03, dc2hana04,
    majoritymaker...
    dc1hana01: Stopping Cluster (pacemaker)...
    dc1hana04: Stopping Cluster (pacemaker)...
    dc1hana03: Stopping Cluster (pacemaker)...
    dc2hana04: Stopping Cluster (pacemaker)...
    dc2hana01: Stopping Cluster (pacemaker)...
    dc2hana03: Stopping Cluster (pacemaker)...
    majoritymaker: Stopping Cluster (pacemaker)...
    dc2hana02: Stopping Cluster (pacemaker)...
    dc1hana02: Stopping Cluster (pacemaker)...
    dc2hana01: Successfully destroyed cluster
    dc2hana03: Successfully destroyed cluster
    dc1hana04: Successfully destroyed cluster
    dc1hana03: Successfully destroyed cluster
    dc2hana02: Successfully destroyed cluster
    dc1hana01: Successfully destroyed cluster
    dc1hana02: Successfully destroyed cluster
    dc2hana04: Successfully destroyed cluster
    majoritymaker: Successfully destroyed cluster
    Sending 'pacemaker_remote authkey' to 'dc1hana01', 'dc1hana02',
    'dc1hana03', 'dc1hana04', 'dc2hana01', 'dc2hana02', 'dc2hana03',
    'dc2hana04', 'majoritymaker'
    dc1hana01: successful distribution of the file 'pacemaker_remote
    authkey'
    dc1hana04: successful distribution of the file 'pacemaker_remote
    authkey'
    dc1hana03: successful distribution of the file 'pacemaker_remote
    authkey'
    dc2hana01: successful distribution of the file 'pacemaker_remote
    authkey'
    dc2hana02: successful distribution of the file 'pacemaker_remote
    authkey'
    dc2hana03: successful distribution of the file 'pacemaker_remote
    authkey'
    dc2hana04: successful distribution of the file 'pacemaker_remote
    authkey'
    majoritymaker: successful distribution of the file 'pacemaker_remote
    authkey'
    dc1hana02: successful distribution of the file 'pacemaker_remote
    authkey'
    Sending cluster config files to the nodes...
    dc1hana01: Succeeded
    dc1hana02: Succeeded
    dc1hana03: Succeeded
    dc1hana04: Succeeded
    dc2hana01: Succeeded
    dc2hana02: Succeeded
    dc2hana03: Succeeded
    dc2hana04: Succeeded
    majoritymaker: Succeeded
    Starting cluster on nodes: dc1hana01, dc1hana02, dc1hana03,
    dc1hana04, dc2hana01, dc2hana02, dc2hana03, dc2hana04,
    majoritymaker...
    dc2hana01: Starting Cluster...
    dc1hana03: Starting Cluster...
    dc1hana01: Starting Cluster...
    dc1hana02: Starting Cluster...
    dc1hana04: Starting Cluster...
    majoritymaker: Starting Cluster...
    dc2hana02: Starting Cluster...
    dc2hana03: Starting Cluster...
    dc2hana04: Starting Cluster...
    Synchronizing pcsd certificates on nodes dc1hana01, dc1hana02,
    dc1hana03, dc1hana04, dc2hana01, dc2hana02, dc2hana03, dc2hana04,
    majoritymaker...
    majoritymaker: Success
    dc1hana03: Success
    dc1hana02: Success
    dc1hana01: Success
    dc2hana01: Success
    dc2hana02: Success
    dc2hana03: Success
    dc2hana04: Success
    dc1hana04: Success
    Restarting pcsd on the nodes in order to reload the certificates...
    dc1hana04: Success
    dc1hana03: Success
    dc2hana03: Success
    majoritymaker: Success
    dc2hana04: Success
    dc1hana02: Success
    dc1hana01: Success
    dc2hana01: Success
    dc2hana02: Success
  8. 使用以下命令在每个节点上启用服务:

    [root@dc1hana01]# pcs cluster enable --all
    dc1hana01: Cluster Enabled
    dc1hana02: Cluster Enabled
    dc1hana03: Cluster Enabled
    dc1hana04: Cluster Enabled
    dc2hana01: Cluster Enabled
    dc2hana02: Cluster Enabled
    dc2hana03: Cluster Enabled
    dc2hana04: Cluster Enabled
    majoritymaker: Cluster Enabled

    完成所有步骤会导致配置的集群和节点。配置资源代理的第一步是使用 STONITH 配置隔离方法,这会重启不再可访问的节点。支持的环境需要这个 STONITH 配置。

  9. 使用适合您的硬件或虚拟化环境的隔离代理来为环境配置 STONITH。以下是为 STONITH 配置隔离设备的通用示例:

    [root@dc1hana01]# pcs stonith create <stonith id> <fence_agent> ipaddr=<fence device> login=<login> passwd=<passwd>
    注意

    每个设备的配置都是不同的,配置 STONITH 是这个环境的要求。如果您需要帮助,请联系红帽支持团队以获得直接帮助。如需更多信息,请参阅 RHEL 高可用性集群的支持政策 - 隔离/STONITH 和隔离配置的一般要求https://access.redhat.com/documentation/zh-cn/red_hat_enterprise_linux/7/html/high_availability_add-on_administration/s1-fenceconfig-haaa

    配置后,集群状态应当类似于以下输出。这是 Red Hat Enterprise Virtualization 环境的隔离设备示例:

    [root@dc1hana01]# pcs status
    Cluster name: hanascaleoutsr
    Stack: corosync
    Current DC: dc2hana01 (version 1.1.18-11.el7_5.4-2b07d5c5a9) -
    partition with quorum
    Last updated: Tue Mar 26 13:03:01 2019
    Last change: Tue Mar 26 13:02:54 2019 by root via cibadmin on
    dc1hana01
    9 nodes configured
    1 resource configured
    Online: [ dc1hana01 dc1hana02 dc1hana03 dc1hana04 dc2hana01 dc2hana02
    dc2hana03 dc2hana04 majoritymaker ]
    Full list of resources:
    fencing (stonith:fence_rhevm): Started dc1hana01
    Daemon Status:
    corosync: active/enabled
    pacemaker: active/enabled
    pcsd: active/enabled

3.3.1. 为 Scale-Out 系统安装 SAP HANA 资源代理

在配置资源代理时,每个系统中都会安装 resource-agent-sap-hana-scaleout 软件包,包括 大多数制造商

[root@dc1hana01]# yum install resource-agents-sap-hana-scaleout

验证是否附加了正确的存储库。yum repolist 应包含:

root# yum repolist
"rhel-x86_64-server-sap-hana-<version>” RHEL Server SAP HANA (v. <version> for 64-bit <architecture>).

如 SAP 实施 HA/DR 提供程序 中所述,最新版本的 SAP HANA 提供"hooks",允许 SAP HANA 为某些事件发送通知。srConnectionChanged () hook 可以用来提高集群在出现 SAP HANA System Replication 状态更改时检测到的能力,要求集群采取行动并避免数据丢失/数据损坏,防止意外接管在应避免的情况下触发。在使用 SAP HANA 2.0 SPS06 或更高版本以及 resource-agents-sap-hana-scaleout 软件包的版本时,您必须启用 hook,它提供支持 srConnectionChanged () hook 的组件。

流程

  1. 在共享设备上每个数据中心的一个节点中安装 hook。如需更多信息,请参阅 实施 HA/DR 提供程序
  2. 在 hana 共享文件夹中创建一个目录来配置 hook。这被配置为从 SAP HANA 数据库创建额外的数据。要启用它,您必须停止系统,并在 global.ini 文件中添加两个额外的配置参数。在此解决方案中,以下示例显示了 ha_dr_provider_SAPHanaSrtrace 的配置。

    [root@dc1hana01]# su - rh1adm
    [rh1adm@dc1hana01]% sapcontrol -nr 10 -function StopSystem *[rh1adm@dc1hana01]% cat <<EOF >> /hana/shared/RH1/global/hdb/custom/config/global.ini
    
    [ha_dr_provider_SAPHanaSR]
    provider = SAPHanaSR
    path = /usr/share/SAPHanaSR-ScaleOut
    execution_order = 1
    
    [trace]
    ha_dr_saphanasr = info
    EOF
  3. 在每个集群节点上,通过运行 sudo visudo /etc/sudoers.d/20-saphana 创建文件 /etc/sudoers.d/20-saphana,并添加以下内容,并在调用 srConnectionChanged () hook 时允许 hook 脚本更新节点属性:

    rh1adm ALL=(ALL) NOPASSWD: /usr/sbin/crm_attribute -n hana_rh1_glob_srHook -v * -t crm_config -s SAPHanaSR
    
    rh1adm ALL=(ALL) NOPASSWD: /usr/sbin/crm_attribute -n hana_rh1_gsh -v * -l reboot -t crm_config -s SAPHanaSR Defaults:rh1adm !requiretty

    有关为什么需要默认设置的更多信息,请参阅在 管理 SAP HANA 系统复制的 Pacemaker 集群中将 srHook 属性设置为 SFAIL,即使复制处于健康状态

  4. 在成功集成后启动 SAP HANA 数据库。

    # Execute the following commands on one HANA node in every datacenter
    [root]# su - rh1adm
    [rh1adm]% sapcontrol -nr 10 -function StartSystem
  5. 验证 hook 脚本是否按预期工作。执行操作,以触发 hook,如停止 HANA 实例。然后,使用以下方法检查 hook 是否记录任何内容:

    [rh1adm@dc1hana01]% cdtrace
    [rh1adm@dc1hana01]% awk '/ha_dr_SAPHanaSR.*crm_attribute/ \
    { printf "%s %s %s %s\n",$2,$3,$5,$16 }' nameserver_* 2018-05-04
    12:34:04.476445 ha_dr_SAPHanaSR SFAIL
    2018-05-04 12:53:06.316973 ha_dr_SAPHanaSR SOK

    有关如何验证 SAP HANA hook 是否正常工作的更多信息,请参阅使用 M_HA_DR_PROVIDERS 监控

3.3.3. 配置 Pacemaker 资源

您必须创建两个资源代理: SAPHanaTopologySAPHanaController,它们控制 HANA 和 Pacemaker 环境,以用于 Pacemaker 配置过程。另外,您需要在 Pacemaker 中配置虚拟 IP 地址,以实现最终用户和 SAP 应用服务器的连接。根据执行的操作,添加了两个依赖项,以确保以正确顺序执行资源代理,并且虚拟 IP 地址映射到正确的主机。

先决条件

  • 您已设置了集群 维护模式,以避免在配置过程中造成不必要的影响:

    [root@dc1hana01]# pcs property set maintenance-mode=true

3.3.3.1. 配置 SAPHanaTopology 资源

  1. SAPHanaTopology 资源代理会收集每个节点上 SAP HANA System Replication 的状态和配置。此外,它启动并监控本地 SAP HostAgent,这是启动、停止和监控 SAP HANA 实例所必需的。资源代理具有以下属性,它依赖于已安装的 SAP HANA 环境:

    Expand

    属性名称

    必需?

    默认值

    描述

    SID

    null

    SAP HANA 安装的 SAP System Identifier (SID) (所有节点必须相同)。示例:RH2

    InstanceNumber

    null

    SAP HANA 安装的实例号(所有节点必须相同)。示例: 02

    在这个解决方案中,SID 设置为 RH1,实例号设为 10。

    注意

    建议第一次部署 timeout 和 monitor 参数,在测试环境时可以更改它们。有几个依赖项,如环境中的大小和节点数。

  2. 以 root 用户身份在整个集群中的一个主机上为 RHEL 8.x 执行以下命令:

    [root@dc1hana01]# pcs resource create rsc_SAPHanaTopology_RH1_HDB10 SAPHanaTopology SID=RH1 InstanceNumber=10 op methods interval=0s timeout=5 op monitor interval=10 timeout=600 clone clone-max=6 clone-node-max=1 interleave=true --disabled

    在 Pacemaker 中创建资源时,会克隆它。

    注意

    clone-node-max 参数定义在单个节点上可以启动资源代理的副本数。interleave 表示如果此克隆依赖于另一个使用排序约束的克隆,则允许在其他克隆的本地实例启动后启动,而不是等待其他克隆的所有实例启动。clone-max 参数定义可以启动多少个克隆;例如,每个站点的最小配置 2 个节点,您应该为 SAPHanaControllerSAPHanaTopology 使用 clone-max=4。每个站点有 3 个节点(不计算待机节点),您应该使用 6。

  3. 资源启动后,可以查看以节点属性形式存储的信息:

    root# pcs status --full

3.3.3.2. 配置 SAPHanaController 资源

SAPHanaTopology 资源代理的配置过程完成后,可以配置 SAPHanaController 资源代理。虽然 SAP Hana Topology 资源代理只收集数据,但 SAPHanaTopology 资源代理根据之前收集的数据来控制 SAP 环境。如下表所示,五个重要的配置参数定义了集群功能:

Expand

属性名称

必需?

默认值

描述

SID

null

SAP HANA 安装的 SAP System Identifier (SID) (所有节点必须相同)。示例:RH2

InstanceNumber

null

SAP HANA 安装的实例号(所有节点必须相同)。示例: 02

PREFER_SITE_TAKEOVER

null

资源代理是否更喜欢切换到二级实例,而不是在本地重启主实例?true: prefer to the secondary site; false: prefer restart local; never: on no circumstances 启动到其他节点。

AUTOMATED_REGISTER

false

如果发生接管事件,并且 DUPLICATE_PRIMARY_TIMEOUT 应作为次要注册了以前的主实例?("false": no,需要手动干预;"true": yes,前者主将由资源代理注册) [1]。

DUPLICATE_PRIMARY_TIMEOUT

7200

如果出现双主要情况,在两个主要时间戳之间需要的时间差(以秒为单位)。如果时间差异小于时间差距,集群会将一个或多个实例保存在"WAITING"状态。这是为了让系统管理员有机会响应接管。在传递时间差异后,如果 AUTOMATED_REGISTER 设为 true,则前一个主主将注册为二级。注册新主后,前一个主中的所有数据都会被系统复制覆盖。

[1] - 作为测试和概念验证(PoC)环境的最佳实践,建议您将 AUTOMATED_REGISTER 保留为默认值(AUTOMATED_REGISTER="false"),以防止失败的主实例自动注册为二级实例。测试后,如果故障转移场景按预期工作,特别是在生产环境中,建议您设置 AUTOMATED_REGISTER="true",以便系统复制会及时恢复,避免中断。当主节点上出现故障时 AUTOMATED_REGISTER="false" 时,您必须手动将其注册为次要 HANA 系统复制节点。

以下命令是如何创建 SAPHanaController promotable 资源的 RHEL 8.x 示例。该示例基于参数: SID RH1InstanceNumber 10Prefer Site TakeoverAutomated_REGISTER 的值,以及 Duplicate Primary Timeout of 7200

[root@dc1hana01]# pcs resource create rsc_SAPHana_RH1_HDB10 SAPHanaController SID=RH1 InstanceNumber=10 PREFER_SITE_TAKEOVER=true DUPLICATE_PRIMARY_TIMEOUT=7200 AUTOMATED_REGISTER=true op demote interval=0s timeout=320 op methods interval=0s timeout=5 op monitor interval=59 role="Promoted" timeout=700 op monitor interval=61 role="Unpromoted" timeout=700 op promote interval=0 timeout=3600 op start interval=0 timeout=3600 op stop interval=0 timeout=3600 promotable clone-max=6 promoted-node-max=1 interleave=true --disabled
注意

对于 clone-max,请使用命令中列出的 HDB_WORKERs 两倍:

/usr/sap/hostctrl/exe/sapcontrol -nr 10 -function GetSystemInstanceList

GetSystemInstanceList
OK
hostname, instanceNr, httpPort, httpsPort, startPriority, features, dispstatus
dc1hana01,10,51013,51014,0.3,HDB|HDB_WORKER,GREEN
dc1hana02,10,51013,51014,0.3,HDB|HDB_WORKER,GREEN
dc1hana03,10,51013,51014,0.3,HDB|HDB_WORKER,GREEN
dc1hana04,10,51013,51014,0.3,HDB|HDB_STANDBY, GREEN

在本解决方案中,在创建 SAPHanaController 后,该资源被定义为一个可升级的资源:(SIDRH1InstanceNumber10)。

如需更多信息,请参阅 多状态资源: Have Multiple Mode 的资源

3.3.3.3. 配置资源以管理虚拟 IP 地址

集群需要包括一个资源来管理虚拟 IP 地址,供客户端用于访问主 SAP HANA Scale-Out 站点的主名称服务器。

以下命令是如何使用虚拟 IP 10.0.0.250 创建 IPaddr2 资源的示例:

[root@dc1hana01]# pcs resource create rsc_ip_SAPHana_RH1_HDB10 ocf:heartbeat:IPaddr2 ip=10.0.0.250 op monitor interval="10s" timeout="20s"

3.3.4. 创建限制

要进行正确的操作,请验证 SAPHanaTopology 资源是否在 SAPHanaController 资源启动之前启动,并且运行 SAPHanaController 的提升资源的节点上存在虚拟 IP 地址。使用这个流程创建四个必要的限制。

步骤: 在 SAPHana之前启动 SAPHanaTopology

以下命令是如何创建约束以强制资源启动顺序的约束。

  1. 创建约束:

    [root@dc1hana01]# pcs constraint order start rsc_SAPHanaTopology_RH1_HDB10-clone then start rsc_SAPHana_RH1_HDB10-clone
  2. IPaddr2 资源与提升的 SAPHana 资源共存:

    [root@dc1hana01]# pcs constraint colocation add rsc_ip_SAPHana_RH1_HDB10 with promoted rsc_SAPHana_RH1_HDB10-clone
  3. 避免 大多数制造商 在集群环境中使用活跃角色:

    [root@dc1hana01]# pcs constraint location add topology-avoids-majoritymaker rsc_SAPHanaTopology_RH1_HDB10-clone majoritymaker -INFINITY resource-discovery=never
    
    [root@dc1hana01]# pcs constraint location add hana-avoids-majoritymaker rsc_SAPHana_RH1_HDB10-clone majoritymaker -INFINITY resource-discovery=never
  4. 禁用 maintenance-mode

    在将 maintenance-mode 设置为 false 后,使用 maintenance-mode 启动资源。为避免在所有配置完成前 pacemaker 活动,我们在上述示例中使用了以上示例。默认情况下,资源会在创建后马上启动。with-disabled,您可以使用以下命令启动资源:

    [root@dc1hana01]# pcs resource enable <resource-name>

    要保留 Maintenance-mode,请使用:

    [root@dc1hana01]# pcs property set maintenance-mode=false
  5. 运行以下 3 命令以验证集群环境是否正常工作:

    • pcs status 提供每个资源的概览,以及它们是否正常运行。
    • pcs status --full 提供所有资源和集群环境的额外属性信息的概述。
    • SAPHanaSR-showAttr --sid=RH1 提供了基于属性信息的可读概述。

      停用 maintenance-mode 后,会显示正确的状态。

      [root@dc1hana01]# pcs status
      Cluster name: hanascaleoutsr Stack: corosync
      Current DC: dc2hana01 (version 1.1.18-11.el7_5.4-2b07d5c5a9) - partition with quorum
      Last updated: Tue Mar 26 14:26:38 2019
      Last change: Tue Mar 26 14:25:47 2019 by root via crm_attribute on dc1hana01
      9 nodes configured
      20 resources configured
      Online: [ dc1hana01 dc1hana02 dc1hana03 dc1hana04 dc2hana01 dc2hana02 dc2hana03 dc2hana04 majoritymaker ]
      Full list of resources:
      
      fencing (stonith:fence_rhevm): Started dc1hana01
      Clone Set: rsc_SAPHanaTopology_RH1_HDB10-clone
      [rsc_SAPHanaTopology_RH1_HDB10]
      Started: [ dc1hana01 dc1hana02 dc1hana03 dc1hana04 dc2hana01 dc2hana02 dc2hana03 dc2hana04 ]
      Stopped: [ majoritymaker ] Clone Set: msl_rsc_SAPHana_RH1_HDB10 [rsc_SAPHana_RH1_HDB10] (promotable):
      Promoted: [ dc1hana01 ]
      Unpromoted: [ dc1hana02 dc1hana03 dc1hana04 dc2hana01 dc2hana02 dc2hana03 dc2hana04 ]
      Stopped: [ majoritymaker ]
      rsc_ip_SAPHana_RH1_HDB10	(ocf::heartbeat:IPaddr2): Started dc1hana01
      Daemon Status:
        corosync: active/enabled
        pacemaker: active/enabled
        pcsd: active/enabled
      
      
      [root@dc1hana01]# SAPHanaSR-showAttr --sid=RH1
      Global prim srHook sync_state
      ------------------------------
      global DC1 SOK SOK
      Sit lpt lss mns srr
      ---------------------------------
      DC1 1553607125 4 dc1hana01 P
      DC2 30 4 dc2hana01 S
      
      H clone_state roles score site
      --------------------------------------------------------
      1 PROMOTED promoted1 promoted:worker promoted 150 DC1
      2 DEMOTED promoted2:slave:worker:slave 110 DC1
      3 DEMOTED slave:slave:worker:slave -10000 DC1
      4 DEMOTED promoted3:slave:standby:standby 115 DC1
      5 DEMOTED promoted2 promoted:worker promoted 100 DC2
      6 DEMOTED promoted3:slave:worker:slave 80 DC2
      7 DEMOTED slave:slave:worker:slave -12200 DC2
      8 DEMOTED promoted1:slave:standby:standby 80 DC2
      9 :shtdown:shtdown:shtdown
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部