SAP 云平台 (Cloud Platform) 架构概述

简介: SAP 云平台 (Cloud Platform) 架构概述

引言

在我们开始SAP云平台的架构之旅之前,让我们先看看SAP已经发布的一些其他云产品。这些云产品方案可以分为公有云和私有云两种。

SAP公有云解决方案见下图最右侧,比较著名的有SAP SuccessFactors和SAP Cloud for Customer(C4C)等,作为SAP软件即服务(SaaS)的解决方案。

以SAP C4C为例,软件应用和计算资源均由SAP提供,部署于SAP的数据中心,用户通过Internet来访问使用软件。所有C4C客户以不同租户(tenant)的方式共享SAP数据中心的软硬件资源。


而最左侧的SAP HANA Enterprise Cloud,是SAP一个私有云平台。这个平台上能购买的方案最主要的就是SAP S/4HANA(当然也有Business Suite等)。私有云的客户独享云上的资源。


从第一张图也能看到SAP的云解决方案使用了部分开源技术栈,比如CloudFoundry,可以把它看成是PaaS的操作系统。


下面这张图有两个环形,最里面的环形包裹的是SAP核心业务应用,既有On-Premise的SAP S/4HANA又有基于Cloud的产品。


第二个环形,就是咱们Partner和客户大显身手的地方:通过SAP云平台,我们可以快速构建出轻量级的应用,和SAP核心业务应用做集成。

SAP云平台能够帮助企业的数字化转型得更敏捷,更高效,更彻底。

SAP云平台的架构概述

通过SAP云平台,您可以方便的扩展现有的On Premise和云解决方案,最大化利用您之前的投资。SAP应用中心 Application Center上有丰富的应用,可以下载并部署到SAP云平台上运行。

On-Premise和Cloud解决方案可以通过SAP云平台连接起来。应用,数据和业务流程也通过SAP云平台成为数字化网格Digital Mesh的一个个节点,从而消除了信息和数据孤岛。

借助SAP云平台您可以尝试将发展迅猛的最新技术集成到SAP传统产品中,比如机器学习,物联网,区块链服务等等。

先从下图底部黄色区域的基础设施层Infrastructure Layer讲起。为什么在这张图里能看到其他的云平台提供商,比如Amazon,Microsoft和Google?

这就要从SAP云平台的编程环境说起。打开SAP云平台Cockpit,在Region标签页内能发现:Neo编程环境的底层基础设施由SAP自己提供,而CloudFoundry编程环境的底层基础设施由其他公有云基础设施提供商提供。

这两种编程环境的具体区别,请参考我的另一篇文章:SAP云平台运行环境Cloud Foundry和Neo的区别

SAP云平台对 Kubernetes 的支持

SAP 云平台的特色之一,就是通过 Kyma 运行环境,间接提供了对 Kubernetes 平台的支持。


基于Kubernetes的容器编排技术近年来已经成为行业里最流行的云原生应用开发范式之一。SAP云平台的Kubernetes编程环境提供了一种简易,安全,基于业界标准的方式提供了对Kubernetes集群的创建和管理,这种方式基于Cluster-as-a-Service(集群即服务)的方式运作,能运行在多种底层云技术设施上,解决了开发人员需要花大量时间学习Kubernetes底层细节的痛点。


这种Cluster-as-a-Service的服务,SAP通过开源项目Gardener提供访问:https://gardener.cloud/


SAP云平台对 ABAP 编程环境的支持

对于以前在 ABAP On-Premises 环境进行二次开发的 ABAP 顾问来说,SAP 云平台 ABAP 编程环境,给这些顾问们提供了一种新的在云端进行二次开发的选择。


笔者之前的文章,曾经提到过一个很有用的 CDS view 注解:


@OData.publish: true

加上这个注解的CDS view,一旦激活后就会在ABAP Netweaver自动生成一个OData服务,在事务码/IWFND/MAINT_SERVICE里将其搜索出来并添加,就能够以OData服务的方式,消费这个view暴露出来的数据了。

那么到了SAP云平台ABAP环境上,因为我们无法访问SAP GUI,所以要实现同样的效果,无法直接照搬上述步骤。幸运的是,在云上进行CDS view暴露的步骤依然简洁,整个过程5分钟就能搞定。


用ABAP Development Tools像登录On-Premises ABAP系统那样登录ABAP云环境,新建一个Service definition:


在Service的实现体里,使用关键字expose将ABAP环境里的标准view,I_Currency以Service的方式暴露出来。

这个Service需要以Service Binding的方式暴露成OData服务:

把第一步创建的Service分配给这个Service Binding:

注意下图右边的Service Details标签页里,此时是空的。点击Publish按钮:

发布成功后,我们看到了之前在Service实现里把I_Currency暴露成的名为Currency的实体:

对这个Currency Entity点右键,选择Open Fiori Elements App Preview,就能在预览模式下通过一个标准通用的Fiori Elements应用把当前系统上I_Currency里的数据显示出来:

点击这个Service URL超链接,也能直接打开对应OData服务的元数据(metadata)链接:

至此我们就可以用各种消费端来使用这个通过I_Currency暴露成的OData服务了,当然也可以开发一个SAP Fiori来消费这个 OData 服务。

SAP云平台的账号分配和服务管理

本章节内容通过一个实际的例子,给大家介绍如何在 SAP云平台里开启 Process Integration 服务。


在云平台控制台里,给global Account 分配 Integration Suite下面的 Process Integration的API和Runtime两种服务:


Process Integration Runtime,分配一个integration-flow实例:

然后在SaaS application里,选择integration Suite下面的Process Integration Production:

最后在 subaccount的 Subcription页面里,就能看见Process integration的 SaaS 应用了。点击Subscribe即可订阅:

总结

本文首先介绍了市面上一些常见的 SAP 公有云和私有云的解决方案,接着展开对 SAP云平台架构的介绍,主要提及了云平台两个特色,即对 Kubernetes 和 ABAP 编程环境的支持,重点讲解了在云平台 ABAP 编程环境将 CDS view 暴露成 OData 以及开启 Process Integration 服务的步骤。


相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
云原生实践公开课
课程大纲 开篇:如何学习并实践云原生技术 基础篇: 5 步上手 Kubernetes 进阶篇:生产环境下的 K8s 实践 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
1月前
|
存储 SQL 关系型数据库
ClickHouse(02)ClickHouse架构设计介绍概述与ClickHouse数据分片设计
ClickHouse的核心架构包括执行过程和数据存储两部分。执行过程涉及Parser与Interpreter解析SQL,通过Column、DataType、Block、Functions和Storage模块处理数据。Column是内存中列的表示,Field处理单个值,DataType负责序列化和反序列化,Block是内存中表的子集,Block Streams处理数据流。Storage代表表,使用不同的引擎如StorageMergeTree。数据存储基于分片和副本,1个分片由多个副本组成,每个节点只能拥有1个分片。
72 0
ClickHouse(02)ClickHouse架构设计介绍概述与ClickHouse数据分片设计
|
1月前
|
消息中间件 Cloud Native Java
【Spring云原生系列】SpringBoot+Spring Cloud Stream:消息驱动架构(MDA)解析,实现异步处理与解耦合
【Spring云原生系列】SpringBoot+Spring Cloud Stream:消息驱动架构(MDA)解析,实现异步处理与解耦合
|
6天前
|
负载均衡 Java 开发者
细解微服务架构实践:如何使用Spring Cloud进行Java微服务治理
【4月更文挑战第17天】Spring Cloud是Java微服务治理的首选框架,整合了Eureka(服务发现)、Ribbon(客户端负载均衡)、Hystrix(熔断器)、Zuul(API网关)和Config Server(配置中心)。通过Eureka实现服务注册与发现,Ribbon提供负载均衡,Hystrix实现熔断保护,Zuul作为API网关,Config Server集中管理配置。理解并运用Spring Cloud进行微服务治理是现代Java开发者的关键技能。
|
15天前
|
安全 UED 开发者
SAP Commerce Cloud 配置项 refreshWithLock=false 的作用介绍
SAP Commerce Cloud 配置项 refreshWithLock=false 的作用介绍
17 0
|
15天前
|
Java BI API
SAP Cloud for Customer 里如何通过 ABSL 二次开发方式消费 SAP S/4HANA 系统的 API
SAP Cloud for Customer 里如何通过 ABSL 二次开发方式消费 SAP S/4HANA 系统的 API
12 0
|
21天前
|
负载均衡 网络协议 Java
构建高效可扩展的微服务架构:利用Spring Cloud实现服务发现与负载均衡
本文将探讨如何利用Spring Cloud技术实现微服务架构中的服务发现与负载均衡,通过注册中心来管理服务的注册与发现,并通过负载均衡策略实现请求的分发,从而构建高效可扩展的微服务系统。
|
1月前
|
存储 缓存 安全
【ARM架构】ARMv8-A 系统中的安全架构概述
【ARM架构】ARMv8-A 系统中的安全架构概述
31 0
|
2天前
|
敏捷开发 监控 数据管理
构建高效微服务架构的五大关键策略
【4月更文挑战第20天】在当今软件开发领域,微服务架构已经成为一种流行的设计模式,它允许开发团队以灵活、可扩展的方式构建应用程序。本文将探讨构建高效微服务架构的五大关键策略,包括服务划分、通信机制、数据管理、安全性考虑以及监控与日志。这些策略对于确保系统的可靠性、可维护性和性能至关重要。
|
15天前
|
API 数据库 开发者
构建高效可靠的微服务架构:后端开发的新范式
【4月更文挑战第8天】 随着现代软件开发的复杂性日益增加,传统的单体应用架构面临着可扩展性、维护性和敏捷性的挑战。为了解决这些问题,微服务架构应运而生,并迅速成为后端开发领域的一股清流。本文将深入探讨微服务架构的设计原则、实施策略及其带来的优势与挑战,为后端开发者提供一种全新视角,以实现更加灵活、高效和稳定的系统构建。
18 0