【华为云技术分享】云小课 | SAP容灾一点通

时间:2024-03-09 21:36:19

许多企业已经在华为云上部署了SAP HANA系统来运行它们的业务,为了保障SAP业务的连续性,SAP解决方案所提供的高可用(HA)和灾难恢复(DR)方案是这些企业选择云上部署的重要因素。除了SAP软件本身提供的高可用机制外,华为云自身的高可用与容灾方案进一步加强了包括SAP在内的许多应用程序的高可用性,云端高可用跟传统高可用相比,有如下的优点:

  • 敏捷性:在云端部署高可用系统,通过成熟的解决方案,能够快速有效的部署系统。但是使用传统的服务器,还需要采购硬件,完成硬件规划,委托可靠性工程师及应用工程师配合搭建高可用系统。
  • 灵活扩展:通过云端的高可用系统,可以根据系统的压力及实施的系统访问情况,进行动态地扩展,以满足系统性能的需求。而传统的高可用系统架构已经固定,不容易实现动态地扩展。
  • 运维:云端高可用系统不需要租户自己维护,在云端由服务提供商维护。传统的高可用需要建立本地的运维团队。
  • 可靠性:云端高可用可以根据租户的需求,部署在不同的地区,以实现跨区域的高可用性,满足系统的安全。
  • 成本:云端高可用相比于传统高可用,省去较多硬件的成本,节约很大的支出。

要想知道SAP如何容灾,首先需要知道什么是高可用与容灾,下面先带大家再温习一下相关概念。

 

常用概念了解

  • 可用性(Availability

可用性是衡量系统运行连续性的量度,以时间百分比表示,与停机时间成反比。例如,如果一个给定的系统被设计为99.9%的时间,其每年的停机时间必须小于0.1%,或9小时。

  • 停机时间(Downtime

停机是中断的结果,可能是有意的(例如系统升级)、非计划故障造成的。故障可能是由于设备故障、软件或网络故障或由于火灾等重大灾害,区域停电或施工事故,可能造成整个数据中心停用。

  • 高可用(High Availability)

高可用性是一套业务技术、工程实践和设计原则。这是通过消除单点故障(容错)和提供能力来实现系统连续性。以最小的业务损失(故障恢复能力)在系统中断后迅速恢复操作。

  • 灾难恢复(Disaster Recovery)

灾难恢复是由于长期数据中心中断后或现场故障恢复操作的过程。灾难的准备工作可能需要更长距离的数据备份,因此可能是更复杂更昂贵。

  • 数据同步模式:

SAP HANA System replication有同步(全同步,内存同步,同步)及异步模式,在高可用自动切换场景下,建议采用同步模式,以保证数据切换过程中没有数据丢失(RPO=0)。

    • 全同步: 备系统接收到同步数据并保存到持久层后,备系统将向主系统发送确认信息,主系统提交日志。备系统发生故障无法接受同步数据时,主系统会等待,一直到备机恢复。
    • 同步:备系统接收到同步数据并保存到持久层后,备系统将向主系统发送确认信息,主系统提交日志。备系统发生故障无法接受同步数据时,主系统尝试失败后,会继续当前业务。
    • 内存同步:当备系统接收日志(内存)后,确认消息回复给主系统,主系统提交日志。主系统提交日志。备系统发生故障无法接受同步数据时,主系统尝试失败后,会继续当前业务。
    • 异步:主系统发出同步数据后即提交日志,无须等待备系统的响应。备系统故障不会影响主系统执行业务。
  • 数据预加载模式(Preload):
    • 预加载选项ON

–数据保存在内存。

–快速的切换时间(RTO)。

    • 预加载选项OFF

–内存占用少,用于其他系统资源(如非生产系统)。

–更长的切换时间。

–在计划切换前,运行时可以激活预加载。

 

SAP原生高可用

SAP软件自身提供了多个原生高可用机制来恢复SAP HANA系统各种各样的故障,这些功能对于SAP容灾也是非常有用的,因此大家首先要了解以下功能。

服务自动重启(Auto-Restart Service)

当SAP HANA出现服务崩溃或人为操作错误导致程序停止运行时,HANA Service AutoRestart监视功能自动重新启动该服务,它会将数据装载进内存并且恢复它的相关功能。SAP HANA服务自动重启是一种开箱即用的故障恢复解决方案,在华为云平台上与其他平台运行没有区别。

节点失效自动切换(Host Auto-Failover)

节点失效自动切换,这种方案要求SAP HANA安装在多个节点上(至少两个),一个主(master)节点,若干个从(slave)节点,一个或多个备用(standby)节点;当主节点或者从节点发生单点故障时,备用节点能识别并自动从备用状态转到运行状态,从而代替失效的节点。

系统复制(HANA System Replication)

SAP HANA系统复制(HANA System Replication,简称HSR)是SAP HANA提供的高可用和容灾解决方案,此方案需要创建备份系统(Secondary System),它会持续地从主系统(Primary System)同步数据和事务日志,一旦主系统出现灾难性的故障,我们就可以启用备份系统来代替主系统。此外,根据您对于恢复时间目标(RTO)和数据库的恢复点目标(RPO)的不同要求,HSR允许您有完全多种不同的设置,更多详细信息请参见SAP的官方文档 How to Perform System Replication for SAP HANA

SAP HANA备份与恢复

虽然SAP HANA是内存数据库,但所有数据的修改都会被保存在持久存储系统中,因此即使遇到例如突然的停电导致停机,SAP HANA也能够恢复数据并确保数据不丢失。此外,为了在灾难发生后能够恢复数据,我们还必须定期将持久存储系统中的数据和数据库日志备份到远端,例如OBS桶中。关于SAP HANA数据库更多的备份和恢复细节,请参见SAP官方文档 Backup and Recovery - SAP HANA

 

SAP HANA容灾

我们将从以下三个主要场景来介绍HANA部分的容灾:

场景1 云上SAP HANA容灾

华为云支持SAP HANA容灾,跨可用区部署SAP HANA冗余节点,并配置软件本身自带的System Replication实现数据复制,从而实现SAP HANA跨可用区容灾,同时关闭数据预加载功能,将备机节点用于非生产部署。

  • 关闭System Replication中的Preload功能,此时备机只需要保留少部分资源(10%)用于接受主机的数据同步,同时可在备机上部署非生产系统。
  • 按照SAP的最佳实践,备机上的非生产系统须挂载额外的存储资源,以避免备机切换后对生产系统的影响。
  • 在系统切换时,需要先关闭备机上的非生产系统,保证备机的资源,之后手工触发切换。

如果还想进一步提升可用性,我们还可以将高可用与容灾方案组合部署,例如:

  • AZ内部署SAP HANA高可用(SR sync + Preload on + Suse HAE)和跨AZ部署SAP HANA容灾(SR async + Preload on)
  • AZ内部署SAP HANA高可用(SR sync + Preload on + Suse HAE)和跨Region部署SAP HANA容灾(SR async + Preload on)
  • 跨AZ部署SAP HANA高可用(SR sync + Preload on + Suse HAE)和跨Region部署SAP HANA容灾(SR async + Preload on)

场景2:云上容灾系统部署

华为云支持将SAP HANA容灾系统部署在云上,与客户线下数据中心的系统进行数据同步。

  • 通过VPN联通客户数据中心与华为云上资源。将SAP HANA容灾系统部署在云上。
  • 云端SAP HANA系统与线下SAP HANA系统通过System Replication保持数据同步,通常采用异步模式。
  • 当客户数据中心系统发生故障时,需手动切换到云端SAP HANA系统。

场景3CSBS应用一致性备份恢复

华为云支持CSBS应用一致性备份对SAP HANA进行备份,在同一可用区内,通过部署单机SAP HANA,用于存放业务数据,随着数据量的增加,之前的备份方式已经满足不了RTORPO的要求,采用应用一致性备份,减小RTORPO,最大限度保障用户数据的安全性和正确性,确保业务安全。

  • 支持周期性自动备份。
  • 通过SAP HANA快照技术,将弹性云服务器包含的多个云硬盘的数据备份到对象存储。
  • 整机备份恢复:支持恢复原弹性云服务器和使用备份数据创建新弹性云服务器。
  • 灵活易用:可以通过控制台手工触发,也可以使用华为云提供的API编写脚本周期性触发备份。
  • 跨AZ云服务器恢复:备份上传至OBS可对AZ级的灾难恢复。

 

SAP应用存储容灾

存储容灾服务(Storage Disaster Recovery Service)提供跨可用区RPO=0的虚拟机级容灾保护,可大幅降低企业容灾TCO,简化容灾流程。当生产站点故障时,用户可在容灾站点迅速恢复业务,极大缩短业务中断时间,减少损失。对于SAP应用我们推荐使用此服务来实现容灾。

场景1SAP应用存储容灾&SAP HANA异步HSR

本方案中SAP应用采用标准部署或分布式部署,SAP HANA采用单机无高可用部署。

 

在示例图中, 生产站点为AZ1,容灾站点为AZ2。SAP应用配置了存储容灾,SAP HANA配置了异步的系统复制。

SAP应用部署在一个PAS节点及可能的多个AAS节点上,每个节点都配置了存储容灾。SAP HANA的系统卷、Data卷、Log卷、Shared卷使用EVS部署在AZ1, Backup使用SFS,跨AZ共享。SAP HANA数据定期备份到Backup目录或使用CSBS/VBS把数据备份到OBS上。

当生产站点出现故障时,SAP应用通过存储容灾的故障切换,容灾站点的服务器和磁盘将立刻可用,SAP HANA通过Backup卷中的备份文件或云服务器备份服务(CSBS)或云硬盘备份服务(VBS)将数据恢复至您指定的数据恢复点。

场景2SAP应用备份/恢复&SAP HANA存储容灾

本方案中SAP应用采用标准部署或分布式部署,SAP HANA采用单机无高可用部署。

 

在示例图中, 生产站点为AZ1,容灾站点为AZ2。SAP HANA配置存储容灾,SAP应用不配置存储容灾,而是定期将数据备份到OBS上或使用CSBS/VBS备份到OBS上。当生产站点出现故障时,SAP应用通过OBS中的备份文件或云服务器备份服务(CSBS)或云硬盘备份服务(VBS)将数据恢复至您指定的数据恢复点,SAP HANA通过存储容灾的故障切换,容灾站点的服务器和磁盘将立刻可用,RPO几乎为0。相对于方案一,本方案主要优势是可以快速恢复数据库中的数据,将数据库的RPO降低到最小。

场景3SAP应用存储容灾&SAP HANA异步HSR

本方案中SAP应用采用分布式高可用部署,SAP HANA采用单机高可用部署。

在示例图中, 生产站点为AZ1,容灾站点为AZ2。在本方案中,SAP应用配置了存储容灾,SAP HANA采用多层系统复制(Multitier System Replication)的方案,先在AZ1内配置同步系统复制加HAE以满足生产系统高可用的要求,然后再配置异步的系统复制到AZ2内的SAP HANA节点。SAP HANA的系统卷、Data卷、Log卷、Shared卷使用EVS部署在AZ1, Backup目录使用SFS,跨AZ共享。SAP HANA数据定期备份到Backup目录或使用CSBS/VBS把数据备份到OBS上。

当整个生产站点出现故障时,SAP应用通过存储容灾的故障切换,容灾站点的服务器和磁盘将立刻可用,SAP HANA通过Backup卷中的备份文件或云服务器备份服务(CSBS)或云硬盘备份服务(VBS)将数据恢复至您指定的数据恢复点。

更多关于SAP解决方案的知识,请参阅☞SAP技术画册

点击“了解更多,华为云SAP解决方案等着您!