介绍用于 DevOps 的 SAP BTP 服务
学习目标
列出属于 SAP BTP 上推荐 DevOps 设置一部分的 DevOps 服务。
注意
本课主要面向管理员,但参与其中的任何角色都能从中受益。
尽管你已经了解了一些 SAP BTP 服务和产品,本课将引导你了解在 SAP BTP 上实施 DevOps 原则的推荐设置。
你将了解所有 SAP BTP DevOps 服务,包括简要说明以及可能的替代方案(以防你希望在生命周期的某些环节偏离推荐设置)。
SAP BTP 上 DevOps 的推荐设置
如果你想借助 SAP BTP 实施推荐的 SAP DevOps 方法,请使用本节查找有关所涉及的 SAP BTP 云服务的更多信息。在下面的示例图中,你可以看到若干 SAP BTP 子账户,它们的用途如下:
开发 (DEV)——用于开发你的应用
测试
用于在具有代表性的环境中测试你的应用
生产 (PROD)——用于发布最终用户将采用的应用版本
你可以为不同的团队或组织设置多个三层架构环境。此外,如下所示,你可能还会有更多用于启用 DevOps 的云服务的中心子账户。
该示例展示了将 DevOps 原则应用于 SAP BTP Cloud Foundry 环境中开发场景的推荐环境架构。
在 SAP BTP 上设置 DevOps 的步骤
1. 设置持续集成(CI)
SAP BTP 上的 DevOps 包含 SAP Continuous Integration and Delivery 服务,这是一个面向 CI/CD 的 “Pipeline-as-a-Service” 产品,并提供针对 SAP 特定用例的模板。这些模板体现了 SAP 在相应开发用例中的最佳实践。借助该产品,你可以在几分钟内为 SAP 特定用例创建一条可运行的 CI/CD 流水线。
2. 开发
随后,开发团队使用该流水线来验证他们的更改,例如在 SAP Business Application Studio 中所做的更改。它提供了一个强大而现代的开发环境,专为高效的业务应用开发而设计。也可以考虑其他开发环境。
更改被推送到基于 Git 的源代码仓库,仓库通过 Webhook 触发关联流水线的执行。随后运行该流水线中的自动化测试,测试结果会就更改的质量向开发者提供反馈:开发是否已完成,或者如果测试失败是否需要更多修改?
3. 交付
流水线还支持将合格的发布候选版本可选地自动移交给传输管理。这使你能够实施标准化的、企业级就绪的变更管理流程,并对生产环境拥有额外的控制权。例如,你可以指定谁可以在特定子账户中发起和处理更改,从而帮助你执行公司政策。此外,你还会获得更改的集中日志,这对审计很有用。
传输管理的推荐选项是 SAP Cloud Transport Management 服务,因为它除了开发内容之外,还支持越来越多应用特定的内容类型。例如,考虑来自 SAP Build Work Zone 的门户站点、来自 SAP Integration Suite 的集成流,或来自 SAP Analytics Cloud 的内容网络包。
增强型变更与传输系统(CTS+)可以作为 SAP Cloud Transport Management 的替代方案。该系统是 ABAP 本地部署服务器的一部分,仅支持多目标应用程序(MTA)归档格式的内容。目前没有计划将 CTS+ 的内容覆盖范围扩展到该格式之外。此外,截至目前,CTS+ 无法集成到变更与部署管理能力中。因此,只有在 CTS+ 已在使用中,并且你确信将来会继续专注于基于 MTA 的内容用例时,才考虑使用它。如果不确定,请使用 SAP Cloud Transport Management。
为了获得更多控制,你可以将传输集成到变更管理流程中,这些流程运行在 SAP Cloud ALM 上,或由 SAP Focused Run/SAP Solution Manager 提供支持的现有流程上。对于混合场景,这些流程允许你将云更改的传播与本地部署更改同步。
4. 运维
SAP Cloud ALM 是 SAP BTP 的中央运维平台。你也可以选择将 SAP Cloud ALM 用作数据代理,例如用于与 SAP Focused Run 集成。
如下所述,SAP Cloud ALM 可与本地可观测性和运维工具集成。SAP Cloud Logging 服务是一个构建于 OpenSearch 之上的可观测性平台,可存储、可视化和分析来自 SAP BTP Cloud Foundry、Kyma、Kubernetes 及其他运行时环境的应用程序日志、指标和跟踪。对于 Cloud Foundry 和 Kyma,它通过提供预定义内容来实现轻松集成,以便根据被观测应用的请求检查其负载、延迟和错误率,并将这些数据与其他数据关联起来。
要启用响应式方法,可考虑使用 SAP Alert Notification 服务来订阅与应用相关的有关事件,例如来自第三方基础设施提供商的事件,或从你的应用创建自定义警报。你还可以接收有关流水线运行结果和已执行传输的通知。
为减少人工工作量并利用建议操作的自动执行(例如从 SAP Cloud ALM 触发或用于补救的警报触发的操作),可考虑使用 SAP Automation Pilot 服务。它提供了一个低代码和无代码自动化引擎,并配有面向日常运维任务和纠正措施的自动化操作目录,使你的 DevOps 团队能够增强在 SAP BTP 上管理应用程序的自动化能力。
SAP Job Scheduling 服务使你能够通过基于 Web 的用户界面或统一的 REST API 来自动化和管理作业、任务和计划。它可用于 SAP BTP Cloud Foundry 和 Kyma 环境。对于多租户应用程序,该服务允许你管理特定于租户的作业和计划。Job Scheduling 服务可确保作业、任务和计划按时执行,从而提升运维效率。你可以将其与 SAP Alert Notification service for SAP BTP 集成,后者会针对失败的作业执行和成功的作业执行发送警报,让你随时了解情况并能迅速采取行动。要在 SAP Cloud ALM 中监控作业执行,你可以在 Dashboard UI 中选择该作业,或通过 REST API 进行选择。
Terraform provider for SAP BTP 允许你自动化 SAP BTP 上资源的预配、管理和配置。使用该提供者,你可以让 SAP BTP 服务和应用程序的部署与维护变得更简单、更高效。它可作为 SAP Automation Pilot 服务中命令的替代方案,尤其是在基础设施和预配管理方面,并且基于被广泛采用的“基础设施即代码”行业标准。
SAP BTP 运维服务可以无缝集成。例如,SAP Alert Notification 服务可以将 SAP BTP 事件路由到 SAP Cloud ALM 的中央健康监控能力中。在那里,你可以访问由 SAP Cloud Logging 提供的日志信息,以分析所报告问题的根本原因。SAP Cloud ALM 还可以触发并编排由 SAP Automation Pilot 服务在 SAP BTP 上执行的自动化运维流程。开放的 API 可用于集成到第三方运维平台。
注意
尽管这些服务高度集成,你也可以决定只使用单个 DevOps 云服务,因为它们之间并不相互依赖。
所列的大多数 SAP BTP DevOps 服务也包含在 SAP Build 中——这是一套全面的代码优先和低代码解决方案,旨在借助生成式 AI 加速应用程序开发。如果你计划使用该产品,可考虑在为 SAP Build 用例进行 SAP Build 入门配置时一并设置这些 DevOps 服务(不过,对于 SAP Build 之外的其他用例,你可能会使用单独的实例)。
SAP Alert Notification 服务
SAP Business Application Studio
SAP Cloud Transport Management
SAP Cloud Logging
SAP Continuous Integration and Delivery
小结
现在你已经了解了将 DevOps 原则应用于 SAP BTP 开发项目的推荐设置,包括所有相关 SAP BTP 服务的概览、它们如何交互,以及可能的替代方案。
延伸阅读
要使用上面列出的服务,你必须通过 SAP BTP Cockpit 订阅它们,并按照 SAP Help Portal 中的说明为每项服务执行初始设置。对于也包含在 SAP Build 中的服务,你也可以选择加入该产品——然后仅将这些实例用于 SAP Build 用例。
SAP Build Code: SAP Build | SAP Help Portal
SAP Continuous Integration and Delivery 服务: 初始设置 | SAP Help Portal
SAP Business Application Studio: 入门指南 | SAP Help Portal
SAP Cloud Transport Management 服务: 初始设置 | SAP Help Portal
SAP Cloud ALM:
SAP Cloud ALM 入门学习路径 | SAP Learning
使用 SAP Cloud ALM 实施学习路径 | SAP Learning
使用 SAP Cloud ALM 运维学习路径 | SAP Learning
SAP Cloud Logging 服务: 初始设置 | SAP Help Portal
SAP Alert Notification service for SAP BTP: 初始设置 | SAP Help Portal
SAP Automation Pilot 服务: 初始设置 | SAP Help Portal
SAP Job Scheduling 服务:初始设置 | SAP Help Portal
Terraform provider for SAP BTP:
开始使用 Terraform Provider for BTP | SAP Tutorials
外部页面
本课其余配图
