SAP Commerce Cloud 概述
原文標(biāo)題: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 日 發(fā)布了 SAP Commerce Cloud 部署在 Public Cloud(公有云)上的版本,區(qū)別于之前部署在 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,客戶需要自行構(gòu)建用來部署的包。環(huán)境部署和維護(hù),由 SAP Cloud Services 完成。
Additionally, a VPN tunnel is required to reach backoffice nodes.
需要使用 VPN tunnel 訪問 Backoffice 節(jié)點(diǎn)。
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 環(huán)境,構(gòu)建代碼,部署到公有云的流程均通過 SAP Cloud portal 完成。
Commerce Cloud 構(gòu)建
The SAP Commerce Cloud build process uses the standard commerce build process.
SAP Commerce Cloud 使用 Commerce 標(biāo)準(zhǔn)構(gòu)建過程。
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.
如果構(gòu)建過程被定制化,比如加入了 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 平臺(tái)那種自定義 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 文件提供的配置選項(xiàng)以外, 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.
構(gòu)建失敗的錯(cuò)誤會(huì)包含在構(gòu)建日志里,構(gòu)建日志也是 Cloud Portal 構(gòu)建明細(xì)的一部分。
SAP Commerce Cloud 構(gòu)建流程如下:
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 構(gòu)建流程通過選取基于 Commerce Cloud Portal build option 指派的代碼,以及必需的 extension 來構(gòu)建 Docker 鏡像。
These are then used to create the environments as per the Aspect Configuration of the Manifest.json file.
這些資源隨后按照 manifest.json 里包含的 aspect 配置信息,創(chuàng)建 Commerce 環(huán)境。
You can think of an aspect as a role that a node is set up to perform.
可以將 aspect 看成一個(gè) node setup 之后扮演的一個(gè)角色。
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.
一個(gè)固定的平臺(tái)集群布局被使用,這意味著同樣的基礎(chǔ) SAP Commerce Docker 鏡像被使用,伴隨以不同的 aspect,能允許節(jié)點(diǎn)組進(jìn)行 scaling 操作和關(guān)注點(diǎn)分離。
The aspect types are fixed but they can be configured using the aspects section of the manifest file.
Aspect 類型本身是固定的,但能夠在 manifest.json 的 aspects 區(qū)域進(jìn)行配置。
The following table demonstrates how functionalities and modules could be distributed across the cluster:
下面的表格,展示了功能和 module 如何通過配置,到達(dá)跨 cluster 分發(fā)的效果:
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.
每個(gè) SAP Commerce Cloud subscription 都有自己的 environment,通過自己專屬的 Kubernetes 集群供應(yīng),提供計(jì)算,網(wǎng)絡(luò)和其他基礎(chǔ)設(shè)施。
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 一大特點(diǎn)就是,對(duì)于每個(gè)環(huán)境的 aspect,其實(shí)例總是基于統(tǒng)一而固定的資源進(jìn)行部署,比如固定的 CPU 核心和內(nèi)存。
All server clusters and their allocated resources (CPU/RAM) in all environments are managed exclusively by SAP.
所有服務(wù)器集群和其分配的資源,比如 CPU/RAM,都由 SAP 統(tǒng)一管理。
Because resources are fixed, it also means only horizontal scaling (increasing the number of instances) is supported.
因?yàn)椴扇×斯潭ㄙY源的分配策略,這意味著 SAP Commerce Cloud 只支持水平擴(kuò)展,即增加實(shí)例個(gè)數(shù)的方式。
Vertical scaling (increasing the resources on an existing virtual machine) is not supported.
SAP Commerce Cloud 垂直擴(kuò)展不支持。
The below sample configuration for go-live shows three primary nodes and at least three nodes.
下圖展示了 SAP Commerce Cloud 一個(gè)例子部署選項(xiàng),至少包含三個(gè)主要節(jié)點(diǎn)。
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.
每個(gè)節(jié)點(diǎn)都配置了 Docker 和 Kubelet 軟件,允許經(jīng)過 SAP Commerce Cloud build 流程創(chuàng)建的 Docker 鏡像,部署到節(jié)點(diǎn)上。
nodes
A node is a worker machine in Kubernetes, previously known as a minion.
node 是 Kubernetes 世界里的工作機(jī),以前被稱為 minion.
A node may be a virtual machine (VM) or a physical machine, depending on the cluster.
節(jié)點(diǎn)既可以是物理機(jī),也可以是虛擬機(jī)。
Each node has the services necessary to run pods, and is managed by the primary components.
每個(gè)節(jié)點(diǎn)上都有需要運(yùn)行 pods 所必需的服務(wù),節(jié)點(diǎn)被 primary 組件管理。
容器
Containers
A container is a runtime instance of an image (what the image becomes in memory when actually executed).
容器是鏡像的運(yùn)行時(shí)實(shí)例,當(dāng)鏡像被執(zhí)行時(shí),首先被加載到內(nèi)存里。
Containers run apps natively on the host machine’s kernel.
容器在宿主機(jī)的內(nèi)核里以原生發(fā)生運(yùn)行應(yīng)用。
They have better performance characteristics than virtual machines that only get virtual access to host resources through a hypervisor.
這種方式比起傳統(tǒng)的虛擬機(jī)采取 hypervisor 的方式獲得對(duì)宿主機(jī)資源的訪問相比,性能大大提高。
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 能夠供應(yīng)的三大環(huán)境:Development, Stage and Production.
開發(fā)環(huán)境的配置
最少包含:
- 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.
生產(chǎn)環(huán)境的配置
最少包含:
- 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 - 非持久化磁盤存儲(chǔ)
With SAP Commerce Cloud, the application servers provisioned do not have persistent hard drives attached.
在 SAP Commerce Cloud 里,應(yīng)用服務(wù)器沒有掛接提供持久化存儲(chǔ)的磁盤。
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).
因此,應(yīng)用程序不能指望著寫入磁盤的文件具有長(zhǎng)期的持久化生命周期,因?yàn)榇疟P存儲(chǔ)在 Kubernetes 替換 Commerce 節(jié)點(diǎn)時(shí),會(huì)被銷毀。
Cloud storage should be used for files that are required to exist beyond the lifetime of a SAP Commerce application instance.
如果確實(shí)存在需要文件存活生命周期超過 Commerce 應(yīng)用實(shí)例生命周期的應(yīng)用場(chǎng)景,必須使用 Cloud 存儲(chǔ)。
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 中導(dǎo)入文件。
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 數(shù)據(jù)庫,盡量避免直接的 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.
可以保存數(shù)據(jù)庫的狀態(tài),以備將來回滾之用。
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 服務(wù)器來 serve 網(wǎng)絡(luò)請(qǐng)求,運(yùn)行 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 服務(wù)器,但可以通過 Cloud Portal 進(jìn)行下列配置。
可以將 endpoints,即虛擬主機(jī)嗎,映射到應(yīng)用上。
They are automatically allocated a DNS name. 這些 endpoints 自動(dòng)被分配一個(gè) DNS name.
SSL Certificates can be assigned to an endpoint.
IP Filters can be defined for an endpoint, ensuring that only traffic from certain IP addresses can access an endpoint.
可以通過 IP filters,實(shí)現(xiàn)只有來自指定的 IP 地址,才能訪問 endpoint 的需求。
更多Jerry的原創(chuàng)文章,盡在:“汪子熙”:
總結(jié)
以上是生活随笔為你收集整理的SAP Commerce Cloud 概述的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 万国觉醒查理马特搭配什么武将 查理马特搭
- 下一篇: C语言中三目运算符_c语言中的单目运算符