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

在 Azure 中使用共享磁盘在 Windows 故障转移群集上群集上群集 SAP ASCS/SCS 实例

Windows OS Windows

Windows Server 故障转移群集(WSFC)是 Windows 中高可用性 (HA) SAP ASCS/SCS 安装和数据库管理系统 (DBMS) 的基础。

故障转移群集是由 1+n 个独立服务器(节点)构成的组,这些服务器配合工作以提高应用程序和服务的可用性。 如果发生节点故障,WSFC 将计算可能发生的故障数,并且仍然保持正常运行的群集以提供应用程序和服务。 可以从各种仲裁模式中进行选择,以实现故障转移聚类分析。

先决条件

在开始本文中的任务之前,请查看 SAP NetWeaver 的高可用性体系结构和方案文章

Azure 中的 Windows Server 故障转移群集

将 WSFC 与 Azure 虚拟机(VM)配合使用需要其他配置步骤。 生成群集时,需要为 SAP ASCS/SCS 实例设置多个 IP 地址和虚拟主机名。

Azure 中的名称解析和群集虚拟主机名

Azure 云平台不提供配置虚拟 IP 地址(例如浮动 IP 地址)的选项。 需要一个替代解决方案来设置虚拟 IP,以便连接到云中的群集资源。

Azure 负载均衡器服务提供适用于 Azure 的内部负载均衡器。 使用内部负载均衡器时,客户端通过群集的虚拟 IP 地址访问群集。

在包含群集节点的资源组中部署内部负载均衡器。 然后,使用内部负载均衡器的探测端口配置所有必要的端口转发规则。 客户端可以通过虚拟主机名连接。 DNS 服务器解析群集 IP 地址,内部负载均衡器处理向活动群集节点的端口转发。

重要

负载均衡方案中,网络适配器(NIC)的辅助 IP 配置不支持浮动 IP 地址。 有关详细信息,请参阅 Azure 负载均衡器限制。 如果你需要为 VM 提供其他 IP 地址,请部署第二个 NIC。

Diagram of a Windows Server Failover Clustering configuration in Azure without a shared disk.

使用群集共享磁盘的 SAP ASCS/SCS HA

在 Windows 中,SAP ASCS/SCS 实例包含 SAP 中心服务、SAP 消息服务器、排队服务器进程和 SAP 全局主机文件。 SAP 全局主机文件存储整个 SAP 系统的中心文件。

SAP ASCS/SCS 实例具有以下组件:

  • SAP 中心服务:

    • 两个进程(对于消息服务器和排队服务器)和用于访问这两个进程的 ASCS/SCS 虚拟主机名
    • 文件结构: S:\usr\sap\<SID>\ASCS/SCS<实例编号>
  • SAP 全局主机文件:

    • 文件结构: S:\usr\sap\<SID>\SYS...

    • sapmnt 文件共享,它允许使用以下 UNC 路径访问这些全局 S:\usr\sap\<SID>\SYS... 文件:

      \\<ASCS/SCS 虚拟主机名>\sapmnt\<SID>\SYS...

Diagram of processes, file structure, and global host file share of an SAP ASCS/SCS instance.

在高可用性设置中,可群集化 SAP ASCS/SCS 实例。 使用群集共享磁盘(本文示例中的驱动器 S)放置 SAP ASCS/SCS 和 SAP 全局主机文件。

Diagram that shows an SAP ASCS/SCS high-availability architecture with shared disks.

使用排队复制服务器 1 (ERS1) 体系结构:

  • 除了通过 sapmnt 文件共享访问 SAP 全局主机文件外,还使用相同的 ASCS/SCS 虚拟主机名来访问 SAP 消息服务器和排队服务器进程。
  • 同一群集共享磁盘(驱动器 S)在它们之间共享。

使用排队复制服务器 2 (ERS2) 体系结构:

  • 除了通过 sapmnt 文件共享访问 SAP 全局主机文件外,还使用相同的 ASCS/SCS 虚拟主机名来访问 SAP 消息服务器进程。
  • 同一群集共享磁盘(驱动器 S)在它们之间共享。
  • 有单独的 ERS 虚拟主机名可以访问排队服务器进程。

Diagram of an SAP ASCS/SCS high-availability architecture with a shared disk.

共享磁盘和排队复制服务器

ERS1 体系结构支持共享磁盘,其中 ERS1 实例:

  • 未聚集。
  • 使用名称 localhost
  • 部署在每个群集节点上的本地磁盘上。

ERS2 体系结构也支持共享磁盘,其中 ERS2 实例:

  • 群集化。
  • 使用专用的虚拟网络或网络主机名。
  • 除了 (A)SCS IP 地址,还需要在 Azure 内部负载均衡器上配置 ERS 虚拟主机名的 IP 地址。
  • 部署在每个群集节点上的本地磁盘上,因此无需共享磁盘。

有关 ERS1 和 ERS2 的详细信息,请参阅 SAP 网站上的 Microsoft 故障转移群集中的排队复制服务器和新排队复制器。

Azure 中用于 SAP 工作负荷的共享磁盘的选项

Azure 中 Windows 故障转移群集中的共享磁盘有两个选项:

为共享磁盘选择技术时,请记住有关 SAP 工作负荷的 Azure 共享磁盘的以下注意事项:

  • 可用性集和可用性区域中的 SAP 部署支持将 Azure 共享磁盘与 Azure 高级版 SSD 磁盘配合使用。
  • 不支持将 Azure 超级磁盘存储磁盘Azure 标准 SSD 磁盘作为 SAP 工作负荷的 Azure 共享磁盘。
  • 请确保预配 Azure 高级版 SSD 磁盘,其最小磁盘大小(高级版 SSD 范围指定)能够同时附加到所需的 VM 数。 SAP ASCS Windows 故障转移群集通常需要两个 VM。

请记住以下有关 SIOS 的注意事项:

  • SIOS 解决方案提供两个磁盘之间的实时同步数据副本 (replica)。
  • 使用 SIOS 解决方案,可以使用两个托管磁盘进行操作。 如果使用可用性集或可用性区域,则托管磁盘位于不同的存储群集上。
  • 支持在可用性区域中部署。
  • SIOS 解决方案需要安装和操作第三方软件,你需要单独购买该软件。

Azure 共享磁盘

可以使用 Azure 共享磁盘实现 SAP ASCS/SCS HA

先决条件和限制

目前,可以将 Azure 高级版 SSD 磁盘用作 SAP ASCS/SCS 实例的 Azure 共享磁盘。 目前存在以下限制:

有关详细信息,请查看 Azure 共享磁盘文档的“限制 ”部分。

高级版 SSD 共享磁盘的重要注意事项

请考虑有关 Azure 高级版 SSD 共享磁盘的以下要点:

  • 高级版 SSD 共享磁盘的 LRS:

    • 使用适用于 高级版 SSD 共享磁盘的 LRS 进行 SAP 部署,可在一个存储群集上使用单个 Azure 共享磁盘运行。 如果部署 Azure 共享磁盘的存储群集出现问题,则会影响 SAP ASCS/SCS 实例。
  • 高级版 SSD 共享磁盘的 ZRS:

    • 由于数据的跨区域复制,ZRS 的写入延迟高于 LRS 的延迟。
    • 不同区域中的可用性区域之间的距离各不相同,ZRS 磁盘在可用性区域中的延迟也是如此。 对磁盘 进行基准测试,以确定区域中 ZRS 磁盘的延迟。
    • 高级版 SSD 共享磁盘的 ZRS 同步副本 (replica)区域中三个可用性区域的数据。 如果其中一个存储群集中出现问题,SAP ASCS/SCS 实例将继续运行,因为存储故障转移对应用程序层是透明的。
    • 有关详细信息,请查看 有关托管磁盘 ZRS 的文档的“限制 ”部分。

有关规划 SAP 部署的其他重要注意事项,请查看在 Azure 上规划和实施 SAP 部署,并针对 SAP 工作负荷Azure 存储类型。

支持的操作系统版本

支持 Windows Server 2016、2019 和更高版本。 使用最新的数据中心映像。

强烈建议至少使用 Windows Server 2019 Datacenter,原因如下:

  • Windows Server 2019 中的 WSFC 是 Azure 感知的。
  • Windows Server 2019 Datacenter 包括通过监视 Azure 计划事件来集成和了解 Azure 主机维护和改进体验。
  • 可以使用分布式网络名称。 (这是默认选项。无需为群集网络名称提供专用 IP 地址。 此外,无需在 Azure 内部负载均衡器上配置 IP 地址。

Azure 中使用 SIOS DataKeeper 的共享磁盘

共享磁盘的另一个选项是使用 SIOS DataKeeper Cluster Edition 创建模拟群集共享存储的镜像存储。 SIOS 解决方案提供实时同步的数据复制。

为群集创建共享磁盘资源:

  1. 将额外磁盘附加到 Windows 群集配置中的每个虚拟机。
  2. 在两个虚拟机节点上都运行 SIOS DataKeeper Cluster Edition。
  3. 配置 SIOS DataKeeper Cluster Edition,使其镜像从源虚拟机附加的附加磁盘卷的内容到目标虚拟机的其他磁盘附加卷。 SIOS DataKeeper 抽象化源卷和目标本地卷,然后将其作为一个共享磁盘呈现给 WSFC。

Diagram of a Windows Server Failover Clustering configuration in Azure with SIOS DataKeeper.

注意

对于某些 DBMS 产品(如 SQL Server),无需共享磁盘来实现高可用性。 SQL Server Always On 将 DBMS 数据和日志从一个群集节点的本地磁盘复制到另一个群集节点的本地磁盘。 在此情况下,Windows 群集配置不需要共享磁盘。

可选配置

下图显示了运行 Windows Server 故障转移群集的 Azure VM 上的多个 SAP 实例,以减少 VM 总数。

此配置可以是 SAP ASCS/SCS 群集上的本地 SAP 应用程序服务器,也可以是 Microsoft SQL Server Always On 节点上的 SAP ASCS/SCS 群集角色。

重要

不支持在 SQL Server Always On 节点上安装本地 SAP 应用程序服务器。

SAP ASCS/SCS 和 Microsoft SQL Server 数据库都是单一故障点(SPOF)。 WSFC 有助于保护 Windows 环境中的这些 SPO。

尽管 SAP ASCS/SCS 的资源消耗相当小,但我们建议将 SQL Server 或 SAP 应用程序服务器的内存配置减少 2 GB。

下图演示了使用 SIOS DataKeeper 的 WSFC 节点上的 SAP 应用程序服务器:

Diagram of a Windows Server Failover Clustering configuration in Azure with SIOS DataKeeper and locally installed SAP application servers.

由于 SAP 应用程序服务器是在本地安装的,因此无需设置任何同步。

下图演示了 SQL Server Always On 节点上的 SAP ASCS/SCS 以及 SIOS DataKeeper 的使用:

Diagram of SAP ASCS/SCS on SQL Server Always On nodes with SIOS DataKeeper.

有关其他配置的信息,请参阅以下资源:

后续步骤