SAP HANA数据库HA双机架构概念及运维

2022-03-09 00:00:00 数据库 节点 服务器 切换 双机

本文主要参考《华为HANA一体机安装指南》,硬件相关功能也与华为HANA一体机紧密相连。
一、关于Scale UP 向上扩展、 HANA Replication复制的架构
The first set of scenarios include the architecture and development of scale-up solutions. For this
scenarios SUSE developed the scale-up resource agent package SAPHanaSR .
System replication will help to replicate the database data from one computer to another computer in order to compensate for database failures (single-box replication).
scale-up 架构是主流的(对于scale-out, scale-up是硬件在单一主机上向上扩容),为这个架构,suse 开发了专门的工具包 SAPHanaSR,对应于HANA数据库系统的Replication复制模式。(在线的把一台数据库的日志数据复制到另一台中,来避免单点故障) 

 
二、华为提供的HANA双机HA终解决方案
1、HANA双机是完全独立的2台硬件服务器,并没有固定主库一定要在某一台上。
2、借助SUSE的HAWK集群软件,实现2台服务器中数据库实例的切换。
3、HA标准安装有以下资源包,stonith资源包中同硬件绑定紧密,需要设置。
关于stonith(shoot the other node in the head),为防止心跳全部断裂,2台服务器都启动主库的脑裂情况发生,需要彻底重启或关掉一台服务器的电源,所以stonith资源包是从硬件管理口彻底关闭对端服务器的电源。
 
rsc_hana01_stonith:   从BMC检查并修复node1
rsc_hana02_stonith:   从BMC检查并修复node2
rsc_ip_S00_HDB00:    监控及切换VIP
msl_SAPHana_S00_HDB00:   切换HANA数据库
cln_SAPHanaTopology_S00:  数据库资源检查
 
 
三、HANA双机运维场景:
1、备节点异常后,如何恢复:
HA集群的服务器,如果备节点服务器异常重启,不会影响主节点数据库状态;备节点服务器重启之后,集群检测到备节点在重启之前已经注册到主节点,集群会自动把备节点数据库启动,无须人工启动数据库。
 
2、主节点故障后,HA的正确的切换流程是:
1、主节点数据库关闭或服务器重启->
2、备节点自动takeover->
3、OS层HA软件获取数据库主备状态变化->
4、OS层HA软件Master&Slave资源发生切换->
5、VIP漂移到切换后的节点。
 
3、发生主备切换后,如何恢复:
注意:
HA集群备节点node2数据库takeover接管之后,备节点node2会变为primary模式,主节点node1依然保持为primary模式。在主节点node1故障排除后,如果将原主节点作为备节点加入到HA集群,需要在切换前的主节点执行注册命令,注册到发生切换后的主节点。对于HANA数据库,本机作为备机注册到主节点后,本机的原数据会丢失,将会同步主节点的数据。所以在执行注册之前需确保当前主节点的数据是完整的。
操作:
步骤1 root用户登录到切换前的原主节点服务器node1。
步骤2 在node1执行su - <sid>adm切换到数据库账户。
步骤3 停止node1数据库,或确保当前HDB数据库停止。
步骤4 在node1执行注册命令,注册到node2。
步骤5 清理资源failcount ,SLES和RHEL系统清理资源failcount方法不一样。

● 对于SLES OS,
登录Hawk界面,在SAPHana资源“openrations”中选择 “cleanup”清理该资源的故障计数。
华为 SAP HANA 一体机及HA 维护指南5 SAP HANA 双机HA 常见维护操作

● 对于RHEL OS,执行“pcs resource cleanup rsc_SAPHana_S00_HDB00”,其中S00是本例SID,请用实际SID代替。
步骤6 注册完成之后,HAE资源会检测备节点已经注册成功,HAE资源自动把备节点数据库启动。
  
四、记我的次HANA主备切换操作(2020.5.14) :
 
1、查看状态

使用HA脚本查看数据复制状态,确保备节点“sync_state”是“SOK”,同时主备节点score都是正数:
SAPHanaSR-showAttr,2号机主库,1号机备库同步OK。

使用HANA数据库脚本查看数据复制状态,确保所有HANA进程Replication Status都是“ACTIVE”:
# su - <sid>adm
> cdpy
> python systemReplicationStatus.py

 
2、模拟故障,主库切换

在2号机主库上停掉数据库, HDB stop

命令执行后,主库跑到1号机上。
 
3、恢复备库,清除警告

在需要救活的2号机上,执行注册命令,把备库注册到主库中。命令中个主机名是对端,第二个主机名是自己。
hdbnsutil -sr_register --remoteHost=hanaprd01 --remoteInstance=00 --replicationMode=sync --name=hanaprd01 --operationMode=logreplay
在suse Hawk管理软件中去做一下警告清理:

4、后主备正常,因为发生了切换,但所在主机同之前不同。
HANA双机是完全独立的2台硬件服务器,并没有固定主库一定要在某一台上。

来源 https://mp.weixin.qq.com/s/Dgm8laqG-TBXRXRdIopjHA

相关文章