5.6. 测试 4:将主节点故障转移到第一个站点
| 测试的主题 | 主切换回一个集群节点。 故障恢复并再次启用集群。 将第三个站点重新注册为次要站点。 |
| 测试先决条件 |
|
| 测试步骤 | 检查集群的预期主要信息。 从 DC3 节点故障转移到 DC1 节点。 检查前期次要是否已切换到新主设备。 重新注册 node3 作为新次要。
设置 cluster |
| 启动测试 |
检查集群的预期主要内容:! VIP 和提升 SAP HANA 资源应该在同一节点上运行,而这是潜在的新主要资源。
在这个潜在的主要主机上运行为 重新将前一个主重新注册为新次要:
在设置 |
| 监控测试 | 在新的主启动时:
|
| 预期结果 | 新主要是启动 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 数据库,以验证所有是否再次工作。