A Beginner’s Journey to Cloud Computing: SAP BTP, Cloud Foundry and Kyma Demystified.
Cloud computing has become a significant factor in the technology industry, offering businesses the opportunity to take advantage of on-demand computing resources without the need for physical infrastructure. SAP Business Technology Platform (BTP) is a cloud-based platform that offers a wide range of services to help businesses develop, integrate, and extend their applications. BTP supports both vertical and horizontal scaling, enabling organizations to handle increased loads as their businesses grow. In this blog, we will discuss BTP’s architecture, its different services, and how it supports vertical and horizontal scaling. Additionally, we will look into two open-source cloud computing platforms, Cloud Foundry and Kyma, that are used for building, deploying, and managing cloud applications. Overall, this blog aims to provide an overview of cloud computing, BTP, and two open-source platforms that enable businesses to take advantage of cloud technology to achieve their business objectives.
What is cloud computing?
Cloud computing is a model for delivering computing services over the internet on a pay-per-use basis. It enables users to access a variety of computing resources such as storage, computing power, and applications, without having to invest in and maintain their own physical infrastructure.
SaaS, PaaS, and IaaS are the three main categories of cloud computing services.
- SaaS (Software as a Service) – provides applications that are accessible over the internet. SaaS users can access the application without having to install or maintain software on their local machines. The vendor hosts the software and provides access to the application via the internet. This category includes popular software applications such as Gmal, Microsoft 365 and Salesforce.
- PaaS (Platform as a Service) – provides a platform for building and deploying applications. PaaS vendors offer development tools, middleware, and other services to enable users to develop, test, and deploy applications without having to invest in the underlying infrastructure. Google App Engine and Heroku are examples of PaaS platforms.
- IaaS (Infrastructure as a Service) – provides the building pieces for cloud infrastructure. IaaS providers provide virtualized computer resources like servers, storage, and networking via the internet. Without having to invest in real hardware, users can rent and utilise these resources to construct and operate their own computing infrastructure. Microsoft Azure and Amazon Web Services (AWS) are examples of IaaS providers.
Overall, cloud computing and its service models offer various benefits, including scalability, cost-effectiveness, and flexibility. Organizations can choose the appropriate service model based on their requirements and leverage cloud computing to achieve their business goals.
What is BTP?
SAP Business Technology Platform (BTP) is a cloud-based platform that provides a wide range of services to help businesses develop, integrate, and extend their applications. BTP enables organizations to run their business processes in the cloud with agility, flexibility, and scalability. It provides various services such as database services, integration services, application services, analytics services, and more.
Vertical scaling, commonly referred to as scaling up, is the act of raising the resources of a single instance, such as the CPU, RAM, and storage capacity, to match rising demand. Horizontal scaling, also known as scaling out, is the addition of new instances to distribute the workload across multiple servers, hence enhancing processing capacity and fault tolerance.
BTP supports both vertical and horizontal scaling, enabling organizations to handle increased loads as their businesses grow. Vertical scaling is achieved by increasing the capacity of the existing resources in the infrastructure. Horizontal scaling is achieved by adding more instances of the same type and then balancing the load between them.
SAP BTP provides different services such as SaaS (Software as a Service), PaaS (Platform as a Service), and IaaS (Infrastructure as a Service) that enable organizations to leverage cloud computing technology to achieve their business objectives.
Let’s look into BTP Account Structure.
SAP Business Technology Platform (BTP) offers a flexible and scalable cloud-based platform that enables businesses to build, deploy, and manage enterprise-grade applications. The architecture of SAP BTP is designed to provide a wide range of services, including application development, data management, analytics, and integration.
The architecture of SAP BTP is divided into four main components:
- Global Account: The top-level entity in the BTP account hierarchy is the Global Account. It provides centralized billing, management, and governance capabilities for the entire BTP landscape.
- Directory: In BTP, directory is a container that can hold different types of resources such as subaccounts, applications, and services. Directories provide a logical grouping of resources within an account, making it easier to organize and manage them. Directories can be used to define access control policies and to set up billing and cost center information for the resources contained within them. They can also be used to organize resources by function, department, or project, depending on the needs of the organization.
- Subaccount: A subaccount is a container for managing one or more services and applications within a specific area of a global account. Subaccounts offer a flexible way to organize resources based on different departments, business units, or projects.
- Service Instances: A service instance is a runtime environment of a specific service that is created and managed within a subaccount. For example, a database or a messaging service can be provisioned as a service instance.
- Applications: An application is a collection of software components and services that are designed to fulfill specific business requirements. Applications can be deployed to a subaccount, and they can access and utilize service instances that are created within the subaccount.
Finally, what is Cloud Foundry and Kyma?
Cloud Foundry and Kyma are both open-source cloud computing platforms that are used for building, deploying, and managing cloud applications.
Cloud Foundry is a Platform as a Service (PaaS) that provides a set of tools and services to enable developers to build, deploy, and manage applications on a cloud infrastructure. It supports multiple programming languages, such as Java, Ruby, Node.js, and Go, and provides a range of developer tools, such as the Cloud Foundry Command Line Interface (CLI), the Cloud Foundry API, and the Cloud Foundry Dashboard. Cloud Foundry also supports various databases, including MySQL, PostgreSQL, MongoDB, and Redis, and integrates with various application services, such as RabbitMQ, Elasticsearch, and Memcached.
Kyma, on the other hand, is a cloud-native extension platform that is built on top of Kubernetes, an open-source container orchestration platform. Kyma provides a set of tools and services to extend and integrate cloud applications with other cloud services and applications. It supports a range of programming languages, such as Java, Node.js, and Go, and provides a range of developer tools, such as the Kyma CLI, the Kyma API, and the Kyma Dashboard. Kyma also supports various databases, including PostgreSQL and MongoDB, and integrates with various application services, such as Elasticsearch, NATS, and Knative.
Both Cloud Foundry and Kyma support horizontal and vertical scaling of applications. Horizontal scaling means adding more instances of an application to handle increased traffic, while vertical scaling means increasing the resources of a single instance of an application to handle increased traffic. Both platforms provide automated scaling capabilities, which can scale up or down an application based on predefined rules, such as CPU utilization or memory usage.
Difference between Cloud Foundry and Kyma?
- Cloud Foundry is a Platform as a Service (PaaS) solution, while Kyma is an open-source microservices-based application development and management platform that can be used with any PaaS or Kubernetes-based solution.
- Another big difference between Cloud Foundry and Kyma is that Cloud Foundry primarily focuses on application deployment and management, while Kyma is an open-source project designed for building cloud-native applications that are integrated with Kubernetes. Kyma provides a set of tools and services to make it easier to develop and operate cloud-native applications on top of Kubernetes.
Note: – SAP BTP uses Cloud Foundry as its primary platform for developing and running applications and it is more stable. Although, it also provides an optional add-on, Kyma, which is a cloud-native application platform for extending and customizing existing applications.
Cloud computing has become an essential technology for businesses of all sizes, providing them with access to a wide range of computing resources without having to invest in their own physical infrastructure. The three main categories of cloud computing services – SaaS, PaaS, and IaaS – provide organizations with different options for deploying and managing their applications. SAP Business Technology Platform (BTP) is a cloud-based platform that offers a wide range of services to help businesses develop, integrate, and extend their applications. The BTP account structure provides a flexible and scalable way to organize and manage resources, while the scaling options enable organizations to handle increased loads as their businesses grow. Finally, open-source cloud computing platforms like Cloud Foundry and Kyma offer developers a way to build, deploy, and manage cloud applications with ease.
In future scope, developing machine learning applications using Python can be a daunting task for beginners, but with the right resources and guidance, anyone can learn how to do it. That’s why I am excited to announce that I will be creating a series of blogs that will walk you through the process of developing your own ML apps using Python, step by step. Whether you’re new to programming or looking to expand your skillset, these blogs will provide you with the knowledge and tools you need to succeed. So, stay tuned, like, and share my blog, and let’s start building some amazing machine learning applications together! Feel free to ask questions or leave comments.
Best Capsule tutorial for BTP Platform, Cloud Foundry & Kyma:
Build an Application in the Cloud Foundry Runtime | Tutorials for SAP Developers
Build an Application in the Kyma Runtime | Tutorials for SAP Developers
Cloud Foundry CLI Installation Link : https://github.com/cloudfoundry/cli/wiki
Cloud Foundry CLI Reference Guide V6 : https://cli.cloudfoundry.org/en-US/v6/
Cloud Foundry CLI Reference Guide V7 : https://cli.cloudfoundry.org/en-US/v7/
Cloud Foundry CLI Reference Guide V8 : https://cli.cloudfoundry.org/en-US/v8/
Cloud 101: What is cloud computing? | SAP Insights
Fundamentals of the SAP BTP, Cloud Foundry environment | Tutorials for SAP Developers
Kyma at SAP | SAP Community
Interesting article. Thanks for sharing.
Nice blog on BTP. Good Work Rugved.