Lesson 3 of 5
Runtime environments: Cloud Foundry, Kyma and ABAP
8 min
An environment is the kind of runtime a subaccount offers for applications. SAP BTP has three current environments: Cloud Foundry, Kyma and ABAP. A fourth, Neo, was the original BTP environment; SAP's learning material recommends migrating away from it. A single subaccount can host several environments at once (SAP calls this a multi-environment subaccount), with users, authorizations and entitlements managed once for the subaccount.
| Cloud Foundry | Kyma | ABAP | |
|---|---|---|---|
| Based on | Open-source Cloud Foundry platform as a service | Managed Kubernetes runtime based on the open-source Kyma project | SAP ABAP platform in the cloud, using ABAP Cloud |
| Structure inside the subaccount | One org, divided into spaces | A Kyma runtime (cluster) divided into namespaces | ABAP system instances |
| Languages and styles | Java, Node.js and Python buildpacks from SAP; community buildpacks for others | Containers, microservices, serverless functions | ABAP RESTful Application Programming Model, CDS, SAP Fiori |
| Typical deployable | Multitarget application (MTA) archive | Container images and Kubernetes resources | Software components |
| Good fit for | Business apps on SAP services, for example with the SAP Cloud Application Programming Model | Teams already working with Kubernetes and containers | ABAP teams building side-by-side extensions |
Cloud Foundry
Cloud Foundry is a polyglot platform as a service: you push code, a buildpack builds it, and the platform runs and scales it. When Cloud Foundry is enabled in a subaccount, it gets one org, which is divided into spaces. Applications and service instances live in spaces, and space members have roles such as developer or manager. Business apps are usually packaged as multitarget applications (MTAs): one archive that bundles app modules and the services they need, deployed as a unit. That unit is also what SAP Cloud Transport Management moves between subaccounts. Contoso's fleet order status app is a Cloud Foundry MTA.
Kyma
Kyma is SAP's fully managed Kubernetes runtime, based on the open-source Kyma project. It suits containerized workloads, microservices and serverless functions, and teams that already work with Kubernetes tooling. Workloads are organized in namespaces inside the Kyma runtime. Kyma gives more control and more responsibility: the team decides how containers are built, scaled and secured within the managed cluster.
ABAP environment
The ABAP environment lets ABAP developers build cloud applications and side-by-side extensions with ABAP Cloud: the ABAP RESTful Application Programming Model, CDS and SAP Fiori. It is meant for extending ABAP-based products such as SAP S/4HANA, and for standalone apps. SAP upgrades it on its own schedule; SAP has described four major release upgrades per year, with an optional pre-upgrade of a nominated test system about two weeks early so customers can regression test their applications. For a test lead that is the same pattern as the public edition: a fixed window to prove your code still works.
- Is the team strongest in ABAP and does the app extend SAP S/4HANA closely?Yes → ABAP environment · No → continue
- Does the team already run containers and Kubernetes, or need fine-grained runtime control?Yes → Kyma · No → continue
- Is it a business app on SAP services, built in Java, Node.js or with the SAP Cloud Application Programming Model?Yes → Cloud Foundry · No → review the requirement with an architect
| Concern | Question for testing and release |
|---|---|
| Deployable unit | What exactly is promoted: an MTA archive, a container image tag, a software component version? |
| Configuration | Which settings differ by stage (destinations, URLs, credentials), and where are they kept? |
| Upgrades | Who upgrades the runtime, and when? ABAP environment upgrades follow SAP's schedule. |
| Isolation | Are stages in separate subaccounts, or only separate spaces or namespaces? |
Questions a release manager asks about any environment.
What would you do?
Contoso has a strong ABAP team and wants a side-by-side fleet warranty app that reads sales and billing data from SAP S/4HANA through released APIs. A web developer suggests a Kubernetes-based design instead. What should the architect weigh first?
- Three current environments: Cloud Foundry, Kyma and ABAP; Neo is legacy.
- Cloud Foundry: one org per subaccount, spaces inside, MTAs as the usual deployable.
- Kyma: managed Kubernetes with namespaces, containers and functions.
- ABAP environment: ABAP Cloud and RAP for side-by-side extensions; SAP upgrades it on a schedule with a pre-upgrade option.
- Choose by skills, workload and operations, and keep stages in separate subaccounts.
Check your understanding · not graded
Lesson check
1. When Cloud Foundry is enabled in a subaccount, how is it organized?
2. Which environment is a managed Kubernetes runtime?
3. What is the usual deployable unit for business apps in Cloud Foundry?
4. What does the ABAP environment pre-upgrade option give customers?