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

注册现有 SAP 系统

本操作指南介绍如何向 适用于 SAP 解决方案的 Azure 中心注册现有 SAP 系统。 将 SAP 系统注册到 Azure SAP 解决方案中心后,可以通过 Azure 门户使用 Azure SAP 解决方案中心的可视化、管理和监视功能。 例如,你能够:

  • 将 SAP 系统作为 Azure 资源(称为 SAP 解决方案虚拟实例 (VIS))进行查看和跟踪。
  • 根据用于评估 Azure 上的 SAP 最佳实践的质量检查,获取有关 SAP 基础结构、操作系统配置等的建议。
  • 获取有关 SAP 系统的运行状况和状态信息。
  • 启动和停止 SAP 应用层。
  • 启动和停止 ASCS、应用服务器和 HANA 数据库的单个实例。
  • 监视 SAP 系统资源的 Azure 基础结构指标。
  • 查看 SAP 系统的成本分析。

向 Azure Center for SAP 解决方案注册系统时,订阅中会创建以下资源:

  • SAP 解决方案的虚拟实例、SAP 解决方案的中央服务实例、SAP 解决方案的应用服务器实例和 SAP 解决方案的数据库。 创建这些资源类型以表示 Azure 上的 SAP 系统。 这些资源没有任何与其关联的计费或成本。
  • Azure 中心用于 SAP 解决方案服务的托管资源组。
  • 包含 blob 的受管理资源组中的存储帐户。 这些 Blob 是服务所需的脚本和日志,可提供各种功能,包括发现和注册 SAP 系统的所有组件。

注意

注册系统时,可以使用 Azure 门户Azure PowerShellAzure CLI 接口自定义托管资源组的名称存储帐户,该帐户作为注册过程的一部分进行部署。

注意

现在,可以使用注册体验中的新选项启用从特定虚拟网络到 ACSS 托管存储帐户的安全访问

先决条件

Azure 基础结构级别先决条件

  • 检查你是否正在尝试注册受支持的 SAP 系统配置
  • 从 SAP 系统所在的虚拟网络授予对Azure 存储帐户、Azure 资源管理器(ARM)和 Microsoft Entra 服务的访问权限。 使用以下选项之一:
    • 允许 VM 的出站 Internet 连接。
    • 使用服务标记允许连接
    • 使用具有区域范围的服务标记,以允许与 VM 位于同一区域中的资源建立连接。
    • 允许列出Azure 存储、ARM 和 Microsoft Entra ID 的区域特定 IP 地址。
  • ACSS 将 托管存储帐户 部署到订阅中,用于注册的每个 SAP 系统。 可以选择存储帐户的网络访问设置。
    • 如果选择特定虚拟网络选项中的网络访问,则需要确保在 SAP 系统虚拟机存在的所有子网上启用 Microsoft.存储 服务终结点。 此服务终结点用于允许从 SAP 虚拟机访问托管存储帐户,以访问 ACSS 在 VM 扩展上运行的脚本。
    • 如果选择公共网络访问选项,则需要从 SAP 系统所在的虚拟网络授予对Azure 存储帐户的访问权限。
  • 在包含 SAP 系统的订阅中注册 Microsoft.Workloads 资源提供程序
  • 检查 Azure 帐户是否对 SAP 系统资源所在的订阅或资源组具有Azure SAP 解决方案中心管理员和托管标识操作员角色或同等角色访问权限。
  • 用户分配的托管标识,该标识对计算资源组拥有 Azure SAP 解决方案中心服务角色,并对 SAP 系统的虚拟网络资源组拥有读取者角色访问权限。 Azure SAP 解决方案中心服务使用此标识来发现你的 SAP 系统资源并将系统注册为 VIS 资源。
  • 确保 SAP 系统的 ASCS、应用程序服务器和数据库虚拟机处于“正在运行”状态。

SAP 系统级先决条件

  • SAPcontrol 和 saphostctrl exe 文件必须存在于 ASCS、应用服务器和数据库上。
    • Linux VM 上的文件路径:/usr/sap/hostctrl/exe
    • Windows VM 上的文件路径:C:\Program Files\SAP\hostctrl\exe\
  • 请确保 sapstartsrv 进程在所有 SAP 实例上运行,并为 SAP 系统中的所有 VM 上的 SAP hostctrl 代理运行
    • 若要启动 hostctrl sapstartsrv,请对 Linux VM 使用此命令:“hostexecstart -start”
    • 若要启动实例 sapstartsrv,请使用命令:“sapcontrol -nr 'instanceNr' -function StartService S0S”
    • 若要检查 hostctrl sapstartsrv 的状态,请对 Windows VM 使用此命令:C:\Program Files\SAP\hostctrl\exe\saphostexec –status
  • 若要成功发现和注册 SAP 系统,请确保 ASCS、应用和 DB VM 之间存在网络连接。 应用实例主机名的“ping”命令必须从 ASCS VM 成功。 数据库主机名的“ping”必须从应用服务器 VM 成功。
  • 在应用服务器配置文件中,SAPDBHOST、DBTYPE、DBID 参数必须配置正确的值,以便发现和注册数据库实例详细信息。

支持的系统

可将在以下配置上运行的 SAP 系统注册到 Azure SAP 解决方案中心:

  • SAP NetWeaver 或 ABAP 堆栈
  • Windows、SUSE 和 RHEL Linux 操作系统
  • HANA、DB2、SQL Server、Oracle、Max DB 和 SAP ASE 数据库
  • 在单个虚拟机上具有多个应用程序服务器实例的 SAP 系统
  • 具有 群集应用程序服务器体系结构的 SAP 系统

Azure SAP 解决方案中心中不支持以下 SAP 系统配置:

  • HANA 大型实例 (HLI)
  • 具有 HANA 横向扩展、MCOS 和 MCOD 配置的系统
  • Java 堆栈
  • 双堆栈(ABAP 和 Java)
  • 跨对等互连的虚拟网络分布的系统
  • 使用 IPv6 地址的系统
  • 在同一组虚拟机上运行的多个 SID。 例如,共享 ASCS 实例单个 VM 的两个或多个 SID。

启用资源权限

将现有 SAP 系统注册为 VIS 时,Azure Center for SAP 解决方案服务需要一个用户分配的托管标识,该标识在 SAP 系统的虚拟网络资源组上具有 Azure Center for SAP 解决方案服务角色访问权限(VM、磁盘、负载均衡器)资源组和读取者角色访问权限。 在向 Azure SAP 解决方案中心注册 SAP 系统之前,请创建新的用户分配托管标识或更新现有托管标识的角色访问权限。

Azure SAP 解决方案中心使用此用户分配的托管标识在 ASCS、应用程序服务器和数据库 VM 上安装 VM 扩展。 Azure SAP 解决方案中心可通过此步骤发现 SAP 系统组件和其他 SAP 系统元数据。 需要用户分配的托管标识才能启用 SAP 系统监视和管理功能。

设置用户分配的托管标识

要将 SAP 系统资源的权限提供给用户分配的托管标识:

  1. 如果需要,创建一个新的用户分配托管标识或使用现有标识。
  2. Azure Center for SAP 解决方案服务角色角色分配对资源组(s)上具有 SAP 系统和读取者角色的虚拟机、磁盘和负载均衡器具有 SAP 系统的虚拟网络组件的资源组上的用户分配托管标识的访问权限。
  3. 一旦分配了权限,这个托管的标识就可以在 Azure SAP 解决方案中心中用于注册和管理 SAP 系统。

托管存储帐户网络访问设置

ACSS 将 托管存储帐户 部署到订阅中,用于注册的每个 SAP 系统。 使用 Azure 门户、PowerShell 或 REST API 注册 SAP 系统时,可以选择 存储帐户的网络访问 设置。 可以选择公用网络访问,也可以从特定虚拟网络进行访问。

若要保护托管存储帐户并仅限制对具有 SAP 虚拟机的虚拟网络的访问,可以选择网络访问设置作为“启用特定虚拟网络的访问”。 可以在本文档中了解有关存储帐户网络安全的详细信息。

重要

限制对特定虚拟网络的存储帐户网络访问时,必须配置 Microsoft。存储与要注册的 SAP 系统相关的所有子网上的服务终结点。 如果未启用服务终结点,将无法成功注册系统。 此方案目前不支持托管存储帐户上的专用终结点。

选择限制对特定虚拟网络的网络访问时,Azure Center for SAP 解决方案服务会基于与 VIS 资源关联的托管标识使用 受信任的访问 来访问此存储帐户。

注册 SAP 系统

在 Azure SAP 解决方案中心注册现有 SAP 系统:

  1. 登录 Azure 门户。 请确保使用具有 Azure Center for SAP 解决方案管理员托管标识操作员 角色的 Azure 帐户登录,以访问 SAP 系统所在的订阅或资源组。 有关详细信息,请参阅资源权限说明

  2. 在 Azure 门户的搜索栏中,搜索并选择“Azure SAP 解决方案中心”

  3. 在“Azure SAP 解决方案中心”页上,选择“注册现有 SAP 系统”

    Screenshot of Azure Center for SAP solutions service overview page in the Azure portal, showing button to register an existing SAP system.

  4. 在“注册现有 SAP 系统”页的“基本信息”选项卡上,提供有关 SAP 系统的信息

    1. 对于“ASCS 虚拟机”,请选择“选择 ASCS 虚拟机”,然后选择 ASCS VM 资源

    2. 对于“SID 名称”,请输入 SID 名称

    3. 对于“SAP 产品”,请从下拉菜单中选择 SAP 系统产品

    4. 对于“环境”,请从下拉菜单中选择环境类型。 例如,生产或非生产环境。

    5. 对于托管标识源,请选择“使用现有的用户分配的托管标识”选项。

    6. 对于 托管标识名称,请选择一个 用户分配的托管标识 ,该标识具有 Azure Center for SAP 解决方案服务角色读取者 角色对此 SAP 系统的相应资源的访问权限。

    7. 对于 托管资源组名称,可以选择根据组织的命名策略输入资源组名称。 此资源组由 ACSS 服务管理。

    8. 对于 托管存储帐户名称,可以选择根据组织的命名策略输入存储帐户名称。 此存储帐户由 ACSS 服务管理。

    9. 对于存储帐户网络访问,请选择“启用来自特定虚拟网络的访问”,以增强托管存储帐户的网络安全性访问。

    10. 选择“查看 + 注册”以发现 SAP 系统并开始注册过程

      Screenshot of Azure Center for SAP solutions registration page, highlighting mandatory fields to identify the existing SAP system.

    11. 在“查看 + 注册”窗格中确保设置正确。 然后,选择“注册”。

  5. 等待 VIS 资源创建完成。 VIS 名称与 SID 名称相同。 在你选择的 ASCS VM 中发现所有 SAP 系统组件后,VIS 部署即告完成。

现在可以在 Azure 门户中查看 VIS 资源。 资源页显示 SAP 系统资源以及有关系统的信息。

如果注册失败,请参阅在 Azure SAP 解决方案中心中注册 SAP 系统失败时该怎么办。 修复导致问题的配置后,请使用 vis 资源页上Azure 门户的“重试”操作重试注册。

修复注册失败

  • 如果不满足任何先决条件,向 Azure Center for SAP 解决方案注册 SAP 系统的过程可能会失败。
  • 查看先决条件并确保按建议配置。
  • 查看Azure 门户上 VIS 资源上显示的任何错误消息。 遵循任何建议的操作。
  • 修复导致问题的配置后,请使用 Azure 门户 上 SAP 解决方案虚拟实例页上提供的重试操作重试注册。

错误 - 未能从数据库 VM 中发现详细信息

当 SAP 系统上的数据库标识符配置不正确时会发生此错误。 一种可能的原因是应用程序服务器配置文件参数 rsdb/dbid 使用了 HANA 数据库的错误标识符。 若要修复此错误:

  1. 停止应用程序服务器实例:

    sapcontrol -nr <instance number> -function Stop

  2. 停止 ASCS 实例:

    sapcontrol -nr <instance number> -function Stop

  3. 打开应用程序服务器配置文件。

  4. 为 HANA 数据库添加配置文件参数:

    rsdb/dbid = <SID of HANA Database>

  5. 重启应用程序服务器实例:

    sapcontrol -nr <instance number> -function Start

  6. 重启 ASCS 实例:

    sapcontrol -nr <instance number> -function Start

  7. 删除注册失败的 VIS 资源。

  8. 再次注册 SAP 系统

错误 - Azure VM 代理未处于所需预配状态

原因: 当 Azure VM 代理的预配状态不符合指定虚拟机的预期时,会出现此问题。 预期状态为 “就绪”。 通过在 VM 概述页中检查属性部分来验证代理状态。

解决方案: 若要修复 Linux VM 代理,请执行以下操作:

  1. 使用堡垒或串行控制台登录到 VM。
  2. 如果 VM 代理存在且未运行,请重启 waagent。
  • sudo systemctl status waagent。
  1. 如果服务未运行,请重启此服务。 若要重启,请使用以下步骤:
  • sudo systemctl stop waagent
  • sudo systemctl start waagent
  1. 如果无法解决此问题,请尝试使用 本文档更新 VM 代理
  2. 如果 VM 代理不存在或需要重新安装,请遵循 本文档

若要修复 Windows VM 代理,请按照 Azure Windows VM 代理故障排除操作

后续步骤