SAP HANA 部署指南

更新时间:

版本管理

版本

修订日期

变更类型

生效日期

1.0

2017/12/14

1.1

2018/7/31

1.HANA认证机型更新 

2.调整和优化了部分内容

2018/7/31

1.2

2018/11/16

HANA认证机型更新

2018/11/16

1.3

2019/1/10

HANA认证机型更新

2019/1/10

1.4

2019/11/29

支持的操作系统更新

2019/11/29

1.5

2020/11/9

HANA认证机型更新

2020/11/9

介绍

SAP HANA 是一个由 SAP 开发和推广的基于内存计算的列存储关系型数据库管理系统,其作为数据库服务器的主要功能是根据应用的要求进行数据的存储和检索。此外,SAP HANA 可执行的高性能分析和实时数据处理,可以解决客户快速增长的业务分析需求。

本部署指南介绍了如何在阿里云云服务器 ECS 上规划和部署 SAP HANA 系统,包括如何配置 ECS 实例、块存储、网络和 SUSE Linux Enterprise Server (SLES) 操作系统。本指南结合了阿里云和 SAP 的最佳实践。

关于SAP HANA高可用环境部署,请参考 SAP HANA同可用区高可用部署

云服务器 ECS 实例规格

目前通过SAP HANA认证的实例规格请参考 认证ECS实例(SAP HANA)或者访问SAP官网 Certified and Supported SAP HANA Hardware

阿里云服务

本实施指南使用的阿里云核心组件包括下表中的服务:

服务

描述

云服务器

云服务器(ECS)是一种具有弹性处理功能的计算服务。ECS 具有比物理服务器更简单和更高效的管理模式。您可以随时创建实例,更改操作系统,以及添加或释放任何数量的 ECS 实例,以满足业务需求。

SSD 云盘

适用于 I/O 密集型的应用,并提供稳定和高随机读写的 IOPS 性能。

高效云盘

适用于中等 I/O 负载的应用场景,并为 ECS 实例提供随机读写高达3,000 IOPS 的存储性能。

专有网络

阿里云专有网络(VPC)是在阿里云中建立的一个私有的网络。它在逻辑上与阿里云中的其他虚拟网络隔离,VPC 使您可以在自己的专有网络中启动和使用阿里云资源。

对象存储

阿里云对象存储服务(OSS)是一种基于网络的数据访问服务。OSS 使您能够存储和检索结构化和非结构化数据,包括文本文件,图像,音频和视频。

支持的 SAP HANA 版本 以及操作系统版本

目前支持的SAP HANA 及操作系统版本请查阅SAP Note 2235581

SAP HANA 部署架构

SAP HANA 支持单节点纵向扩展(scale-up)和多节点的横向扩展(scale-out)架构。

单节点架构

本文档示例的单节点体系架构的 SAP HANA 部署中,您将使用到以下的组件:

  • SAP HANA 数据库主节点的 ECS 实例 ecs.r5.16xlarge,包括:64个 vCPU,512GB 内存,数据卷为数据量大于1.5 TB 的 ESSD 云盘,日志卷和 HANA 共享卷均为大于 512GB 的 ESSD 云盘。

  • 您所选区域中的 VPC 具有自定义拓扑和可分配的 IP 地址范围,SAP HANA 数据库和其他 ECS 实例都会在这个 VPC 内启动。您也可以使用已存在的 VPC 来部署 SAP HANA。

  • 您可以选择为您的 SAP HANA 和其他实例的公网出口配置互联网网关。本指南假定您正在使用此网关。

  • ECS 安全组,用于限制实例间的访问。

  • ECS VM ecs.g6.xlarge,配置 Windows 操作系统并部署 SAP HANA studio客户端。

多节点架构

对于 SAP 商务应用所在的系统,您只能纵向扩展。

由于 HANA 采用无共享架构,横向扩展可以将一组小的 SAP HANA 系统连接在一起成为一个集群数据库。随着工作负载需求的增加,多节点(横向扩展)架构可以在所有节点之间进行负载均衡。

横向扩展架构由一个主节点和多个工作节点组成。它们通过容量高达25 Gbps 的网络进行互连。每个节点在 SSD 云盘上都有自己的 /hana/data 卷和 /hana/log 卷,提供一致的、高 IOPS 的 I/O 服务。主节点还用作 /hana/shared 卷和 /hana/backup 卷的 NFS 主节点,被挂载在每个工作节点上。

在多节点横向扩展体系架构的 SAP HANA 部署中,您将使用到以下的组件:

  • SAP HANA 数据库主节点的 ECS 实例  ecs.r5.16xlarge,包括:64个 vCPU,512GB 内存,数据卷为数据量大于1.5 TB 的 ESSD 云盘,日志卷和 HANA 共享卷均为大于 512GB 的 ESSD 云盘。

  • SAP HANA 数据库的多工作节点的 ECS 实例  ecs.r5.16xlarge,包括:64个 vCPU,512GB 内存,数据卷为数据量大于1.5 TB 的 ESSD 云盘,日志卷和 HANA 共享卷均为大于 512GB 的 ESSD 云盘。

  • 您所选区域中的 VPC 具有自定义拓扑和可分配的 IP 地址范围,SAP HANA 数据库和其他 ECS 实例都会在这个 VPC 内启动。您也可以使用已存在的 VPC 来部署 SAP HANA。

  • 您可以选择为您的 SAP HANA 和其他实例的公网出口配置互联网网关。本指南假定您正在使用此网关。

  • ECS 安全组,用于限制实例间的访问。

  • ECS VM ecs.g6.xlarge,配置 Windows 操作系统并部署 SAP HANA studio客户端。

在阿里云上部署 SAP HANA

本节介绍如何在阿里云上部署多节点 SAP HANA 。

准备工作

阿里云账号

创建阿里云账号。

SAP HANA 安装介质

1.下载 SAP HANA 安装介质

请参考 SAP HANA Server Installation and Update

2.开通 OSS 服务

  • 登录阿里云官网。

  • 点击 OSS 产品详情页 https://www.aliyun.com/product/oss/中的 立即开通。

  • 开通服务后,点击 管理控制台直接进入 OSS 管理控制台界面。

3.创建存储空间

  • 进入 OSS 管理控制台界面。

  • 单击 新建 Bucket新建 Bucket 对话框将弹出。

  • 在 BucketName框中,输入存储空间名称。存储空间的命名必须符合命名规范。所选定的存储空间名称在阿里云 OSS 的所有现有存储空间名称中必须具有唯一性。创建后不支持更改存储空间名称。有关存储空间命名的更多信息,请参阅 OSS 基本概念介绍

  • 在 所属地域框中,下拉选择该存储空间的数据中心。订购后不支持更换地域。如需要通过 ECS 内网访问 OSS,需要选择与您 ECS 相同的地域。更多信息请参阅 访问域名

  • 在 读写权限框中,下拉选择对应的权限。

    • 公共读写:任何人(包括匿名访问)都可以对该存储空间中的文件进行读写操作,所有这些操作产生的费用由该存储空间的创建者承担,请慎用该权限

    • 公共读:只有该存储空间的创建者可以对该存储空间内的文件进行写操作,任何人(包括匿名访问)可以对该存储空间中的文件进行读操作。

    • 私有:只有该存储空间的创建者可以对该存储空间内的文件进行读写操作,其他人无法访问该存储空间内的文件。

  • 单击 提交。存储空间创建完成。

4.上传文件

  • 进入 OSS 管理控制台界面。

  • 单击您要向其中上传文件的存储空间名称,打开该存储空间管理页面。

  • 单击 Object 管理,进入该存储空间内所有文件管理页面。

  • 单击 上传文件,打开文件选择对话框。

  • 选择 HANA 安装包,然后单击 打开。文件上传成功,点击 刷新按钮查看已上传的文件。

账号管理

  1. SAP HANA 账号

    SAP HANA 安装时需要指定 SID,HANA 安装过程中会使用<sid>adm作为该HANA的系统账号(非 HANA 数据库账号), 如账号不存在,HANA 则会默认创建该账号。在个人使用过程中,需要避免使用以 adm 结尾的用户,以免出现账号与 HANA 重复导致账号下信息被 HANA 强制修改的情况。此外,在 scale out 场景中,所有的节点均需要使用同样的<sid>adm并且保证 uid,gid 一致。

  2. 系统内部账号

    阿里云不会在系统内预创建任何账号,Linux 系统默认只有 root 用户。在系统的使用过程中,用户可以在满足操作系统要求情况下随意创建或删除用户账号。如 Linux 下可通过 useradd 和 userdel 来管理账号。

    创建用户:useradd -u <uid> -g <gid> username

    删除用户:userdel username

部署流程

配置网络

  1. 创建 VPC 和交换机

    • 登录专有网络管理控制台。

    • 在左侧导航栏,单击专有网络。

    • 在专有网络列表页面,选择专有网络的所属地域,然后单击创建专有网络。

    • 在创建专有网络对话框,输入专有网络名称并选择专有网络的网段。

    您可以选择以下三个标准私网网段。专有网络创建后,网段无法修改。建议使用较大的网段,尽量避免后续扩容。

    10.0.0.0/8(10.0.0.0 - 10.255.255.255)
    172.16.0.0/12(172.16.0.0 - 172.31.255.255)
    192.168.0.0/16(192.168.0.0 - 192.168.255.255)
  2. 单击 创建VPC

    VPC 创建成功后,系统会为 VPC 生成一个 VPC ID。同时,会为 VPC 创建一个路由器。

    • 单击 下一步创建交换机。

    • 在 创建交换机页签,输入以下信息,然后单击 创建交换机

      名称:指定交换机的名称。

      可用区:选择交换机的可用区。

      网段:指定交换机的网段。

      交换机的网段可以和其所属的 VPC 网段相同或者是其 VPC 网段的子网;交换机的网段的大小在16位网络掩码与29位网络掩码之间。

      注意:如果您的交换机网段和所属 VPC 网段相同,您只能在该 VPC 下创建一台交换机。

    • 单击 完成

      返回实例列表页面,单击创建的专有网络的ID链接,进入专有网络详情页面,查看专有网络和交换机。

  3. 配置安全组

    安全组介绍

    安全组是一个逻辑上的分组,这个分组是由同一个地域(Region)内具有相同安全保护需求并相互信任的实例组成。每个实例至少属于一个安全组,在创建的时候就需要指定。同一安全组内的实例之间网络互通,不同安全组的实例之间默认内网不通。可以授权两个安全组之间互访。

    在 SAP HANA 部署过程中,我们选择使用专有网络 VPC,只需要设置出方向和入方向的规则,无需区分公网和私网。默认情况下,安全组规则为空。所以在新建 ECS 实例时,请确保所选安全组开放包含 22(Linux)或者 3389(Windows)端口,否则无法远程登录 ECS。

更多有关于 SAP 需要访问的特定端口和相应安全组规则,请参见 SAP 官方文档

创建 SAP HANA 虚拟机

  1. 进入阿里云云服务器 ECS 产品购买页面

  2. 选择付费方式 包年包月。

  3. 选择对应区域和可用区

    根据之前的考虑选择对应的区域,如果有配置交换机信息,同时需要选择可用区。

  4. 网络类型选择专有网络

    选择专有网络类型后,需要填写之前创建或者已有的 VPC 和交换机信息。在该多节点架构中,SAP HANA 不直接对外提供服务,因而选择不分配公网 IP。

  5. 选择实例规格

    按需选择 SAP HANA 认证的实例规格。

  6. 选择操作系统镜像

    SAP官方建议的操作系统为 SUSE Linux Enterprise Server for SAP Applications,相关镜像可在镜像市场选取。

  7. 配置存储磁盘

    阿里云提供对象存储(OSS),块存储(云盘),文件存储(NAS)等存储服务,以满足阿里云上运行SAP系统的需要。

  8. 配置初始化信息

    设置好初始密码后,选择创建,需要等待几分钟来等待实例初始化完成。

  9. 安装 SAP HANA 数据库

有关SAP HANA的安装和配置请参考 SAP HANA Platform

连接 SAP HANA

请注意,由于以上部署不会为你的 SAP HANA 实例配置公网 IP,所以您只能通过堡垒机使用 SSH 或通过部署在 Windows 虚拟机上的 SAP HANA Studio 连接到 SAP HANA 实例。

  • 要通过堡垒机实例连接到 SAP HANA,请使用您选择的 SSH 客户端连接到堡垒机,然后再连接到 SAP HANA 实例。

  • 要通过 SAP HANA Studio 连接到 SAP HANA 数据库,请使用远程桌面客户端连接到 Windows 虚拟机实例。连接后,手动安装 SAP HANA Studio 并开始访问 SAP HANA 数据库。

需要在部署后执行的任务

在使用 SAP HANA 实例之前,我们建议您执行以下部署后步骤(另见 SAP HANA 安装和更新指南)。

  • 使用为 SAP 应用程序定制的 SUSE Linux Enterprise Server 作为 SAP HANA 实例的操作系统,需确保 Linux 内核版本至少为 3.12.74-60.64.40,以避免在某些情况下 HANA 性能下降。如果内核版本低于 3.12.74-60.64.40,请将内核升级为最低需求版本。请参阅 SAP Notes 2205917

  • 更新 SAP HANA 软件至最新版本。

  • 安装其他额外的组件,如应用函数库(AFL)或智能数据访问(SDA)。