Efficient DevOps with SAP BTP
I am sure we all agree that DevOps can be a key enabler for achieving high-level agility and quality in development projects. While DevOps is mainly a cultural thing, where you strive to overcome organizational silos and establish an autonomous and trustful work culture with common goals, tools can support you in setting up, running and improving your DevOps environments.
In this blog post, I want to present the portfolio of tools/services that help to foster DevOps principles and simplify adoption for cloud-native applications as well as hybrid scenarios. While the article The DevOps portfolio of SAP BTP from my colleague Manohar Sreekanth outlined what makes this portfolio so special (in particular for SAP customers and environments), this blog post complements those key characteristics with an introduction of the categories and of the actual tools/services you can use from SAP Extension Suite and which implement exactly the cornerstones outlined in the previous post.
The following figure shows the categories of our portfolio – or the solid blocks for building a reliable bridge that brings together development and operations (and other roles that contribute to the success of an application on the platform):
Now, I will provide a quick introduction to each of these categories and give you a first glimpse of the corresponding offerings.
You start with the Plan & Set Up phase, where you decide on your overall approach and set up required infrastructures and toolchains.
- To support you in understanding basic cloud concepts, we provide the Best Practices with SAP BTP guide that explains important aspects and gives first guidance for several lifecycle management approaches of the platform.
- To ease the setup of Continuous Integration and Continuous Delivery (CI/CD) in SAP environments, we have several offerings in place, such as a Pipeline-as-a-Service that allows you to apply CI/CD without own CI/CD infrastructure, project “Piper” that brings downloadable pipeline templates, a step library to extend and adapt your pipelines, scenarios, and downloadable Docker images – and best practices how to apply CI/CD in SAP environments.
Then, you continue with Develop & Test, where your development teams uses this CI/CD environment to come up with increments of high quality (verified by transparent results of automated tests). To help you come up with meaningful results quickly and to ensure your developers can focus more on business requirements than on technical aspects, we have several offerings and best practices in place, such as:
- The Multitarget Application (MTA) approach that eases the handling of interdependencies of the software modules and artefacts that your app comprises of and which is the basis for an automated deployment on SAP BTP
- Our web-based, highly-integrated SAP Business Application Studio as Integrated Development Environment
- The SAP Cloud Application Programming model that offers a consistent end-to-end programming model that can guide developers along a golden path of best practices and tool recommendations
As soon as you have a release candidate of your app version in form of a fully qualified archive, you Deliver & Change it by propagating it towards your production subaccount:
- Either fully automated as part of a pipeline – ideally based on the Continuous Integration best practices or pipeline templates mentioned above
- Or with a standardized, enterprise-ready change management process, if you desire more control especially of your production environment – using our cloud-based SAP Cloud Transport Management service or the on-premise enhanced Change and Transport System (CTS+), both able to handle transports from Neo and Cloud Foundry environments, both with the option to integrate into change management approaches around SAP Solution Manager for hybrid scenarios, such as Change and Request Management (ChaRM) – while the cloud transport management service also covers application-specific content artifacts of the platform.
In the Monitor & Operate phase, you make sure your app is provided with the right availability and performance – with the option to minimize manual activities by fostering automation of standard DevOps activities:
- For monitoring, you can use native capabilities from the platform – with the option to complement them with third-party application performance monitoring offerings.
- Instead of manually tracking the monitoring information for your application on an ongoing basis, we recommend that you set up SAP Alert Notification service for SAP BTP that allows to subscribe to events coming from the platform (Neo, Cloud Foundry, and Kubernetes environments) and send them via a channel of choice – with an out-of-the-box option to integrate those notifications into SAP Solution Manager.
- And if you should have monitoring and management processes anyhow already set up for your on-premise landscape around SAP Solution Manager, you might in addition appreciate the hybrid supportability offerings to get holistic insights for hybrid apps around your operations center of gravity.
- Finally, for reducing overall operations efforts, we are offering the SAP Automation Pilot service. This service allows to automate regular DevOps tasks in the lifecycle of your apps running on SAP BTP
This leads us to the overarching Automate & Optimize phase, where you strive to improve and optimize all underlying phases and categories and to foster collaboration. Here, we are working on a central service for an integrated DevOps management, where a lot of the offerings and approaches discussed above could come together, such in an overall landscape view for analysis and management, enriched with analytical data pointing you to the right areas that might need improvement.
Now, you should have a better understanding, how our DevOps portfolio for SAP BTP materializes the corner stones of Manohar’s blog post mentioned above along the given categories.
To get more details about the single phases outlined above and the corresponding cloud services/tools (existing and upcoming), continue with this blog post about the Plan & Setup phase (or use the other links above to gain more information about our offerings for the other phases).
In addition, we are eager to discuss our offering with customers interested in DevOps around our platform – so, if you now should have stumbled over a topic you would like to learn more about or where you would see requirements that you would like to discuss with us, please reach out to me anytime! I would be happy to set up a webinar to give a demo or to gather your feedback for the services and offerings outlined in this series of blog posts!
thanks Boris for the fantastic overview. What I need is a concrete sample how to perform all this steps. You are referring to a number of upcoming services. Where can I see when what is coming?
Thanks a lot - most of the offerings mentioned above are already in place, upcoming would be the SAP Cloud Platform DevOps Planner (beta planned for Q2/2020) and SAP Cloud Platform Automation Pilot (beta planned for Q1/2020). In addition, ChaRM integration of SAP Cloud Platform Transport Management is planned to come with SAP Solution Manager 7.2 SPS10 (planned for December).
If you should have access to SAP TechEd material, you could check session CAA809: "Road Map - DevOps with SAP" that provides details about availability and planned features of the services outlined above.
Quick update: SAP Solution Manager 7.2 SP10 got released (see SAP Note 2859338) and it does comprise also the integration of SAP Cloud Platform Transport Management into Change Control Management - for more information, see SAP Help Portal.
Yesterday, I published the last blog post in this series - therefore, you can now find links to deep-dive blog posts for every phase, linked from the corresponding sections above. Hope you will find some inspiration and useful information there :-)!
Very nice blog post. It is worth mentioning that even without BTP it is possible to consume a lot of the offerings (project piper, docker images, etc) in normal on premise scenarios. It is nice to see something centralized and easy to consume. So I can only thank SAP for investing in this, it is making life around DevOps much easier!
Looking forward to newer and lightweight docker images!
i take it as 'docker images' are fine but 'docker containers and docker-compose' not that much because of k8s, kyma, etc.
Thanks a lot for the very kind feedback (which I will share with all my peers working on the DevOps portfolio from SAP) and the additional information. You are absolutely right, project 'Piper' does also cover non-cloud scenarios. For example, there are pipeline steps in the library also for Git-enabled Change and Transport System scenarios, which you can use to apply CI/CD also for on-premise ABAP development (just go to the project 'Piper' page --> Library steps and check the steps starting with gCTS*).
Will let you know in case the colleagues should plan something around the docker images!
Thanks a lot again + best regards,