Skip to Content
Technical Articles

Getting Started with the SAP Cloud Platform Extension Factory on GCP

Recently, SAP announced the SAP C/4HANA Foundation, which introduced the SAP C/4HANA Cockpit.  The Cockpit provides numerous benefits to customers of the SAP C/4HANA Suite that are outlined in the aforementioned blog. One of the main features of the SAP C/4HANA Cockpit is the SAP Cloud Platform Extension Factory, which is the application extensibility framework founded on concepts and solutions from the Kyma open-source project. This allows you to extend and customize your SAP C/4HANA solutions in a quick and modern way, using serverless computing and microservice architectures.

The SAP Cloud Platform Extension Factory of the SAP C/4HANA Foundation leverages managed Kubernetes offerings from hyperscaler cloud providers such as Google Cloud Platform, Microsoft Azure, etc for the runtime environment.  In this blog we will walk through the process of provisioning the SAP Cloud Platform Extension Factory specifically on the Google Cloud Platform.  Before proceeding, verify that you have access to the SAP C/4HANA Cockpit via https://cx.cloud.sap.  After signing in make sure you have access to the Extensibility menu.  If you experience any issues accessing the cockpit refer to the help for access information.  You will also need to be assigned the Administrator role to complete these tasks, also detailed in the help.

 

Google Cloud Platform – Configuration

The provisioning requires a few steps to be completed within the Google Cloud Platform which can be accessed using the link https://cloud.google.com/gcp/.  Sign in or create a new account if necessary and open the Google Cloud Platform Console.

NOTE: This process will only work on a Google Cloud Platform trial account if you enable billing for the project which can be done within the Billing menu option and also upgrade the account in the quotas area found under the menu option IAM & admin.

The first thing we want to do is create a new project.  We can use the Project Selection drop down to do so, which is found on the left side of the header bar next to the Google Cloud Platform logo.  Then choose the New Project button to start the workflow.

Provide the desired details for the Project name and Location and choose Create.

Once the project has been generated make sure it is selected as the current project in the project drop down, otherwise open the Select a project dialog and select it.

NOTE: This process will only work on a Google Cloud Platform trial account if you enable billing for the project which can be done within the Billing menu option and also upgrade the account in the quotas area found under the menu option IAM & admin.

The provisioning of the runtime requires some APIs to be enabled on the Google Cloud Platform.  To do so either select the Go to APIs overview button in the API tile in the project Dashboard or use the Menu option APIs & Services -> Dashboard

Within the APIs & Services Dashboard choose the ENABLE APIS AND SERVICES button.

Three APIs need to be enabled:

  • Google Cloud Resource Manager API
  • Google Cloud Deployment Manager API
  • Kubernetes Engine API

Within the API Library search and enable the three APIs.  To enable the Google Cloud Resource Manager API enter in the API as the search string.

Choose the API.

And then choose Enable.

Do the same for the Google Cloud Deployment Manager API and Kubernetes Engine API if they are not already enabled.

Next create a service account which will be used to authenticate the SAP C/4HANA Cockpit to the Google Cloud Platform.  In the project menu select IAM & admin -> Service accounts

Within the Service accounts dashboard choose the CREATE SERVICE ACCOUNT button

Provide a name and description for the Service account details and then choose Create

In the next step we will assign the following roles to the service account.

  • Compute Admin
  • Kubernetes Engine Admin
  • Security Reviewer
  • Deployment Manager Editor
  • Service Account User

This can be done by choosing the Select a role drop down and then providing the role name within the filter option and finally choosing the role.  For example, using the Compute Viewer role

After the role has been selected use the ADD ANOTHER ROLE button to add each of the remaining roles.

Once all of the roles have been added choose the CONTINUE button

Next create the necessary credential key to be used in the SAP C/4HANA Cockpit.  Choose the CREATE KEY button

Choose the JSON option and choose CREATE which will download the key to your computer.

Choose DONE to complete the task.

You should now see your service account within the table which completes our tasks within the Google Cloud Platform.

 

SAP C/4HANA Cockpit – Provisioning

With the service account credentials configured we can now add them to the Cloud Provider Access Credentials list button by choosing the Add New Credentials button within the Extensibility menu option.

Provide a Display Name, choose GCP as the Provider and copy the entire contents of the downloaded key into the Key field.  Choose Add after providing the values.

With the Credentials configured we can now provision our Runtime by choosing the Provision a runtime button.

Then provide the desired values for your new runtime and finally choose Provision.

This will initiate the provisioning process which will take some time to complete. Once the provisioning completes the status will change to PROVISIONED and you will then be able to open the Kyma Console.

If you are interested in connecting SAP Commerce Cloud check out this blog, otherwise you can utilize a Mock Application to continue your learning which is detailed in this blog.

6 Comments
You must be Logged on to comment or reply to a post.
  • Hi Jamie,

    thanks a lot for this great and very well explained blog. I did all the steps you mentioned but at the last step i’m getting an error: XF.ERRORS.INTERNAL_SERVER_ERROR

     

     

    Do you have any idea how i could fix that?

     

    Best regards,

    Sascha

     

     

    • Hi Sascha,

      In the menu option IAM & Admin choose the quotas option.  Choose the metric “CPUs (All Regions)”.  If the limit is 12 you will need to upgrade the account.  The install is requiring 18.

      If this doesn’t help please reply back with the browser’s dev console log output.

      Regards,

      Jamie

  • Hi Jamie,

     

    Do you have any advice how to change the allocated resources for the provisioned cluster? I provisioned Kyma successfully on GCP and everything runs as expected through the C/4 Foundation.

    However, by default it appears the provisioning select n1 instances on GCP, which are quite oversized for a sandbox system and are burning fast through our trial budget. I have tried to change the instance template in GCP to small sized f1 instances. However it appears that Kyma is provisioned with a custom instance image which I can’t find if I create my own instance image. If I restart the instance group on a new template / new image, Kyma stops working and it unreachable.

    What would be the recommended approach to provision Kyma through the C/4 Cockpit, but to still have control over resources and pricing in GCP?

     

    Best regards,
    Manuel