5.5. 测试 3:将主节点故障切换到第三个站点


Expand

测试的主题

第三个站点成为主要站点。

辅助将重新注册到第三个站点。

测试先决条件

  • DC1、DC2、DC3 上的 SAP HANA 正在运行
  • 集群启动并运行,且没有错误或警告
  • 系统复制已就位,并保持同步(检查 % python systemReplicationStatus.py

测试步骤

将集群置于维护模式,以便能够恢复。

使用 % hdbnsuttil -sr_takeover组成第三个节点

启动测试

执行 SAP HANA 命令: node3% hdbnsutil -sr_takeover

监控测试

在第三个站点中,作为 sidadm% watch hdbnsutil -sr_state运行

预期结果

  • 第三个节点将变为主要节点
  • 辅助节点将主 master 更改为 node3。以前的主节点需要重新注册到新主节点。

返回初始状态的方法

运行 Test 4:将主节点故障转移到第一个站点

在 Test 3 后执行 Test 4 以重复测试。要执行测试,请执行以下步骤:
首先:

  • 使用 Check 数据库 检查数据库 是否正在运行。
  • 在 DC1、DC2 和 DC3 上检查 global.ini

    [persistent]
    log_mode=normal
    Copy to Clipboard Toggle word wrap
    [system_replication]
    register_secondaries_on_takeover=true
    Copy to Clipboard Toggle word wrap
  • 将集群设置为 maintenance-mode

    # pcs property set maintenance_mode=true
    Copy to Clipboard Toggle word wrap
  • 检查配置的资源的状态,并验证它们是否已更改为非受管状态:

    # pcs resource
    Copy to Clipboard Toggle word wrap
    # pcs property  set 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)
    Copy to Clipboard Toggle word wrap
  • 要监控故障转移,请在开始故障转移前打开一个单独的窗口并在新主节点上运行:

    % watch -n 5 " python /usr/sap/${SAPSYSTEMNAME}/HDB${TINSTANCE}/exe/python_support/systemReplicationStatus.py; echo \$?"
    Copy to Clipboard Toggle word wrap
  • 故障转移是通过这个命令发起的:

    [rh2adm@node3: HDB02]% hdbnsutil -sr_takeover
    Copy to Clipboard Toggle word wrap
  • 这会将数据库移到一个新的主要状态,这是执行 sr_takeover 的节点。要在这个用例中执行以前的测试,需要重新注册前主。
  • 上面启动的监控器应继续,以便按照前者主注册操作。要执行重新注册,请运行以下命令:
  • node1 示例是以前的主要情况:

    % hdbnsutil -sr_register --remoteHost=node3 --remoteInstance=${TINSTANCE} --replicationMode=syncmem --name=DC1 --remoteName=DC3 --operationMode=delta_datashipping --online --force_full_replica
    Copy to Clipboard Toggle word wrap
  • 注册完成后,您将看到所有三个站点都复制,状态(返回代码)将变为 15。
  • 输出示例:

    Every 5.0s: python systemReplicationStatus.py                                                                                                                                      hana08: Fri Jul 28 10:29:19 2023
    
    |Database |Host   |Port  |Service Name |Volume ID |Site ID |Site Name |Secondary |Secondary |Secondary |Secondary |Secondary     |Replication |Replication |Replication    |
    |         |       |      |             |          |        |          |Host      |Port      |Site ID   |Site Name |Active Status |Mode        |Status      |Status Details |
    |-------- |------ |----- |------------ |--------- |------- |--------- |--------- |--------- |--------- |--------- |------------- |----------- |----------- |-------------- |
    |SYSTEMDB |hana08 |30201 |nameserver   |        1 |      1 |DC2       |hana09    |    30201 |        3 |DC3       |YES           |SYNCMEM     |ACTIVE      |               |
    |RH2      |hana08 |30207 |xsengine     |        2 |      1 |DC2       |hana09    |    30207 |        3 |DC3       |YES           |SYNCMEM     |ACTIVE      |               |
    |RH2      |hana08 |30203 |indexserver  |        3 |      1 |DC2       |hana09    |    30203 |        3 |DC3       |YES           |SYNCMEM     |ACTIVE      |               |
    |SYSTEMDB |hana08 |30201 |nameserver   |        1 |      1 |DC2       |hana07    |    30201 |        2 |DC1       |YES           |SYNCMEM     |ACTIVE      |               |
    |RH2      |hana08 |30207 |xsengine     |        2 |      1 |DC2       |hana07    |    30207 |        2 |DC1       |YES           |SYNCMEM     |ACTIVE      |               |
    |RH2      |hana08 |30203 |indexserver  |        3 |      1 |DC2       |hana07    |    30203 |        2 |DC1       |YES           |SYNCMEM     |ACTIVE      |               |
    
    status system replication site "3": ACTIVE
    status system replication site "2": ACTIVE
    overall system replication status: ACTIVE
    
    Local System Replication State
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    mode: PRIMARY
    site id: 1
    site name: DC2
    Copy to Clipboard Toggle word wrap
  • 我们假定测试 4 将在测试 3 后执行。因此,恢复步骤是运行测试 4。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat