架构:SAP Hybris 部署

本文介绍用于在 Google Cloud Platform (GCP) 上部署 SAP Hybris 的架构。SAP Hybris 是为实现可扩展性、高流量和高订单量而设计的商务平台。SAP Hybris 平台支持企业对企业 (B2B) 和企业对消费者 (B2C) 工作负载。本文介绍用于 B2B 和 B2C 部署的 SAP Hybris 架构组件,并说明如何使用 GCP 对其进行部署。

SAP Hybris 组件架构

SAP Hybris 平台包含以下组件:

  • 用于提供静态内容和定向动态请求的网络服务器,例如 Apachenginx
  • 用于运行 SAP Hybris 核心应用的 Java 应用服务器。默认情况下,SAP Hybris 使用 Apache Tomcat
  • 用于存储客户、采购和产品数据的数据库服务器,例如 Microsoft SQL Server
  • 用于页面和会话缓存的可选缓存机制,例如 Redis
  • 用于产品搜索的可选搜索机制,例如 Apache Solr

只需两步即可部署 SAP Hybris:

  1. 部署之前列表中所述的架构组件。
  2. 在 Java 应用服务器中部署和配置 SAP Hybris 应用。

下图显示了用于 SAP Hybris 部署的高级组件架构示例,其中包括可选的搜索和缓存组件。

SAP Hybris 架构显示对 App Server 的网络服务器馈送,App Server 则具有缓存、搜索和数据库服务器组件

为 SAP Hybris 选择云架构

SAP Hybris 使用 GCP 支持多项部署配置。根据您的部署和管理需求,您可以使用 Compute EngineKubernetes Engine 部署核心 SAP Hybris 平台:

  • 如果您有配置和运行 SAP Hybris 以及运行 Kubernetes 的经验,那么 Kubernetes Engine 是一个不错的选择。
  • 如果您有在裸机或虚拟机 (VM) 实例上运行 SAP Hybris 的经验,不妨选择 Compute Engine。

本文介绍了这两种配置。如需详细了解要选择哪个计算选项,请参阅选择计算选项

本文中介绍的 SAP Hybris 部署使用 Compute Engine 上的 SQL Server 作为数据库服务器。

使用 Kubernetes Engine 部署 SAP Hybris

下图显示了 Kubernetes Engine 和 Compute Engine 上的 SAP Hybris 部署示例,其中包括可选的搜索和缓存组件。

使用 Kubernetes Engine 情况下的 SAP Hybris 架构

在此架构中,网络服务器、应用服务器和缓存组件部署在 Kubernetes Engine 上。数据库服务器和搜索组件部署在 Compute Engine 上。

数据库服务器组件是 SQL Server。 Cloud Load Balancing 将传入请求定向到 Kubernetes Engine 网络服务器 Pod 和服务。

要使用 Kubernetes Engine 部署 SAP Hybris,您需要将网络服务器、核心 SAP Hybris Java 应用和缓存机制打包到各个 Docker 容器中。接下来,您创建 Kubernetes 清单以将 Docker 容器映射到您要部署的 Pod 和服务。

使用 Kubernetes Engine 时,您需要创建两个跨越单个区域内多个地区的虚拟私有云 (VPC) 子网:

  • 第一个子网包含网络服务器的 Kubernetes Engine 集群。
  • 第二个子网包含 Java 应用服务器和缓存机制的 Kubernetes Engine 集群。第二个子网还包含用于搜索和数据库组件的 Compute Engine 实例,可最大限度减少应用服务器与搜索和数据库系统之间的延迟时间。该子网中的 Compute Engine 实例使用仅限内部使用的 IP 地址来阻止公共访问。您可以使用防火墙规则将子网配置为仅允许来自网络服务器子网的访问。此配置会向该子网中的组件添加附加安全层。

要实现高可用性,您可以按以下步骤配置 SAP Hybris 部署:

  1. 跨单个区域内的多个地区部署 Kubernetes Engine 集群。如需了解详情,请参阅多地区 Kubernetes Engine 集群概览
  2. (可选)配置集群以使用 Kubernetes Engine 集群自动调节程序。自动调节程序根据已饱和或未充分利用的资源自动调整大小。
  3. 配置 SQL Server 可用性组,启用可用性高的数据库部署。
  4. 跨多个地区部署搜索组件。

使用 Compute Engine 部署 SAP Hybris

下图显示了在 Compute Engine 上部署 SAP Hybris 的示例,其中包括可选的搜索和缓存组件,而非 Kubernetes Engine。

使用 Compute Engine 情况下的 SAP Hybris 架构

在此架构中,网络服务器、应用服务器、数据库服务器、缓存和搜索组件全都部署在 Compute Engine 上。数据库服务器组件是 SQL Server。Cloud Load Balancing 将传入请求定向到 Compute Engine 网络服务器实例。

使用 Compute Engine 而非 Kubernetes Engine 时,您需要创建两个跨越单个区域内多个地区的 VPC 子网:

  • 第一个子网包含网络服务器的 Compute Engine 实例。
  • 第二个子网包含应用服务器、数据库服务器、缓存和搜索组件的 Compute Engine 实例。该子网中的实例使用仅限内部使用的 IP 地址来阻止公共访问。您可以使用防火墙规则将子网配置为仅允许来自第一个子网的访问。此配置会为这些组件添加附加安全层。

要实现高可用性,您可以按以下步骤配置 SAP Hybris 部署:

  • 跨单个区域内的多个地区部署 Compute Engine 实例。
  • 托管实例组中部署网络服务器和应用服务器实例,以简化管理。
  • 跨与应用服务器 Compute Engine 实例相同区域内的多个地区部署缓存和搜索组件。
  • 配置 SQL Server 可用性组,启用可用性高的数据库部署。

后续步骤