探索 SAP Commerce Cloud 中的 HCS 与 HCS_ADMIN

116 阅读6分钟

在 SAP Commerce Cloud Portal 中,HCS 是 Hybris Commerce Suite 的缩写,用于标识与云端部署和管理相关的一整套服务和功能 (primeinstitute.com)。同时,SAP 在早期的私有云版本(即 CCv1)中,HCS 也曾被称为 HANA Cloud Services,由 SAP HANA Cloud Services 团队负责基础设施管理 (SQLI)。在当前的公有云版本(CCv2)中,Portal 上提供了两类核心服务:hcs_common 和 hcs_admin,它们分别用于不同范围的配置管理与平台运维操作 (primeinstitute.com)。

HCS 的含义

HCS 是什么缩写

HCS 即 Hybris Commerce Suite,在 SAP Commerce Cloud Portal 的环境配置中出现的 hcs_commonhcs_admin 即源于此缩写 (primeinstitute.com)。

历史背景:HANA Cloud Services

当 SAP 首次推出私有云版本的 Commerce Cloud 时,该服务由 SAP HANA Cloud Services 团队管理,因此也曾将 HCS 理解为 HANA Cloud Services (SQLI)。随着产品演进,SAP 将其公有云版本迁移至 Microsoft Azure 平台,并重命名为 CCv2,同时沿用 HCS 缩写以兼容旧有概念。

hcs_common 与 hcs_admin 服务概览

在 CCv2 Portal 的 Environments > Services 菜单下,可分别找到 hcs_commonhcs_admin 两种服务视图 (SAP Help Portal)。二者的主要区别在于所影响的配置范围和运维场景:

  • hcs_common:此服务面向所有平台组件,用于定义和管理公共配置属性,适用于影响多个服务实例的全局参数 (primeinstitute.com)。
  • hcs_admin:此服务专注于平台运维操作,包括系统初始化、系统更新以及通过 Ant 命令执行的各类管理功能 (primeinstitute.com)。

hcs_common 服务

接入 Portal 后,选择 hcs_common 可进入属性编辑界面,在此可对以下场景下的参数进行统一管理:

  • HAC 配置同步:可通过 Portal UI 或 API 将 HAC(Hybris Administration Console)中的配置属性推送至所有节点,避免手动登陆每台服务器调整 (Stack Overflow)。
  • 环境特定参数:在迁移或多环境部署时,可利用 hcs_common 存储环境标识(如 development、staging、production),并在运行时动态加载属性值 (Hybrismart)。
  • 自定义扩展加载:部分 Cloud 专用扩展会在构建过程中自动注入,若需禁用或修改,可在 hcs_common 中配置对应属性。

Portal UI 示例:

  1. 打开 portal.commerce.ondemand.com/,登陆后选择目标 Subscription。
  2. 进入 Environments,选中某个环境后在 Services 列表中点击 hcs_common
  3. 切换至 Properties 选项卡,编辑或新增属性,保存即可 (SAP Help Portal)。

通过 putProperty API 自动化管理

SAP 提供的 REST API 允许通过 putProperty 端点批量设置 hcs_common 属性,便于 CI/CD 流水线自动化 (SAP Support Portal)。不过,应用后仍需调用 “Apply Configuration” 按钮或触发对应的滚动重启才能在所有节点生效。

hcs_admin 服务

在 Cloud Portal 中切换到 hcs_admin,可管理与平台运维相关的操作属性:

  • 初始化密码:查看和复制实例初始化时生成的各类管理员用户密码,确保在本地或远程 HAC 中使用正确凭据 (SAP Help Portal)。
  • 系统更新控制:通过设置 endpoint.hac.platform.update.disabled=falseendpoint.hac.platform.init.disabled=false 等属性,可隐藏或启用 HAC 中的更新与初始化菜单 (LinkedIn)。
  • 部署脚本执行:指定 Ant 构建脚本或 Groovy 脚本的执行参数,支持定制化运维流程。

CLI 示例:

ccv2ctl get initialpassword <subscription>
ccv2ctl set customerproperties <subscription> --aspect hcs_admin --propertyfile hcs_admin.properties

上述命令可分别获取初始密码并批量更新 hcs_admin 属性 (GitHub)。

在实际场景中的应用示例

通过 CCv2 Portal 修改 HAC 属性

当需要紧急修改 HAC 中的某个平台配置时,结合 hcs_common 即可避免登陆 HAC,直接在 Portal 一键下发配置并进行滚动重启 (Stack Overflow)。

通过 ccv2ctl CLI 管理属性

借助开源工具 ccv2ctl,可在 CI/CD 环境中无缝集成属性管理。例如:

echo storefront.name=myShop | ccv2ctl set customerproperties c0deba5e --aspect hcs_common

上述命令可在无需 UI 的情况下,动态更新指定订阅下的公共属性 (GitHub)。

隐藏 HAC 菜单项的案例

某项目需要禁止前端管理员误操作系统更新菜单,可在 hcs_common 中新增属性 endpoint.hac.platform.update.disabled=trueendpoint.hac.platform.init.disabled=true,然后点击 Background processing 重启服务即可 (LinkedIn)。

案例研究:迁移到 CCv2 时的配置策略

在从私有云(CCv1)迁移至公有云(CCv2)的过程中,团队通常需要重新梳理配置管理策略:

  • 将原本写死在本地属性文件中的参数,迁移至 hcs_common 便于统一管理和审计。
  • 针对只影响后台处理的初始化或更新操作,使用 hcs_admin 进行功能隔离。
  • 在 CI/CD 流水线中加入脚本,通过 API 或 ccv2ctl 预先注入环境标识及资源配置 (Hybrismart)。

这一实践不仅提升了多环境部署的一致性,还加速了团队对紧急问题的响应速度。

结语

总体而言,HCS(Hybris Commerce Suite)在 SAP Commerce Cloud 中代表了对云端电商平台的全面管理能力,而 hcs_commonhcs_admin 则分别承担了全局配置与运维操作的两大职责。通过 Portal UI、REST API 与 CLI 工具的有机结合,团队可灵活、高效地维护复杂的云端环境,确保电商系统的稳定与可扩展性。在未来的项目中,建议根据业务需求合理划分配置维度,充分利用 hcs_common 进行环境参数管理,并在需要精细化运维时借助 hcs_admin 进行精准控制,进而构建更加可靠的电商平台运维架构。