The original link

Let’s first explain the name of Cloud Foundry. What is it?

Cloud Foundry (or CF) is the specification and software toolset for the Cloud Foundry Foundation (formerly the Linux Foundation). It is fully open source, and any company or organization can use these tools or create systems that follow the CF specification.

SAP has implemented Cloud Foundry on SAP BTP by creating a dedicated environment for it as a simple and easy-to-use platform as a service (PaaS).

Cloud Foundry offers significant benefits to developers and organizations:

  • Language agnostic – Select any language runtime and add new languages as needed
  • Administrator separation – Administrators and developers can work in parallel
  • Standard command line interface – all CF providers use the same CLI, not just SAP
  • Open source – many companies contribute updates and new features faster

We’ll discuss many of these new features in the following sections.

Cloud Foundry – Plaform as a Service PaaS

As you can see from the figure, traditional development requires the entire system. Hardware, operating systems, application servers, and software are all managed and maintained by the organization. This is called “internal deployment.”

Traditional cloud development moves hardware and infrastructure out of the organization. However, developers and administrators still have to maintain everything starting with the operating system (OS).

Platform-as-a-Service PaaS moves control of the runtime (application servers, databases, and other basic applications) from the organization back to the cloud.

Fixing a PaaS problem – buildpacks and services

However, there is a problem with PaaS systems. Moving the runtime layer to the cloud means that the organization loses control of the runtime layer. If an organization wants to make changes, it needs to work with the cloud provider.

Cloud Foundry solves this problem by providing runtime control to Cloud providers and organizations.

In Cloud Foundry, both Cloud providers and organizations have access to the administrator control section above.

This is done using two concepts: build packages and services.

BuildPack defines a container for running the application. For example, one BuildPack might run a Java Web application, and another might run a Node.js application. Cloud Foundry provides a number of standard build packages, and then there’s a GitHub repository that hosts a number of other open source projects. Organizations can also create their own build packs, add new languages, upgrade to the latest version, or create a set of standard authorization runtime containers that have been reviewed by IT.

Cloud Foundry services are software programs or assemblies that are provided to all different runtime environments. The most common service is a database (or some other persistent store) that provides a common location for data storage. Other services might include logging, messaging, or other tools common to multiple applications.

The following is a partial list of services in the SAP BTP Cloud Foundry environment:

Development made easy

The Cloud Platform makes it easy to run and test applications in the Cloud. In fact, uploading and launching applications in Cloud Foundry is a single command: CF PUSH.

Take a Java Web application as an example. Java Web applications are deployed in a ZIP file called WAR (for Web Archive). Creating a WAR is easy, and most tools and IDEs can do it for you.

Running the WAR file in the cloud is simple. Just run the command cf push war-file-name. Cloud Foundry does the rest. It does all this automatically:

  • Upload and store files (or files)
  • Examine and store application metadata
  • Create a “Droplet” for the application (Cloud Foundry execution unit)
  • Choose an appropriate run time to run the Droplet
  • Start the application

Service Marketplace – Services we provide

SAP offers a number of services to Cloud Foundry developers.

Our services include SAP software (such as SAP HANA), as well as some software components (such as Open Connectors) that connect to the 3rd platform.

Of course, developers and organizations can bring their own services to meet the needs of a project or organization.

Understanding spaces

Cloud Foundry provides a standard working environment for individual applications: it’s called a space.

A space is a separate work area, usually containing an application. Each space has a resource allocation from a global account (the global account belongs to your team or organization). This allocation is called a quota by SAP and limits the amount of memory, the number of URLs (called routes), and other resources. Each space is allocated to one or more users (called members).

Organizations can create Spaces for individual projects because each space is independent and isolated from all other Spaces.

More of Jerry’s original articles can be found on “Wang Zixi “: