5.6. 测试 4:将主节点故障转移到第一个站点


Expand

测试的主题

主切换回一个集群节点。

故障恢复并再次启用集群。

将第三个站点重新注册为次要站点。

测试先决条件

  • SAP HANA 主节点在第三个站点上运行。
  • 集群部分正在运行。
  • 集群被置于 maintenance_mode 中。
  • 前一个集群主是可以检测到的。

测试步骤

检查集群的预期主要信息。

从 DC3 节点故障转移到 DC1 节点。

检查前期次要是否已切换到新主设备。

重新注册 node3 作为新次要。

设置 cluster maintenance_mode=false,集群将继续工作。

启动测试

检查集群的预期主要内容:!pcs resource.

VIP 和提升 SAP HANA 资源应该在同一节点上运行,而这是潜在的新主要资源。

在这个潜在的主要主机上运行为 sidadm:% hdbnsutil -sr_takeover

重新将前一个主重新注册为新次要:

% hdbnsutil -sr_register --remoteHost=node1 \ --remoteInstance=${TINSTANCE} \ --replicationMode=syncmem --name=DC3 \ --remoteName=DC1 --operationMode=logreplay \ --force_full_replica --online

在设置 maintenance_mode=false 后集群将继续工作。

监控测试

在新的主启动时:

% watch python systemReplicationStatus
# watch pcs status --full

预期结果

新主要是启动 SAP HANA。

复制状态将显示所有 3 个站点复制。

第二个集群站点会自动重新注册到新主站点。

DR 站点成为数据库的额外副本。

返回初始状态的方法

运行测试 3。

以下是您在此测试过程中遵循的步骤:

  • 检查集群是否 处于维护模式

    pcs property config maintenance-mode
    Cluster Properties:
     maintenance-mode: true
  • 发现在 将集群设置为维护模式 之前使用的主要数据库:

    % pcs resource
      * Clone Set: SAPHanaTopology_RH2_02-clone [SAPHanaTopology_RH2_02] (unmanaged):
        * SAPHanaTopology_RH2_02	(ocf:heartbeat:SAPHanaTopology):	 Started node1 (unmanaged)
        * SAPHanaTopology_RH2_02	(ocf:heartbeat:SAPHanaTopology):	 Started node2 (unmanaged)
      * Clone Set: SAPHana_RH2_02-clone [SAPHana_RH2_02] (promotable, unmanaged):
        * SAPHana_RH2_02	(ocf:heartbeat:SAPHana):	 Promoted node1 (unmanaged)
        * SAPHana_RH2_02	(ocf:heartbeat:SAPHana):	 Unpromoted node2 (unmanaged)
      * vip_RH2_02_MASTER	(ocf:heartbeat:IPaddr2):	 Started node1 (unmanaged)
  • 提升的节点或运行 master VIP 的节点,是运行主数据库的节点。在旧主节点上打印系统复制状态:

    node3% hdbnsutil -sr_state
    
    System Replication State
    ~~~~~~~~~~~~~~~~~~~~~~~~
    
    online: true
    
    mode: primary
    operation mode: primary
    site id: 3
    site name: DC3
    
    is source system: true
    is secondary/consumer system: false
    has secondaries/consumers attached: true
    is a takeover active: false
    is primary suspended: false
    
    Host Mappings:
    ~~~~~~~~~~~~~~
    
    node3 -> [DC3] node3
    node3 -> [DC1] node1
    node3 -> [DC2] node2
    
    
    Site Mappings:
    ~~~~~~~~~~~~~~
    DC3 (primary/primary)
        |---DC1 (syncmem/logreplay)
        |---DC2 (syncmem/logreplay)
    
    Tier of DC3: 1
    Tier of DC1: 2
    Tier of DC2: 2
    
    Replication mode of DC3: primary
    Replication mode of DC1: syncmem
    Replication mode of DC2: syncmem
    
    Operation mode of DC3: primary
    Operation mode of DC1: logreplay
    Operation mode of DC2: logreplay
    
    Mapping: DC3 -> DC1
    Mapping: DC3 -> DC2
    done.
  • 在两个单独的窗口中启动监控,以监控故障恢复的进度。
  • 此监控器应在 node3 上启动,并在将成为集群上的新主节点的节点上启动。Example:

    note 3% watch -n 5 "python /usr/sap/${SAPSYSTEMNAME}/HDB{TINSTACE}/exe/python_support/systemReplicationStatus.py;echo \$?"
  • 在 node1 上运行相同的命令:

    node1% watch -n 5 "python /usr/sap/${SAPSYSTEMNAME}/HDB{TINSTACE}/exe/python_support/systemReplicationStatus.py;echo \$?"
  • 复制信息将从 node3 切换到 node1。现在,您可以故障转移到集群节点。例如,节点 1:

    node1% hdbnsutil -sr_takeover --suspendPrimary
  • 等待 node2 重新注册到 node1。重新注册 node3 作为辅助:

    hdbnsutil -sr_register --remoteHost=node1 --remoteInstance=${TINSTANCE} --replicationMode=syncmem --name=DC3 --remoteName=DC1 --operationMode=logreplay --force_full_replica --online
    adding site ...
    collecting information ...
    updating local ini files ...
    done.
  • 检查新主 node1 上的系统复制状态:

    node1% hdbnsutil -sr_state
    node1% python
    /usr/sap/$SAPSYSTEMNAME/HDB${TINSTANCE}/exe/python_support/systemReplicationStatus.py;echo $?
  • 详情请参阅 #heading=h.glt7zorayg43[Check SAP HANA System Replication status]。您可以再次检查配置的主是否与集群配置的主值相同:

    node1# pcs resource | grep Promoted
    node1% hdbnsutil -sr_state
  • 再次激活集群:

    node1# pcs property set maintenance-mode=false
  • 请参阅 检查集群状态和 Check 数据库,以验证所有是否再次工作。
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2026 Red Hat
返回顶部