mcpField
S
sap-btp-best-practices

sap-btp-best-practices

github.com/secondsky云与 DevOps4801.0k 次安装3 周前更新
代码仓库

关于 sap-btp-best-practices

面向 SAP BTP 架构师和团队的实践指南,汇总账户治理、安全、开发、交付、高可用和运维建议。内容用于规划 BTP 环境并在实施前审查平台方案。

主要功能

  1. 01账户层级与环境规划
  2. 02身份验证和访问控制建议
  3. 03团队治理与开发生命周期指导
  4. 04AI 应用开发模式
  5. 05部署、交付及故障转移规划
  6. 06监控与成本管理建议

适用场景

  1. 01设计 BTP 账户及子账户结构
  2. 02为生产环境制定身份与认证默认项
  3. 03规划跨区域部署和故障恢复
  4. 04审查 CI/CD、监控与成本实践

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/secondsky/sap-skills --skill sap-btp-best-practices

安装后在 Claude Code 中输入/sap-btp-best-practices确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

README.md
agents/
openai.yaml
references/
account-models.md
ai-development-best-practices.md
deployment-and-delivery.md
failover-and-resilience.md
governance-and-teams.md
operations-and-monitoring.md
security-and-authentication.md
templates-and-examples.md

详细介绍

SAP BTP 最佳实践

相关技能

  • sap-btp-cloud-platform:用于技术实现细节、CLI 命令和运行时配置
  • sap-btp-connectivity:用于连接模式、目标配置和 Cloud Connector 设置
  • sap-btp-service-manager:用于服务生命周期管理和编程式服务操作
  • sap-btp-developer-guide:用于开发工作流、CAP 集成和应用模式
  • sap-cap-capire:用于设计 BTP 上的 CAP 应用或实现多租户
  • sap-ai-core:用于 AI Core 平台设置、模型部署和编排配置
  • sap-cloud-sdk-ai:用于在 CAP 或独立 BTP 应用中进行 SDK 级别的 AI 集成
  • sap-fiori-tools:用于 UI 部署策略和前端应用指南

何时使用此技能

在设计 BTP 账户模型、设置治理、选择商务模式/环境模式、确立安全和身份验证默认配置、设计 CI/CD 和运维实践,或在实现前审查 BTP 架构时,请使用此技能。

快速入门

  1. 确定目标账户模型:全局账户、目录、子账户、环境和区域。
  2. 选择运行时路径:Cloud Foundry、Kyma、ABAP Environment 或混合组合。
  3. 应用安全和身份验证中的安全默认配置。
  4. 使用相关实现技能了解详细执行方法:sap-btp-cloud-platform、sap-btp-connectivity、sap-btp-service-manager、sap-cap-capire 或 sap-fiori-tools。
  5. 在更改 last_verified 前,在项目计划中记录生产环境特有的差距。

本文档根据 SAP 官方文档编写,并经过文档审查,提供 SAP BTP 实施指导。只有完成源文档刷新和任何在线账户检查后,last_verified 日期才会更新;在此之前,该日期仍为过期状态。

快速链接:


目录

  1. 平台基础知识
  2. 账户模型设置
  3. 安全和身份验证
  4. 连接
  5. 治理和团队
  6. 开发
  7. AI 开发
  8. 部署和交付
  9. 高可用性和故障转移
  10. 运维和监控
  11. 成本管理
  12. 捆绑资源

平台基础知识

账户层级
Global Account (SAP contract)
├── Directory (optional, up to 7 levels)
│   └── Subaccount (region-specific, apps run here)
│       ├── Cloud Foundry Org → Spaces
│       └── Kyma Cluster → Namespaces
└── Subaccount

要点:

  • 全局账户 = 与 SAP 的合同(每种商务模式对应一个)
  • 目录 = 对子账户进行分组(最多 7 层)
  • 子账户 = 部署在特定区域,用于启用运行时
  • 使用标签进行虚拟分组(开发/测试/生产、成本中心)
环境
环境用例主要特性
Cloud Foundry多语言应用多种 buildpack、空间
Kyma云原生 K8s开源、命名空间
ABAPABAP 扩展RAP、适用于云的 ABAP
Neo遗留系统迁移离开 - HTML5、Java、HANA XS
商务模式
  • 按使用量计费(BTPEA/CPEA):灵活访问,最适合试点项目
  • 订阅制:适用于服务需求明确的固定成本模式

最佳实践:从按使用量计费开始,在工作负载稳定后转为订阅制。


账户模型设置

简单模型(3 个子账户)
Global Account
├── Dev Subaccount
├── Test Subaccount
└── Prod Subaccount

最适合:初始实施、单个团队、少于 3 个项目

目录模型(可扩展)
Global Account
├── Directory: HR
│   ├── hr-dev / hr-test / hr-prod
├── Directory: Sales
│   ├── sales-dev / sales-test / sales-prod
└── Directory: Central IT
    ├── api-management
    └── shared-services

最适合:多个团队、成本分配、复杂治理

命名约定
实体约定示例
子账户自然语言“HR Development”
子域名小写,使用连字符hr-dev-acme
CF 组织公司前缀acme-hr-dev
CF 空间各阶段保持一致hr-recruiting

提示:根据子账户名称推导 CF 组织/Kyma 名称,以保持一致。


安全与身份验证

身份提供商设置

始终使用 SAP Cloud Identity Services - Identity Authentication

Corporate IdP → Identity Authentication (proxy) → SAP BTP

关键步骤:

  1. 添加多位管理员(位于不同时区)
  2. 为所有管理员启用 MFA
  3. 配置安全警报
  4. 在 SAP ID Service 中设置备用管理员
授权方法
方法最适合说明
配置生产环境、用户众多角色集中管理,自动撤销离职人员的访问权限
联合身份验证简单场景实时同步,但扩展性较差
手动仅用于测试设置快速,但不适用于生产环境
目标身份验证

建议使用:

  • PrincipalPropagation - SAP 本地系统
  • OAuth2SAMLBearerAssertion - 第三方系统
  • OAuth2JWTBearer - 用户令牌交换

生产环境中避免使用:

  • BasicAuthentication
  • OAuth2Password

参见:references/security-and-authentication.md,获取完整指南


连接

远程系统访问
  • 互联网服务:使用身份验证的目标
  • 本地系统:目标 + Cloud Connector
Cloud Connector
  • 轻量级本地 Agent
  • 与 SAP BTP 建立安全隧道(无需入站端口)
  • 精细化访问控制
  • 支持 RFC 和 HTTP 协议
  • 支持主体传播

注意:每个子账户都需要单独配置 Cloud Connector。


治理与团队

必需团队

平台工程团队(卓越中心):

  • 管理云环境基础设施
  • 负责账户运营和构建基础设施
  • 制定治理和合规指南
  • 不管理单个应用的生命周期

云开发团队:

  • 遵循 DevOps(既开发又运营)
  • 负责应用生命周期
  • 定期维护(例如,每 6 个月更新一次 UI)
必备文档
  1. 入职文档:组织、应用 ID、时间安排、技术栈
  2. 安全文档:数据敏感度、策略、身份验证框架
  3. 服务目录:目标、构建、架构的模板

开发

编程模型

SAP CAP(Cloud Application Programming Model):

  • 包含语言、库和工具的框架
  • 支持 Java、JavaScript、TypeScript
  • 提供企业级服务和数据模型

ABAP Cloud:

  • 用于云就绪应用的现代 ABAP
  • RAP(RESTful ABAP Programming Model)
  • 面向基于 ABAP 的产品的扩展
开发生命周期
  1. 探索:业务机会、团队角色
  2. 发现:用例、技术选项
  3. 设计:UX 设计、领域驱动设计
  4. 交付:环境设置、开发
  5. 运行和扩展:反馈、优化

AI 开发

SAP BTP 通过 SAP AI Core 提供以下 AI 功能:

  • 生成式 AI(大模型、RAG)
  • 窄域 AI(传统机器学习)

关键资源:

最佳实践:

  • 使用服务密钥进行安全身份验证
  • 实施 PII 数据脱敏
  • 使用 SAP HANA Cloud Vector Engine 构建 RAG
  • 配置内容过滤
  • 监控模型漂移

使用场景:20 多个示例,包括聊天机器人、PDF 提取和采购。

CAP + AI 集成模式:

  • 在 CAP 事件处理程序中使用 SAP Cloud SDK for AI(@sap-ai-sdk/orchestration)——绝不要直接通过 HTTP 调用大模型提供商
  • 通过 MTA(方案:extended)将 AI Core 服务实例绑定到 CAP 应用——凭据由 BTP 管理,不写入代码
  • 在生产环境中始终异步处理大模型调用:返回 202 Accepted,通过 cds.spawn 在后台处理。大模型响应可能需要 30~60 秒,超过 BTP 负载均衡器的超时时间
  • 将提示词外置到 JSON 文件或 CDS 实体中,以便无需重新部署即可更新
  • 对使用 HANA Vector Engine 的 RAG 场景,在 CDS 实体中使用 HANA Cloud Vector(1536) 类型
  • 为使用 AI SDK 处理大型文本负载的 Node.js 容器分配至少 512MB 内存
  • 实施弹性措施:在将大模型输出写入数据库前进行验证(防止注入攻击),并缓存常见响应以控制成本

参见:模式和示例请见 references/ai-development-best-practices.md。CAP 专用代码模式请见 sap-cap-capire 技能。SDK 集成请见 sap-cloud-sdk-ai 技能。


部署和交付

部署方式

Cloud Foundry/Neo:

  • 打包为 MTA 归档文件
  • 通过以下方式部署:BTP Cockpit、CF CLI、Business Application Studio

Kyma:

  • Docker 镜像(Dockerfile 或 Cloud Native Buildpacks)
  • 用于生产环境的 Helm charts
  • 通过 SAP Continuous Integration and Delivery 部署
CI/CD 方法

SAP Continuous Integration and Delivery:

  • 所需专业知识较少
  • 可直接使用的基础设施
  • SAP 直接支持

项目 “Piper”:

  • 所需专业知识较多
  • 基于 Jenkins
  • 开源社区支持

最佳实践:将 CI/CD 与 SAP Cloud Transport Management 结合,实现治理与敏捷性。

参见:详细配置请见 references/deployment-and-delivery.md


高可用性和故障转移

多区域架构
Custom Domain URL
       │
    Load Balancer
       ├── Region 1 (active)
       └── Region 2 (passive/active)
故障转移实现

四项核心原则:

  1. 在两个区域部署:靠近用户和后端系统
  2. 保持同步:使用 CI/CD 流水线或 Cloud Transport Management
  3. 定义检测机制:监控 5xx 错误和超时
  4. 规划故障恢复:进行醒目区分,由用户驱动

法律要求:检查跨区域数据处理限制。

参见:实现详情请见 references/failover-and-resilience.md


运维和监控

上线检查清单
  1. 部署到生产环境
  2. 设定上线时间(避开季度末)
  3. 嵌入 SAP Fiori Launchpad
  4. 配置业务用户
  5. 配置角色集合
监控工具

SAP Cloud ALM(Enterprise Support):

  • 真实用户监控
  • 健康状况监控
  • 集成和异常监控
  • 作业自动化监控

SAP Cloud Logging:

  • 覆盖 CF、Kyma、Kubernetes 的可观测性

SAP Alert Notification:

  • 多渠道通知(电子邮件、聊天、工单)

成本管理

最佳实践
  1. 每月检查 成本和使用情况
  2. 仅提供最低限度的必要授权
  3. 使用标签分摊成本
  4. 设置自动提醒(Usage Data Management + Alert Notification)
合同策略
  • 将订阅整合到一个全局账户中
  • 混合工作负载使用混合账户
  • 注意:消费额度不可在全局账户之间转移

捆绑资源

此技能提供全面的参考文档:

账户与治理
  • references/account-models.md(11K 行)

    • 详细的账户结构模式
    • 命名规范和示例
    • 成本分摊策略
  • references/governance-and-teams.md(13K 行)

    • 平台工程团队结构
    • 入职流程
    • 文档模板
安全与连接
  • references/security-and-authentication.md(13K 行)
    • 完整的身份验证方法对比
    • 目标配置
    • Kyma RBAC 清单
    • 身份生命周期管理
部署与运维
  • references/deployment-and-delivery.md(10K 行)

    • MTA 描述符模板
    • CI/CD 流水线配置
    • 传输管理设置
  • references/operations-and-monitoring.md(11K 行)

    • 上线流程
    • 监控设置指南
    • 故障排查清单
高可用性
  • references/failover-and-resilience.md(12K 行)
    • 多区域架构
    • 负载均衡器配置
    • 故障转移自动化脚本
模板与示例
  • references/templates-and-examples.md(18K 行)
    • 完整代码模板
    • Kubernetes RBAC 清单
    • MTA 描述符
    • Helm 图表
    • CI/CD 配置
AI 开发
  • references/ai-development-best-practices.md(6K 行)
    • 生成式 AI 模式
    • RAG 实现
    • 20 多个用例目录
进度跟踪
  • 实施状态
  • 覆盖详情
  • 验证清单

管理工具

工具使用场景
SAP BTP Cockpit用于所有管理任务的 GUI
btp CLI终端/自动化脚本
REST APIs以编程方式进行管理
Terraform Provider基础设施即代码
SAP Automation Pilot低代码/无代码自动化

共同责任模型

由 SAP 管理:

  • 平台软件更新/补丁
  • 基础设施和 OS 监控
  • BTP 服务监控
  • 容量管理和事件处理
  • 全局账户配置
  • HANA 数据库运维
  • Kyma kyma-system 命名空间

由你管理:

  • 全局账户策略和子账户配置
  • 应用开发、部署和安全
  • 角色分配和集成
  • 应用监控和运行状况检查
  • 开源漏洞扫描
  • 触发 HANA 修订版本更新

最后更新:2026-06-16 审核进度:参见 SAP_SKILLS_REVIEW_PROGRESS.md 下次审核:等待源内容刷新;没有一手来源证据时,不要推进 last_verified。

评论

支持 Markdown