由于华为云“敏捷性高、扩展灵活、便捷运维、高可靠、低成本”等优势,越来越多的企业将SAP系统部署在华为云上。SAP系统是企业的核心系统,对于数据的可靠性的重要性是无可厚非的,因软件、硬件和人为因素造成的服务器故障,导致客户业务中断,数据丢失,将使企业损失巨大。
如何能减少服务中断时间,对业务的影响降低到最小程度呢?本次小编通过部署高可用,助您轻松解决云上单点故障问题。
什么是高可用,为什么需要高可用?
高可用(High Availability,简称HA)指通过可靠设计以消除单点故障,实现系统运行的连续性。
SAP系统的架构大致分三层,分别为应用服务器层、消息服务器层和数据库层。SAP的最佳实践推荐分布式部署,安装在不同的服务器上实现高可用的目的。
- SAP应用高可用
ACTIVE–ACTIVE模式,任何一台应用服务器崩溃,另外一台还能继续使用,不影响业务。SAP应用服务器通常通过集群来实现,除了高可用的作用,还起到负载均衡的作用。
- SAP消息服务器层高可用
ACTIVE-STANDBY模式,消息服务器负责把用户请求分发到应用服务器上,需要有操作系统的高可用软件来支持共享资源的切换。
数据库高可用
ACTIVE-STANDBY模式,当主数据库崩溃,上层应用会自动连到备机上,业务不影响。
中小型客户,通常会选择其中的两台应用服务器,同时部署消息服务器组件,我们推荐所有的SAP客户的生产系统都部署高可用的架构。
云端高可用有哪些优势?
许多企业已经在公有云上部署了SAP HANA系统来运行它们的业务,为了保障SAP业务的连续性,SAP解决方案所提供的高可用(HA)方案是这些企业选择云上部署的重要因素。除了SAP软件本身提供的高可用机制外,公有云自身的高可用与容灾方案进一步加强了包括SAP在内的许多应用程序的高可用性,云端高可用跟传统高可用相比,有如下的优势:
- 敏捷性:在云端部署高可用系统,通过成熟的解决方案,能够快速有效的部署系统。但是使用传统的服务器,还需要采购硬件,完成硬件规划,委托可靠性工程师及应用工程师配合搭建高可用系统。
- 灵活扩展:通过云端的高可用系统,可以根据系统的压力及实施的系统访问情况,进行动态地扩展,以满足系统性能的需求。而传统的高可用系统架构已经固定,不容易实现动态地扩展。
- 运维:云端高可用系统不需要租户自己维护,在云端由服务提供商维护。传统的高可用需要建立本地的运维团队。
- 可靠性:云端高可用可以根据租户的需求,部署在不同的地区,以实现跨区域的高可用性,满足系统的安全。
- 成本:云端高可用相比于传统高可用,省去较多硬件的成本,节约很大的支出。
接下来,我们就开始实战之旅吧。我们以部署SAP HANA(单节点HA)为例:
步骤1:方案规划
单节点同AZ部署HA方案,具体如下图所示:
步骤2:资源准备
资源准备包括HANA软件包、SAP HANA Studio软件包、及其一些常用工具,例如:WinSCP、PuTTY、PuTTYgen,或者同类软件。
温馨小提示:
SAP HANA安装包需要登录SAP官网下载,注意查阅好HANA软件版本与SUSE操作系统对应关系,下载合适版本的SAP HANA。
步骤3:资源发放
- 登录华为云控制台,购买VPC,并设置子网和安全组。
2. 购买文件系统SFS服务,根据规划要求选择SFS或SFS Turbo。
3. 创建密钥对和云服务器组,创建完云服务器组后,在创建云服务器时可以指定其到这个云服务器组中, HANA云服务器会创建在不同的物理主机上以保证其运行的可靠性。
温馨小提示:
SAP系统使用的所有的云服务器必须都使用这同一个密钥,所以下载之后一定要保存好。
4. 创建云服务器。
这里主要包括HANA云服务器、NAT Server和SAP HANA Studio Server。在创建云服务器填写参数时需要选择上面已经发放并准备好的对应资源,另外在创建云服务器时,可以一并把弹性IP和EVS数据盘同时发放并挂载到云服务器上。
步骤4:安装SAP HANA(单节点HA)
- 为了实现通过NAT Server可使用SSH协议跳转到SAP HANA节点的功能,以及SAP HANA节点和NAT Server互相通过SSH协议跳转的功能,需要配置SSH跳转权限。
- 安装程序使用主机名称来进行通信。因此需要配置SAP HANA节点主机名称与IP地址的映射关系。
- 为保证后续正常安装SAP HANA系统,关闭所有节点的操作系统防火墙。
- SAP HANA节点的数据磁盘需要进行格式化,并挂载到相应的目录后,才能被正常使用,执行格式化磁盘操作。SAP云服务器的磁盘格式化和目录挂载如下图所示:
5. 安装SAP HANA软件后,登录HANA数据库,验证SAP HANA软件版本号。
6. 安装SAP HANA Studio,并在SAP HANA Studio上接入SAP HANA,便于管理SAP HANA。
7. 在SAP HANA Studio上配置备份路径,备份HANA数据库。
8. 配置System Replication,保证主备节点能够实现数据复制功能。
配置主节点
a. 登录绑定了弹性IP的NAT Server,并通过SSH协议,跳转到待作为主节点的服务器。
b. 执行以下命令,将SAP HANA节点设置为主节点。
su - s00adm
hdbnsutil -sr_enable --name=hana001
配置备节点
c. 通过SSH跳转,登录另外一台SAP HANA节点,执行以下命令,停止SAP HANA数据库。
su - s00adm
HDB stop
d. 执行以下命令,打开System Replication功能并启动SAP HANA数据库。
hdbnsutil -sr_register --remoteHost=hana001 --remoteInstance=00 --replicationMode=sync --name=hana002
HDB start
e. 查看SAP HANA系统的System Replication状态。
在主节点的命令行界面,管理员模式下,执行以下命令:
hdbnsutil -sr_state
系统回显示例如下:
checking for active or inactive nameserver ...
System Replication State
~~~~~~~~~~~~~~~~~~~~~~~~
mode: primary site id: 1
site name: hana001
Host Mappings:
~~~~~~~~~~~~~
hana001 -> [hana001] hana001
hana001 -> [hana002] hana002
done.
在SAP HANA Studio上,查看主节点的状态信息。
9. 通过脚本配置SAP HANA节点的HA功能(即HAE功能),提高SAP HANA节点的可靠性。
将SBD卷绑定给另外一台SAP HANA节点
因为在创建其中一台SAP HANA节点时,绑定了SBD卷,因此需要将这个SBD卷,绑定给另外一台SAP HANA节点。
- 在管理控制台,根据云服务器名称,找到已绑定SBD卷的服务器,并单击云服务器的名称。
- 在弹出的详细信息列表中,在“云硬盘”页签上,找到SBD卷对应的磁盘,并单击数据盘。
- 在弹出的数据盘详细信息中,查看该数据盘的“挂载点”并记录,然后单击数据盘“ID”上的超链接。
- 在弹出的界面中,单击“挂载点”,单击“挂载”,弹出“挂载磁盘”界面。
- 在“挂载磁盘”界面上,选中要绑定到的另外一台云服务器,完成磁盘的绑定。
创建浮动IP
6. 在“弹性云服务器”管理界面,找到一台SAP HANA节点,并单击云服务器的名称,弹出云服务器的详细信息。
7. 单击“网卡”页签,在云服务器的业务/管理平面网卡后,单击“管理虚拟IP地址”,弹出“虚拟IP地址”界面。
8. 单击“申请虚拟IP地址”分配规划的浮动IP地址,在分配好的浮动IP栏单击“绑定服务器”,绑定给所需的云服务器,重复执行绑定操作给其他云服务器。
下载脚本、配置文件并配置高可用
9. 登录绑定了弹性IP的NAT Server,并通过SSH协议,跳转到待作为主节点的SAP HANA节点。
10. 下载脚本和配置文件。
wget https://obs-sap.obs.myhwclouds.com/ha_auto_script/ha_auto_script.zip -P /hana/shared
11. 解压配置文件。
cd /hana/shared
unzip ha_auto_script.zip
12. 修改配置文件。
vi /hana/shared/ha_auto_script/hana_ha.cfg
13. 配置文件参数请根据实际信息进行填写,示例及说明如下:
[masterNode]
# Host name of the active node
masterName=hana001
# Heartbeat IP address of the active node
masterHeartbeatIP1=10.0.4.2
masterHeartbeatIP2=
[slaveNode]
# Host name of the standby node
slaveName=hana002
# Heartbeat IP address of the standby node
slaveHeartbeatIP1=10.0.4.3
slaveHeartbeatIP2=
[trunkInfo]
# Floating IP address of SAP HANA
hanaBusinessIP=10.0.3.103
[hanaInfo]
# SBD volume path
SBDDevice=/dev/sdc,/dev/sdd,/dev/sde
# SAP HANA administrator account
hanaUser=s00adm
# SAP HANA instance number
InstanceNumber=00
14. 脚本配置可执行权限,并执行脚本。
cd ha_auto_script
chmod +x hana_auto_ha.sh
sh hana_auto_ha.sh
15. 配置成功后,返回报文如下所示:
16. 在SAP HANA Studio上重新接入SAP HANA。
17. 在SAP HANA Studio上,将已接入的两个SAP HANA节点删除,重新通过SAP HANA节点的浮动IP地址,将SAP HANA节点接入,并配置备份路径。
SAP HANA(单节点HA)搭建完成喽!!
详细操作指导,请戳☞此处。