你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

适用于 SAP 工作负荷的 IBM Db2 Azure 虚拟机 DBMS 部署

使用 Microsoft Azure,可以将运行于 IBM DB2 for Linux、UNIX 和 Windows (LUW) 的现有 SAP 应用程序迁移到 Azure 虚拟机。 借助 IBM DB2 for LUW 上的 SAP,管理员和开发人员仍然可以使用在本地可用的相同开发和管理工具。 有关在 IBM Db2 for LUW 上运行 SAP Business Suite 的常规信息,请通过 IBM Db2 for Linux、UNIX 和 Windows 上的 SAP 中的 SAP 社区网络 (SCN) 获取。

有关 Azure 中 DB2 for LUW 上的 SAP 的其他信息和更新,请参阅 SAP 说明 2233094

有大量文章介绍 Azure 上的 SAP 工作负载。 建议先参阅 Azure 上的 SAP VM 入门,然后阅读其他相关领域的文章。

以下 SAP 说明与 Azure 上的 SAP 有关,涉及本文档中介绍的领域:

说明文档编号 标题
1928533 Azure 上的 SAP 应用程序:支持的产品和 Azure VM 类型
2015553 Microsoft Azure 上的 SAP:支持先决条件
1999351 适用于 SAP 的增强型 Azure 监视故障排除
2178632 Microsoft Azure 上的 SAP 关键监视度量值
1409604 Windows 上的虚拟化:增强型监视
2191498 Azure 的 Linux 上的 SAP:增强型监视
2233094 DB6:Azure 上使用 IBM DB2 for Linux、UNIX 和 Windows 的 SAP 应用程序 - 附加信息
2243692 Microsoft Azure (IaaS) VM 上的 Linux:SAP 许可证问题
1984787 SUSE LINUX Enterprise Server 12:安装说明
2002167 Red Hat Enterprise Linux 7.x:安装和升级
1597355 适用于 Linux 的交换空间建议

在阅读本文档之前,请查看适用于 SAP 工作负载的 Azure 虚拟机 DBMS 部署的注意事项。 查看 Azure 上的 SAP 工作负载中的其他指南。

IBM DB2 for Linux、UNIX 和 Windows 版本支持

自 DB2 版本 10.5 起,支持 Microsoft Azure 虚拟机服务中 IBM DB2 for LUW 上的 SAP。

若要了解受支持的 SAP 产品和 Azure 虚拟机 (VM) 类型,请查看 SAP 说明 1928533

在 Azure VM 中安装 SAP 的 IBM DB2 for Linux、UNIX 和 Windows 配置准则

存储配置

有关 SAP 工作负载的 Azure 存储类型概述,请查看适用于 SAP 工作负载的 Azure 存储类型一文。所有数据库文件都必须存储在 Azure 块存储的已装载磁盘上(Windows:NTFS,Linux:xfs [自 Db2 11.1 起受支持] 或 ext3)。

Db2 数据库文件不支持远程共享卷(如列出的方案中的 Azure 服务):

Db2 数据库文件支持远程共享卷(如列出的方案中的 Azure 服务):

  • 支持在 Azure NetApp 文件上托管的 NFS 共享文件上托管基于 Linux 来宾操作系统的 Db2 数据和日志文件!

如果使用的是基于 Azure 页 BLOB 存储或托管磁盘的磁盘,那么适用于 SAP 工作负载的 Azure 虚拟机 DBMS 部署的注意事项中的表述也适用于使用 Db2 DBMS 进行的部署。

如先前在文档通用部分中所述,Azure 磁盘的 IOPS 吞吐量存在配额。 确切的配额因所用 VM 类型而异。 可以在此处 (Linux)此处 (Windows) 找到 VM 类型及其配额的列表。

只要每个磁盘当前的 IOPS 配额够用,就可以将所有数据库文件存储在装载的单个磁盘上。 但应该始终在不同的磁盘/VHD 上分隔数据文件和事务日志文件。

有关性能注意事项,另请参阅 SAP 安装指南中的“数据库目录的数据安全和性能注意事项”一章。

或者,可以使用 Windows 存储池(仅适用于 Windows Server 2012 及更高版本),如适用于 SAP 工作负载的 Azure 虚拟机 DBMS 部署的注意事项中所述。 在 Linux 上,可以使用 LVM 或 mdadm 在多个磁盘上创建一个大型逻辑设备。

对于 Azure M 系列 VM,与 Azure 高级存储性能相比,使用 Azure 写入加速器时可通过多种因素减少写入事务日志的延迟。 因此,应该为形成 Db2 事务日志卷的一个或多个 VHD 部署 Azure 写入加速器。 有关详细信息,请阅读文档写入加速器

IBM Db2 LUW 11.5 已发布对 4 KB 扇区大小的支持。 尽管需要在 11.5 中通过配置设置 db2set DB2_4K_DEVICE_SUPPORT=ON 来启用使用 4-KB 扇区大小,如下所示:

在较旧的 Db2 版本中,必须使用 512 个字节的扇区大小。 高级 SSD 盘为原生 4 KB,具备 512 个字节的仿真。 默认情况下,超级磁盘使用 4 KB 的扇区大小。 在创建超级磁盘期间,可以启用 512 个字节的扇区大小。 有关详细信息,请参阅使用 Azure 超级磁盘。 低于 11.5 的 IBM Db2 LUW 版本只支持 512 个字节的扇区大小。

在 Windows 上,将存储池用于 log_dirsapdatasaptmp 目录的 Db2 存储路径时,必须将物理磁盘扇区大小指定为 512 个字节。 使用 Windows 存储池时,必须通过命令行界面使用参数 -LogicalSectorSizeDefault,以手动方式创建存储池。 有关详细信息,请参阅 New-StoragePool

针对 IBM Db2 部署的 VM 和磁盘结构的建议

SAP 支持说明 1928533 中列出的任何 VM 类型都支持 IBM Db2 for SAP NetWeaver 应用程序。 建议用于运行 IBM Db2 数据库的 VM 系列是用于大型多 TB 数据库的 Esd_v4/Eas_v4/Es_v3 和 M/M_v2 系列。 通过启用 M 系列写入加速器,可以提升 IBM Db2 事务日志磁盘写入性能。

下面是 Db2 部署上 SAP 的各种大小(从小到大)和用途的基准配置。 此列表基于 Azure 高级存储。 不过,Azure 超级磁盘也完全支持 Db2,因此也可以使用 Azure 超级磁盘。 请使用容量、突发吞吐量和突发 IOPS 的值来定义超级磁盘配置。 可以将/db2/<SID>/log_dir 的 IOPS 限制为大约 5000 IOPS。

超小型 SAP 系统:数据库大小 50 - 200 GB:示例解决方案管理器

VM 名称/大小 Db2 装入点 Azure 高级磁盘 磁盘数量 IOPS 吞吐
量 [MB/s]
大小 [GB] 突发 IOPS 突发
吞吐量 [GB]
条带大小 Caching
E4ds_v4 /db2 P6 1 240 50 64 3,500 170
vCPU:4 /db2/<SID>/sapdata P10 2 1,000 200 256 7,000 340 256
KB
ReadOnly
RAM:32 GiB /db2/<SID>/saptmp P6 1 240 50 128 3,500 170
/db2/<SID>/log_dir P6 2 480 100 128 7,000 340 64
KB
/db2/<SID>/offline_log_dir P10 1 500 100 128 3,500 170

小型 SAP 系统:数据库大小为 200 - 750 GB:小型企业套件

VM 名称/大小 Db2 装入点 Azure 高级磁盘 磁盘数量 IOPS 吞吐
量 [MB/s]
大小 [GB] 突发 IOPS 突发
吞吐量 [GB]
条带大小 Caching
E16ds_v4 /db2 P6 1 240 50 64 3,500 170
vCPU:16 /db2/<SID>/sapdata P15 4 4,400 500 1.024 14,000 680 256 KB ReadOnly
RAM:128 GiB /db2/<SID>/saptmp P6 2 480 100 128 7,000 340 128 KB
/db2/<SID>/log_dir P15 2 2,200 250 512 7,000 340 64
KB
/db2/<SID>/offline_log_dir P10 1 500 100 128 3,500 170

中型 SAP 系统:数据库大小为 500 - 1000 GB:小型企业套件

VM 名称/大小 Db2 装入点 Azure 高级磁盘 磁盘数量 IOPS 吞吐
量 [MB/s]
大小 [GB] 突发 IOPS 突发
吞吐量 [GB]
条带大小 Caching
E32ds_v4 /db2 P6 1 240 50 64 3,500 170
vCPU:32 /db2/<SID>/sapdata P30 2 10,000 400 2.048 10,000 400 256 KB ReadOnly
RAM:256 GiB /db2/<SID>/saptmp P10 2 1,000 200 256 7,000 340 128 KB
/db2/<SID>/log_dir P20 2 4,600 300 1.024 7,000 340 64
KB
/db2/<SID>/offline_log_dir P15 1 1,100 125 256 3,500 170

大型 SAP 系统:数据库大小为 750 - 2000 GB:企业套件

VM 名称/大小 Db2 装入点 Azure 高级磁盘 磁盘数量 IOPS 吞吐
量 [MB/s]
大小 [GB] 突发 IOPS 突发
吞吐量 [GB]
条带大小 Caching
E64ds_v4 /db2 P6 1 240 50 64 3,500 170
vCPU:64 /db2/<SID>/sapdata P30 4 20,000 800 4.096 20,000 800 256 KB ReadOnly
RAM:504 GiB /db2/<SID>/saptmp P15 2 2,200 250 512 7,000 340 128 KB
/db2/<SID>/log_dir P20 4 9,200 600 2.048 14,000 680 64
KB
/db2/<SID>/offline_log_dir P20 1 2,300 150 512 3,500 170

大型多 TB SAP 系统:数据库大小为 2 TB 起:全局业务套件系统

VM 名称/大小 Db2 装入点 Azure 高级磁盘 磁盘数量 IOPS 吞吐
量 [MB/s]
大小 [GB] 突发 IOPS 突发
吞吐量 [GB]
条带大小 Caching
M128s /db2 P10 1 500 100 128 3,500 170
vCPU:128 /db2/<SID>/sapdata P40 4 30,000 1.000 8.192 30,000 1.000 256 KB ReadOnly
RAM:2,048 GiB /db2/<SID>/saptmp P20 2 4,600 300 1.024 7,000 340 128 KB
/db2/<SID>/log_dir P30 4 20,000 800 4.096 20,000 800 64
KB
写入
加速器
/db2/<SID>/offline_log_dir P30 1 5,000 200 1.024 5,000 200

使用 Azure NetApp 文件

托管在 Suse 或 Red Hat Linux 来宾 OS 中的 IBM Db2 支持使用基于 Azure NetApp 文件 (ANF) 的 NFS v4.1 卷。 应创建至少四个不同的卷,如下所示:

  • 用于 saptmp1、sapmnt、usr_sap、<sid>_home、db2<sid>_home、db2_software 的共享卷
  • 用于 sapdata1 到 sapdatan 的一个数据卷
  • 用于重做日志目录的一个日志卷
  • 用于日志存档和备份的一个卷

第五个可能的卷可以是用于实现更长期备份的 ANF 卷,可用于拍摄快照并将快照存储在 Azure Blob 存储中。

配置可能如下所示:

Example of Db2 configuration using ANF

必须基于性能要求选择 ANF 托管的卷的性能层和大小。 但是,建议对数据和日志卷采用超高性能级别。 不支持将块存储和共享存储类型混合用于数据和日志卷。

对于装载选项,装载这些卷可能如下所示(需要将 <SID><sid> 替换为 SAP 系统的 SID):

vi /etc/idmapd.conf   
 # Example
 [General]
 Domain = defaultv4iddomain.com
 [Mapping]
 Nobody-User = nobody
 Nobody-Group = nobody

mount -t nfs -o rw,hard,sync,rsize=262144,wsize=262144,sec=sys,vers=4.1,tcp 172.17.10.4:/db2shared /mnt 
mkdir -p /db2/Software /db2/AN1/saptmp /usr/sap/<SID> /sapmnt/<SID> /home/<sid>adm /db2/db2<sid> /db2/<SID>/db2_software
mkdir -p /mnt/Software /mnt/saptmp  /mnt/usr_sap /mnt/sapmnt /mnt/<sid>_home /mnt/db2_software /mnt/db2<sid>
umount /mnt

mount -t nfs -o rw,hard,sync,rsize=262144,wsize=262144,sec=sys,vers=4.1,tcp 172.17.10.4:/db2data /mnt
mkdir -p /db2/AN1/sapdata/sapdata1 /db2/AN1/sapdata/sapdata2 /db2/AN1/sapdata/sapdata3 /db2/AN1/sapdata/sapdata4
mkdir -p /mnt/sapdata1 /mnt/sapdata2 /mnt/sapdata3 /mnt/sapdata4
umount /mnt

mount -t nfs -o rw,hard,sync,rsize=262144,wsize=262144,sec=sys,vers=4.1,tcp 172.17.10.4:/db2log /mnt 
mkdir /db2/AN1/log_dir
mkdir /mnt/log_dir
umount /mnt

mount -t nfs -o rw,hard,sync,rsize=262144,wsize=262144,sec=sys,vers=4.1,tcp 172.17.10.4:/db2backup /mnt
mkdir /db2/AN1/backup
mkdir /mnt/backup
mkdir /db2/AN1/offline_log_dir /db2/AN1/db2dump
mkdir /mnt/offline_log_dir /mnt/db2dump
umount /mnt

注意

需要硬装载选项提交和同步

备份/还原

支持通过 IBM DB2 for LUW 提供备份/还原功能,其方式与在标准 Windows Server 操作系统和 Hyper-V 上一样。

请确保已经设置了有效的数据库备份策略。

与裸机部署一样,备份/还原的性能取决于可以并行读取的卷数目,以及这些卷可能的吞吐量。 此外,备份压缩所使用的 CPU 使用率可能会在最多只有八个 CPU 线程的 VM 上扮演重要角色。 因此,可以假设:

  • 存储数据库设备所用的磁盘数目越少,读取的总体吞吐量就越小
  • VM 中的 CPU 线程数目越少,备份压缩的影响就越大
  • 要写入备份的目标(带区目录、磁盘)越少,吞吐量就越低

要增加要写入的目标数目,可以使用/结合使用以下两个选项,具体视需求而定:

  • 基于多个磁盘对备份目标卷划分带区,以改善该带区卷上的 IOPS 吞吐量
  • 使用多个目标目录来写入备份

注意

Windows 上的 Db2 不支持 Windows VSS 技术。 因此,Azure 备份服务的应用程序一致 VM 备份不适用于 DB2 DBMS 所部署到的 VM。

高可用性和灾难恢复

Linux Pacemaker

重要

对于 Db2 版本 11.5.6 及更高版本,强烈建议使用 IBM 中使用 Pacemaker 的集成解决方案。

Windows 群集服务器

不支持 Microsoft 群集服务器 (MSCS)。

支持 DB2 高可用性灾难恢复 (HADR)。 如果 HA 配置的虚拟机具有有效的名称解析,Azure 中的设置将与任何本地设置无任何差别。 建议不要完全依赖于 IP 解析。

请勿将异地复制用于存储数据库磁盘的存储帐户。 有关详细信息,请参阅文档:适用于 SAP 工作负荷的 Azure 虚拟机 DBMS 部署的注意事项

加速网络

对于 Window 上的 Db2 部署,强烈建议使用加速网络的 Azure 功能,如 Azure 加速网络所述。 也可考虑适用于 SAP 工作负载的 Azure 虚拟机 DBMS 部署的注意事项中的建议。

Linux 部署的详细信息

只要每个磁盘当前的 IOPS 配额够用,就可以将所有数据库文件存储在单个磁盘上。 但应该始终在不同的磁盘上分隔数据文件和事务日志文件。

如果单个 Azure VHD 的 IOPS 或 I/O 吞吐量不足,可使用 LVM(逻辑卷管理器)或 MDADM(如适用于 SAP 工作负载的 Azure 虚拟机 DBMS 部署的注意事项中所述),在多个磁盘上创建一个大型逻辑设备。 对于包含了 sapdatasaptmp 目录的 Db2 存储路径的磁盘,必须指定大小为 512 KB 的物理磁盘扇区。

其他

Azure 可用性集或 SAP 监视等所有其他常规领域也适用于使用 IBM 数据库进行的 VM 部署。 有关这些常规领域,请参阅适用于 SAP 工作负载的 Azure 虚拟机 DBMS 部署注意事项

后续步骤

阅读文章: