5.3. 测试带有活跃第三个站点的主站点的 1:Failover
| 测试的主题 | 自动重新注册第三个站点。 清除后,同步状态会更改为 SOK。 |
| 测试前提条件 |
|
| 测试步骤 |
使用 |
| 监控测试 |
在第三个站点上,以
在辅助节点上运行,以 root 身份运行 |
| 启动测试 | 执行集群命令:
|
| 预期结果 |
这应该显示输出的更改:primary masters=az1n1 to primary masters=az2n1 |
| 返回初始状态的方法 | 运行测试两次。 |
(*)
az3n1:rh2adm>
watch hdbnsutil -sr_state
[root@az1n1]# tail -1000f /var/log/messages |egrep -e ‘SOK|SWAIT|SFAIL’
详细描述
以 root 用户身份在 az1n1 或 az2n1 上检查集群的初始状态:
[root@az1n1]# pcs status --full此命令显示示例
- 集群名称
- 带有 DC=Designated Controller 的集群概述
- 节点列表
- 资源的完整列表
- 节点属性
- PCSD 状态
- 守护进程状态
Node Attributes 正在显示提升的克隆状态,Node List 则显示节点是否是停止的。
+ 此输出显示,HANA 在 az1n1 上提升,它是主 SAP HANA 服务器,克隆资源的名称是 SAPHana_RH2_02-clone,后者是可升级的。
+ 您可以在测试期间在一个单独的窗口中运行它,以查看更改。
+
[root@az1n1]# watch pcs status --full
另一种标识 SAP HANA 克隆资源的另一种方法是:
[root@az2n1]# pcs resource * rsc_ip_MASTER1 (ocf:heartbeat:IPaddr2): Started az1n1 * Clone Set: rsc_SAPHanaTopology_RH1_10-clone [rsc_SAPHanaTopology_RH1_10]: * Started: [ az1n1 az1n2 az2n1 az2n2 ] * Clone Set: rsc_SAPHanaFilesystem_RH1_10-clone [rsc_SAPHanaController_RH1_10] (promotable): * Promoted: [ az1n1 ] * Unpromoted: [ az1n2 az2n1 az2n2 ]要在启动测试前,查看主服务器在一个单独的终端窗口中启动监控 az3n1 的更改。
az3n1:rh2adm> watch 'hdbnsutil -sr_state | grep "primary masters"输出类似如下:
Every 2.0s: hdbnsutil -sr_state | grep "primary masters" az3n1: Mon Sep 4 08:47:21 2023 primary masters: az1n1在测试期间,预期的输出会变为 az2n1。
将上面发现的克隆资源移到 az2n1 中,以启动测试:
[root@az1n1]# pcs resource move SAPhana_RH2_02-clone az2n1az3n1 上的监控器输出更改:
Every 2.0s: hdbnsutil -sr_state | grep "primary masters" primary masters: az2n1Pacemaker 为移动克隆资源创建一个位置约束。这需要手动删除。您可以使用以下方法查看约束:
[root@az1n1]# pcs constraint location执行以下步骤来删除此约束。
清除克隆资源以删除位置约束:
[root@az1n1]# pcs resource clear SAPhana_RH2_02-clone Removing constraint: cli-prefer-SAPHana_RH2_02-clone清理资源:
[root@az1n1]# pcs resource cleanup SAPHana_RH2_02-clone Cleaned up SAPHana_RH2_02:0 on az2n1 Cleaned up SAPHana_RH2_02:1 on az1n1 Waiting for 1 reply from the controller ... got reply (done)
测试的结果
- az3n1 上的"主 master"监控器应显示立即切换到新的主节点。
-
如果您检查集群状态,前一次要会被提升,前一个主会被重新注册,而
Clone_State从Promoted改为UndefinedtoWAITINGFORLPAtoDEMOTED。 -
当故障转移后第一次启动
SAPHanamonitor 时,二级会将sync_state更改为SFAIL。由于现有位置限制,需要清除资源并在短时间后清除,二级sync_state会再次更改为SOK。 - secondary 会被提升。
要恢复初始状态,您只需运行下一个测试即可。完成测试后,运行 Cleaning 集群。