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

本文主要参考《华为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台硬件服务器,并没有固定主库一定要在某一台上。

最后切换完成的状态:

五、修改system用户的密码

如果知道system用户的密码,用hana studio连上去,用一条命令就可以改变密码:

ALTER USER SYSTEM PASSWORD     MYNEWPASSWORD

猜你喜欢

转载自blog.csdn.net/ot512csdn/article/details/106124249