原文标题:Getting Started with SAP Commerce Cloud

英文版地址:https://www.sap.com/cxworks/article/433893880/getting_started_with_sap_commerce_cloud

Before we begin, it is important to differentiate between the SAP Commerce Cloud in the Public Cloud, released on the 4th of June 2018, and the previous version of SAP Commerce Cloud, which we will refer to in this document as “SAP Commerce Cloud on SAP Infrastructure”.

SAP 于 2018 年 6 月 4 日 发布了 SAP Commerce Cloud 部署在 Public Cloud(公有云)上的版本,区别于之前部署在 SAP infrastructure 上的 Commerce Cloud 版本。

With SAP Commerce Cloud on SAP Infrastructure, it is your responsibility to build packages for deployment (following the latest Deployment Package Guidelines). Deployments and maintenance of the environments are then managed by SAP Cloud Services.

部署在 SAP infrastructure 上的 Commerce Cloud,客户需要自行构建用来部署的包。环境部署和维护,由 SAP Cloud Services 完成。

Additionally, a VPN tunnel is required to reach backoffice nodes.

需要使用 VPN tunnel 访问 Backoffice 节点。

With the SAP Commerce Cloud in the Public Cloud, the process to provision environments, build the code, and deploy to public cloud infrastructure is self-managed through the SAP Commerce Cloud Portal.

使用公有云部署的 SAP Commerce Cloud 之后,provision 环境,构建代码,部署到公有云的流程均通过 SAP Cloud portal 完成。

Commerce Cloud 构建

The SAP Commerce Cloud build process uses the standard commerce build process.

SAP Commerce Cloud 使用 Commerce 标准构建过程。

However, if the build process is customized (for example, using build callbacks), there is a possibility that these customizations will be incompatible with the SAP Commerce Cloud build process.

如果构建过程被定制化,比如加入了 build callback,则有可能这些定制化同 SAP Commerce Cloud build 流程不兼容。

A larger degree of customization will increase the risk of build incompatibilities. Therefore any customizations, like the build callback logic, should be kept to a minimum and should be thoroughly tested on SAP Commerce Cloud.

因此尽量避免使用这些定制化 build 流程。

SAP Commerce Cloud relies on the Manifest.json file to configure the build.

SAP Commerce Cloud 使用 manifest.json 来配置 build 过程。

It does not support alternative recipes or custom recipes like those found for on-premise installations of SAP Commerce Cloud.

SAP Commerce Cloud 不支持 类似 On-Premises 平台那种自定义 recipes.

Users of recipes will need to adapt their recipe to the Manifest file (see the Code Repository section below).

You may wish to set up your manifest.json file for Configuration Reuse in order to make Developing Locally simpler.

Additionally, the SAP Commerce Cloud build process cannot be customized beyond the configuration options available in the Manifest.json file, as well as the configuration and customization options that the standard commerce build process supports.

除了 manifest.json 文件提供的配置选项以外, SAP Commerce Cloud build 流程不支持其他的定制化。

Failures in the build process are reported in the build log which is available as part of the build details in Cloud Portal.

构建失败的错误会包含在构建日志里,构建日志也是 Cloud Portal 构建明细的一部分。

SAP Commerce Cloud 构建流程如下:

Aspect Configuration

The SAP Commerce Cloud build process picks up the code designated through the Commerce Cloud Portal build options as well as all the required extensions to build the Docker images.

SAP Commerce Cloud 构建流程通过选取基于 Commerce Cloud Portal build option 指派的代码,以及必需的 extension 来构建 Docker 镜像。

These are then used to create the environments as per the Aspect Configuration of the Manifest.json file.

这些资源随后按照 manifest.json 里包含的 aspect 配置信息,创建 Commerce 环境。

You can think of an aspect as a role that a node is set up to perform.

可以将 aspect 看成一个 node setup 之后扮演的一个角色。

A fixed platform cluster layout is used. This means that the same base SAP Commerce Docker image is used with different aspects, enabling individual scaling per group of nodes, and separation of concerns.

一个固定的平台集群布局被使用,这意味着同样的基础 SAP Commerce Docker 镜像被使用,伴随以不同的 aspect,能允许节点组进行 scaling 操作和关注点分离。

The aspect types are fixed but they can be configured using the aspects section of the manifest file.

Aspect 类型本身是固定的,但能够在 manifest.json 的 aspects 区域进行配置。

The following table demonstrates how functionalities and modules could be distributed across the cluster:

下面的表格,展示了功能和 module 如何通过配置,到达跨 cluster 分发的效果:

Each subscription of SAP Commerce Cloud has its environments provisioned with its own Kubernetes cluster that orchestrates computing, networking, and other infrastructure aspects on behalf of user workloads.

每个 SAP Commerce Cloud subscription 都有自己的 environment,通过自己专属的 Kubernetes 集群供应,提供计算,网络和其他基础设施。

A key aspect of SAP Commerce Cloud is that SAP Commerce Cloud instances are always deployed with a consistent and fixed resource (cores and memory) footprint for each node of a particular aspect in each environment.

SAP Commerce Cloud 一大特点就是,对于每个环境的 aspect,其实例总是基于统一而固定的资源进行部署,比如固定的 CPU 核心和内存。

All server clusters and their allocated resources (CPU/RAM) in all environments are managed exclusively by SAP.

所有服务器集群和其分配的资源,比如 CPU/RAM,都由 SAP 统一管理。

Because resources are fixed, it also means only horizontal scaling (increasing the number of instances) is supported.

因为采取了固定资源的分配策略,这意味着 SAP Commerce Cloud 只支持水平扩展,即增加实例个数的方式。

Vertical scaling (increasing the resources on an existing virtual machine) is not supported.

SAP Commerce Cloud 垂直扩展不支持。

The below sample configuration for go-live shows three primary nodes and at least three nodes.

下图展示了 SAP Commerce Cloud 一个例子部署选项,至少包含三个主要节点。

Each node (described in the Nodes section below) is configured with Docker and Kubelet to allow deploying the Docker images created by the SAP Commerce Cloud build process.

每个节点都配置了 Docker 和 Kubelet 软件,允许经过 SAP Commerce Cloud build 流程创建的 Docker 镜像,部署到节点上。

nodes

A node is a worker machine in Kubernetes, previously known as a minion.

node 是 Kubernetes 世界里的工作机,以前被称为 minion.

A node may be a virtual machine (VM) or a physical machine, depending on the cluster.

节点既可以是物理机,也可以是虚拟机。

Each node has the services necessary to run pods, and is managed by the primary components.

每个节点上都有需要运行 pods 所必需的服务,节点被 primary 组件管理。

容器

Containers

A container is a runtime instance of an image (what the image becomes in memory when actually executed).

容器是镜像的运行时实例,当镜像被执行时,首先被加载到内存里。

Containers run apps natively on the host machine’s kernel.

容器在宿主机的内核里以原生发生运行应用。

They have better performance characteristics than virtual machines that only get virtual access to host resources through a hypervisor.

这种方式比起传统的虚拟机采取 hypervisor 的方式获得对宿主机资源的访问相比,性能大大提高。

Environments

There are three main environment types that can be provisioned within the SAP Commerce Cloud Portal: Development, Stage and Production.

SAP Commerce Cloud Portal 能够供应的三大环境:Development, Stage and Production.

开发环境的配置

最少包含:

  • Kubernetes cluster of one primary E2 and two workers F8 VMs
  • One S2 (Standard 2) database

Stage Environment

At a minimum:

  • Kubernetes cluster of three primary F8 and two workers F16 VMs.
  • One S4 (Standard 4) database. Does not support asynchronous replication.

生产环境的配置

最少包含:

  • Kubernetes cluster of three primary F8 and four workers F16 VMs.
  • One P2 (Premium 2) database; provides better reliability than other tiers, and the possibility of asynchronous replication to other data centers with the same code base.

Ephemeral Disk Storage - 非持久化磁盘存储

With SAP Commerce Cloud, the application servers provisioned do not have persistent hard drives attached.

在 SAP Commerce Cloud 里,应用服务器没有挂接提供持久化存储的磁盘。

Therefore, applications should not rely on files written to disk to be available long term (disk storage is ephemeral and will therefore disappear when Kubernetes replaces the Commerce node).

因此,应用程序不能指望着写入磁盘的文件具有长期的持久化生命周期,因为磁盘存储在 Kubernetes 替换 Commerce 节点时,会被销毁。

Cloud storage should be used for files that are required to exist beyond the lifetime of a SAP Commerce application instance.

如果确实存在需要文件存活生命周期超过 Commerce 应用实例生命周期的应用场景,必须使用 Cloud 存储。

SAP Commerce Cloud provides the Cloud Hot Folders feature , which is used for importing files from the Azure Blob Store.

SAP Commerce Cloud 提供 Cloud hot 文件夹特性,用于从 Azure Blob Store 中导入文件。

Relational Database

SAP Commerce Cloud uses the Azure SQL Database.

Any instances where projects are writing direct SQL queries should be reviewed and tested to ensure consistency with this standard.

SAP Commerce Cloud 使用 Azure SQL 数据库,尽量避免直接的 SQL query.

There may be times where you wish to save the state of your database in case you want to roll back to it in the future. The Snapshot and Restore feature allows you to do this and we recommend to periodically save a snapshot of your database.

可以保存数据库的状态,以备将来回滚之用。

Web Tier

SAP Commerce Cloud uses Apache Web Server to serve web traffic and provides a standard configuration optimized for running a SAP Commerce Cloud storefront.

SAP Commerce Cloud 使用 Apache Web 服务器来 serve 网络请求,运行 Storefront.

Access to web servers is not permitted but the following configuration options are available in the SAP Commerce Cloud Portal for the Web Tier:

无法直接访问 web 服务器,但可以通过 Cloud Portal 进行下列配置。

  1. Endpoints (virtual hosts) can be mapped onto applications running on SAP Commerce Cloud.

可以将 endpoints,即虚拟主机吗,映射到应用上。

They are automatically allocated a DNS name. 这些 endpoints 自动被分配一个 DNS name.

  1. SSL Certificates can be assigned to an endpoint.

  2. IP Filters can be defined for an endpoint, ensuring that only traffic from certain IP addresses can access an endpoint.

可以通过 IP filters,实现只有来自指定的 IP 地址,才能访问 endpoint 的需求。

更多Jerry的原创文章,尽在:“汪子熙”:

SAP Commerce Cloud 概述相关推荐

  1. SAP Commerce Cloud 架构概述

    SAP Commerce Cloud Architecture 尽管我们在"SAP Commerce Cloud 入门"一文中介绍了 SAP Commerce Cloud 的一些高 ...

  2. SAP Commerce Cloud 的 Security 策略概述

    通过将防火墙规则和 SSL 证书应用到端点(API endpoint)并通过配置其他参数,来优化 SAP Commerce Cloud 的安全操作和管理其安全性. IP Filter Sets IP ...

  3. SAP Commerce Cloud Storefront 框架选型:Accelerator 还是 Spartacus?

    Choosing Which Storefront to Use for Your SAP Commerce Cloud Solution 有许多使用 SAP Commerce Cloud 创建店面的 ...

  4. 将您的基于 Accelerator 的 SAP Commerce Cloud Storefront 迁移到 Spartacus Storefront

    原文:Migrate Your Accelerator-based Storefront to Project Spartacus 如果您已阅读过"迁移到 Spartacus javascr ...

  5. 如何构建和部署 SAP Commerce Cloud 项目

    原文链接 SAP Commerce Cloud 提供了许多自助服务功能来配置.构建和部署商务解决方案. 当您第一次开始使用时,似乎需要了解很多.在本文中,我们将带您逐步了解如何使用自助服务功能来配置您 ...

  6. SAP Commerce Cloud B2B Organization 功能简介

    Spartacus B2B Commerce Organization 允许公司管理通过 Spartacus 商务网站进行的采购. 可以将公司的采购经理设置为商业组织的管理员. 管理员可以创建代表组织 ...

  7. 什么是 SAP Commerce Cloud 的 catalog

    hybris 的目录实际上是业务元素的集合.因此,Catalog 可以看作是商品的容器,这些产品在 SAP Commerce Cloud 里是可销售的实体(产品),最终用户可以针对这些实体进行交易. ...

  8. SAP Commerce Cloud Accelerator theme css 加载的问题和 multi step checkout

    下图是 SAP Commerce Cloud multi step checkout 的页面: url:https://localhost:9002/yacceleratorstorefront/el ...

  9. SAP Commerce Cloud SmartEdit 学习笔记

    官方文档 SmartEdit 是一个可插拔的 JavaScript 框架,附带一个 UI,使开发人员能够管理现有的网页. SmartEdit 生态系统由共同提供 SmartEdit 产品的 modul ...

最新文章

  1. 不符合核销规则条件_对不起!您不符合2020年初级报考条件
  2. go语言服务器运行,Go语言实现Web服务器
  3. android删除键监听,「React Native」Android返回键监听
  4. kotlin 小数位数_Kotlin程序生成4位数OTP
  5. Android 6.0权限分组
  6. linux 命令详解 二十四
  7. HDU 漫步校园 (记忆化搜索)
  8. asp.net mvc 如何调用微信jssdk接口:分享到微信朋友(圈)| 分享到qq空间
  9. Android ViewDragHelper的简单分析(一)
  10. 基于javaweb的在线学习系统
  11. keil中下载按钮和调试按钮灰掉了
  12. 软件测试你的简历是这样的吗?
  13. i5 9600k和i5 9400的差距?哪个好?对比才知道
  14. Ubuntu vim 插件配置
  15. Win32反汇编(三)深层次的了解各种转移指令:IF语句有符号与无符号跳转
  16. 【知识图谱】实践篇——基于医疗知识图谱的问答系统实践(Part5-完结):信息检索与结果组装
  17. 线性表中的尾插法单链表的学习
  18. java hashtable 数据结构_java数据结构——哈希表(HashTable)
  19. mysql 当前时间小时制_日期函数——MYSQL
  20. 昆明世博园装mysql_昆明世博园太美丽了

热门文章

  1. [转]写好shell脚本的13个技巧
  2. MyBatis(三)
  3. java 遍历类路径
  4. 组策略管理——软件限制策略(4)
  5. 20145237 《信息安全系统设计基础》第2周学习总结
  6. linux 系统如何防止攻击
  7. 目录和文件管理(一)
  8. 11、1.4.3 测试JDK安装成功
  9. C 双向链表的简单排序实现
  10. Java基础学习笔记三 Java基础语法