A new seamless SAP Cloud Platform experience
The big day has finally come: The Cloud Foundry environment is now generally available with SAP Cloud Platform!
When we made Cloud Foundry available as free beta back in May 2016, we knew this was only the starting point. To allow you to go productive with Cloud Foundry, we were working hard in the background to make it available for everyone. We also resolved the old shortcomings to provide you with an integrated experience that is now available in more regions than ever before. Time for a deep-dive!
Two Environments – One Concept
Cloud Foundry offers lots of new capabilities and services. There’s also the notion of organizations and spaces, inside of which services are consumed through service instances that are bound to applications. Applications can use many additional runtimes like Node.js, PHP, or Ruby, and they also provide some additional insights in the form of events. Here’s how Cloud Foundry app details look like now:
With the introduction of the Cloud Foundry environment, we also wanted to give the current environment that you’re already accustomed to a name. We decided to use the name that you already might have heard here and there in the past and that is also visible in the existing command line tooling: Neo.
To be able to administrate the two environments in a unified way, we extended the domain model of the platform. Global accounts are much more powerful now. A global account typically refers to a purchasing order with SAP. A single order can contain Cloud Foundry and Neo resources like compute units or services. These resources can be distributed across subaccounts. Since not everyone should have the permission to distribute these resources, you can now also maintain members on global account level and assign the administrator role to them. A user with the administrator role on global account level can see all subaccounts that belong to a global account for these users.
Those of you who are familiar with the platform will probably have spotted some new terms in the paragraphs above. While reworking the domain model, we used the chance to clean up some terminology. We are now consistently using the term regions for what we previously called either data center or landscape. All mentions of accounts now always use a qualifier, which allows us to get rid of quite unaligned terms like technical/child/sub accounts. We refer to user accounts for the end-user authentication, global accounts for the purchasing orders and subaccounts for the first level under global accounts that allows you to use services and deploy applications. See all of the terminology changes in a nutshell below.
All the new features are available to you through the same but greatly enhanced SAP Cloud Platform Cockpit that you most likely are already familiar with. The homepage has been heavily extended. Besides getting an overview of all regions, you can now also start a free trial for either of the two environments. Check out Timo’s blog post for more details on the new trial.
To use the Cloud Foundry environment, select one of the available Cloud Foundry regions. The new multi-cloud capabilities of SAP Cloud Platform allow us to offer Cloud Foundry also on non-SAP infrastructures like Amazon or Azure, providing you with even better regional coverage, portability, and co-location with your data.
Once you’ve selected a Cloud Foundry region, you choose your global account in which you can then create subaccounts. Think of a subaccount as a container for common configuration that should span across multiple elements, such as using the same IdP for applications and subscriptions or have a common list of members. We will heavily expand the concept of subaccounts in the near future, so stay tuned!
Now, you have the option to create a Cloud Foundry organization. Once it’s created, the navigation will expand and present a wide array of Cloud Foundry-specific options. It’s possible to create spaces, limit the quota of these spaces by creating space quota plans (optional), see the resources consumption, manage applications and services, and much more. Here’s how spaces look like in the cockpit:
Once an organization is created, you can assign quotas to it from your global account. We have improved the overall process for managing quotas. It’s now possible to shift quotas easily between different regions, allowing you to distribute your apps much more conveniently. No need for tickets anymore! See for yourself:
To get an overview of all the new services, the service catalog in the cockpit was enhanced. It’s now also available without login. Both Cloud Foundry and Neo services are shown in the catalog. Cloud Foundry services also support the notion of service plans that represent different offerings of this service, typically measured in T-Shirt sizes. You can also see the regions in which a service is available. See the Postgres example shown below:
Here are some examples for new services you can now use in the Cloud Foundry environment: Redis, MongoDB, PostgreSQL, Object Store, and RabbitMQ. Selected services you might already be using in Neo are also conveniently available in Cloud Foundry, like HANA, Portal, Authentication, Connectivity etc:
It’s also possible to cross-consume HTTPS-based services between the two environments. To do so, you create a service key for a Cloud Foundry service instance and then use that information in a destination on the Neo side. The other way around is also possible: simply enable the Neo service in a subaccount, create a user-provided service for it and bind that to your application. Stay tuned for some further enhancements to connectivity, allowing you to cross-consume services even more easily!
This is our big initial release of the Cloud Foundry environment. It is by no means the end, but the beginning of a much greater journey! Expect to see constant improvements and additions to the features and capabilities of both environments. We’ll teach Neo some great tricks very soon (custom roles, looking at you) and the Cockpit will soon provide many management options for the XSA security aspects, so that it’s really convenient for you to manage roles and permissions for applications.
Now, it’s up to you to get your hands dirty and head over to our trial region. We can’t wait to read your feedback and discover the great applications you come up with!
Thanks for explaining the big picture
"you can now use in the Cloud Foundry environment: Redis, MongoDB, PostgreSQL, Object Store, and RabbitMQ."
I would like to use the cloud foundry CLI. However, I seem to be unable to find the cf cli api endpoint for SAP. I would like to connect to the Frankfurt region. Could you please tell me the cf api endpoint for that region?
You can find the overview in the documentation. Frankfurt would be: https://api.cf.eu10.hana.ondemand.com
In one of the next Cockpit updates these endpoints will also appear directly in the UI which should simplify things.
I do not understand the part: ” simply enable the Neo service in a subaccount”. How do I do that? Is there any info somewhere how to connect gwaas services from the neo environment to the cf environment?
Besides that: how can I use the xsuaa service to enforce authentication for my app?
Great Blog. One point I don't fully understand.
Why SAP Neo AND SAP Cloud Foundry?
Will SAP Neo services be redevloped to be Cloud Foundry complient and then merge to become a single product? Two cloud offerings slightly confusing to customers...
Many Thanks in advance for your insight!
Great information.I have a question i.e,
I have observed in cockpit , Neo having SAP infrastructure and cloud foundry having AWS,GCP,Azure.So is Neo used for developing SAP based Cloud applications and CF is used for developing other cloud applications?
sorry for the delay. The notification somehow slipped me in my inbox. We do not make a distinction as to what should be developed in the cloud environments. The better way to view them in my opinion is that you get different qualities and features and depending on your project one or the other environment is better suited. In the future there will most likely also be additional environments that cater to specific needs/scenarios. What you will also see is that the environments will get more and more inter-operable and services can be used independent of these.
I hope this helps.