Skip to content

Commit 07e8c90

Browse files
authored
Merge pull request #296270 from nnoaman/main
Add SAP Cloud Appliance Library integration with SAP Deployment Automation Framework
2 parents 5712d72 + 28e09c5 commit 07e8c90

File tree

8 files changed

+156
-1
lines changed

8 files changed

+156
-1
lines changed
Lines changed: 153 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,153 @@
1+
---
2+
title: Integrating SAP Cloud Appliance Library with SAP Deployment Automation Framework
3+
description: Learn how to integrate SAP Cloud Appliance Library with SAP Deployment Automation Framework.
4+
author: nnoaman
5+
ms.author: nadeennoaman
6+
ms.reviewer: kimforss
7+
ms.date: 10/24/2024
8+
ms.topic: how-to
9+
ms.service: sap-on-azure
10+
ms.subservice: sap-automation
11+
---
12+
# Learn how to integrate SAP Cloud Appliance Library with the SAP Deployment Automation Framework
13+
14+
The integration between SAP Deployment Automation Framework (SDAF) and [SAP Cloud Appliance Library (CAL)](https://cal.sap.com/catalog#/solutions) offers a seamless experience for customers deploying infrastructure using SDAF's guided deployment, which can be done through Azure Pipelines or using the provided shell scripts.
15+
16+
## Introduction to SAP Cloud Appliance Library (CAL)
17+
18+
[SAP Cloud Appliance Library (CAL)](https://cal.sap.com/) is a cloud-based solution that simplifies the deployment and management of preconfigured SAP solutions on cloud platforms like Microsoft Azure. SAP CAL works by offering a catalog of preconfigured SAP software solutions (for example, S/4 HANA, SAP Business Suite), enabling customers to deploy these solutions on their cloud of choice without needing to manually install or configure software.
19+
20+
## Overview of SAP Deployment Automation Framework (SDAF) and SAP Cloud Appliance Library (CAL) Integration
21+
22+
Following the infrastructure setup, customers can install SAP software using the [SAP CAL API for installation](https://api.sap.com/api/Workloads/overview) directly from Azure DevOps.
23+
24+
The benefits of this integration include:
25+
26+
- Access to the latest S/4 HANA installation, ensuring customers have the most up-to-date SAP software.
27+
28+
- The fastest installation experience with Azure and SAP Cloud Appliance Library (CAL) integration, streamlining the deployment process.
29+
30+
- Elimination of the need to maintain a Bill of Materials (BOM) file for Ansible, simplifying the management and setup process.
31+
32+
This integration brings together the best of Azure's infrastructure capabilities and SAP's software deployment solutions, providing a comprehensive and efficient approach to deploying SAP systems on Azure.
33+
34+
## Prerequisites
35+
36+
- Select one of the supported regions by SAP CAL \[West Europe, East US, and East US 2\] for the deployment.
37+
38+
- An [S-User](https://help.sap.com/docs/help/3e7fe88850cf4ee39d151949a990d8ca/6a92e3ffb3ee43e59c1e394566b4c085.html) is required.
39+
40+
- Set up Azure DevOps for the deployment framework, [Azure DevOps for SAP Deployment Automation Framework](configure-devops.md).
41+
42+
- Use Managed Identities for SDAF deployment.
43+
44+
- Set parameter "enable_rbac_authorization_for_keyvault = true" in the Landscape tfvars file.
45+
46+
- Set parameter "enable_sap_cal = true" in the System tfvars file.
47+
48+
## Register an application with Azure AD and create a service principal
49+
50+
1. Sign in to Azure portal.
51+
52+
2. Register an application with Azure AD with supported account types "Accounts in any organizational directory (Any Microsoft Entra ID tenant - Multitenant)"
53+
54+
3. Assign roles to the application (Contributor and User Access Administrator) for the desired subscription.
55+
56+
4. Set up authentication with application certificate (recommended) or secret.
57+
58+
- [About Azure Key Vault certificates](/azure/key-vault/certificates/about-certificates).
59+
60+
- [Certificate creation methods](/azure/key-vault/certificates/create-certificate).
61+
62+
- Create a certificate in Key Vault using [Portal](/azure/key-vault/certificates/quick-create-portal), [Azure CLI](/azure/key-vault/certificates/quick-create-cli), [Azure PowerShell](/azure/key-vault/certificates/quick-create-powershell).
63+
64+
- [Azure authentication with service principal](/azure/developer/java/sdk/identity-service-principal-auth)
65+
66+
5. Collect the following information for the next step - Subscription ID, Microsoft Entra Tenant ID, Application (Client) ID, and Client Secret or Certificate.
67+
68+
6. Navigate to "Authentication" and select "Any Microsoft Entra ID tenant--multitenant" in Supported account types.
69+
70+
## Create account in SAP CAL and enable API access
71+
72+
1. Go to [CAL portal](https://cal.sap.com/catalog#/solutions) and log on using S-User.
73+
74+
2. [Create CAL account](https://help.sap.com/docs/SAP_CLOUD_APPLIANCE_LIBRARY/43df7ec18b5241f7bf9a8c9de5ba3361/042bb15ad2324c3c9b7974dbde389640.html) with cloud provider as \"Microsoft Azure\" and Authorization Type as \"Authorization with Application\".
75+
76+
3. Provide Subscription ID, Microsoft Entra Tenant ID, Application (Client) ID, and Certificate or Client Secret to create the CAL account.
77+
78+
:::image type="content" source="./media/sap-cal-integration/sap-cal-account.png" alt-text="Screenshot that shows how to create an SAP CAL account." lightbox="./media/sap-cal-integration/sap-cal-account.png":::
79+
80+
4. Once the CAL account is created, edit the account to enable API access. [Learn More](https://help.sap.com/docs/SAP_CLOUD_APPLIANCE_LIBRARY/43df7ec18b5241f7bf9a8c9de5ba3361/7c4da18a888d4dfe8fc594d0e18072a8.html?q=API%20enable).
81+
82+
> [!NOTE]
83+
> You have to activate the product from which you want to deploy a workload for the SAP Cloud Appliance Library account that will use this API and accept the Terms and Conditions for this product. For more information, see [Activating Solutions](https://help.sap.com/docs/SAP_CLOUD_APPLIANCE_LIBRARY/43df7ec18b5241f7bf9a8c9de5ba3361/90627702612e45709e696a258af51c76.html?q=API%20enable).
84+
85+
:::image type="content" source="./media/sap-cal-integration/sap-cal-enable-api-access.png" alt-text="Screenshot that shows how to enable SAP CAL API Access." lightbox="./media/sap-cal-integration/sap-cal-enable-api-access.png":::
86+
87+
5. Once API access is enabled for the account, wait for a moment until the Key Vault is created, then collect the Key Vault name for the next step.
88+
89+
:::image type="content" source="./media/sap-cal-integration/sap-cal-key-vault-name.png" alt-text="Screenshot that shows how to copy SAP CAL Azure Key Vault Name." lightbox="./media/sap-cal-integration/sap-cal-key-vault-name.png":::
90+
91+
> [!IMPORTANT]
92+
> This created Key Vault stores the generated CAL end points and client secret used for obtaining OAuth tokens.
93+
94+
## Step-by-step guide
95+
96+
Here's a step-by-step guide for installing SAP S/4 HANA with SAP CAL Installation API integrated into SDAF:
97+
98+
1. Deploy Infrastructure from SDAF:
99+
100+
- Detailed instructions for Infrastructure creation for an SAP system with SDAF using Managed Identity (MSI) are [here](/azure/sap/automation/configure-devops?tabs=linux)
101+
102+
- Set parameter "enable_rbac_authorization_for_keyvault = true" in the Landscape tfvars file.
103+
104+
- Assign Key Vault Administrator role to the application for SDAF Workload Zone Key Vault.
105+
106+
- You should add SAP BTP outbound IP addresses for Europe (Rot) region in SDAF Workload Zone Key Vault. [Can be found here:] (https://help.sap.com/docs/btp/sap-btp-neo-environment/regions-and-hosts-available-for-neo-environment).
107+
108+
- Set parameter "enable_sap_cal = true" in the System tfvars file.
109+
110+
2. After the system deployment, update sap-parameters.yaml file with the CAL Key Vault.
111+
112+
:::image type="content" source="./media/sap-cal-integration/sap-cal-parameters.png" alt-text="Screenshot that shows sap-parameters.yaml file." lightbox="./media/sap-cal-integration/sap-cal-parameters.png":::
113+
114+
115+
3. Run "SAP installation using SAP-CAL" pipeline:
116+
117+
1. After adding the CAL Key Vault in sap_parameters, select the SAP CAL Product Name from the drop-down menu
118+
119+
1. Press 'Run' to begin the installation process.
120+
121+
:::image type="content" source="./media/sap-cal-integration/sap-cal-run-pipeline.png" alt-text="Screenshot that shows how to run Azure DevOps SAP installation using SAP-CAL Pipeline." lightbox="./media/sap-cal-integration/sap-cal-run-pipeline.png":::
122+
123+
## Track the installation
124+
125+
You can go to the [CAL portal](https://cal.sap.com/catalog#/appliances) to track installation and get detailed information about steps and errors if any.
126+
127+
128+
## SAP Cloud Appliance Library (CAL) API Documentation
129+
130+
The CAL installation API documentation is available [here](https://api.sap.com/api/Workloads/path/createSystemExt)
131+
132+
## Workflow for SDAF - CAL API integration
133+
134+
The workflow/process diagram for the installation of S/4 HANA with CAL API is available [here](https://caldocs.hana.ondemand.com/caldocs/help/External_to_CAL_infrastructure.pdf).
135+
136+
## Support
137+
138+
- For any questions about the integration experience of SAL CAL and
139+
SDAF, reach out to '<[email protected]>'.
140+
141+
- For help on issues with the installation, you can create a support
142+
request with SAP CAL on [Report An Issue Dashboard - SAP for
143+
Me](https://me.sap.com/createIssue/0).
144+
145+
- Please raise the request for the component: 'BC-VCM-PSD' in
146+
order for the request to reach the SAP CAL team.
147+
148+
## Next steps
149+
150+
> [!div class="nextstepaction"]
151+
> - [Get started with the deployment automation framework](get-started.md)
152+
> - [Plan for the automation framework](plan-deployment.md)
153+
> - [Configure Azure DevOps for the automation framework](configure-devops.md)
358 KB
Loading
514 KB
Loading
425 KB
Loading
294 KB
Loading
233 KB
Loading

articles/sap/automation/plan-deployment.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -316,7 +316,7 @@ The following sample folder hierarchy shows how to structure your configuration
316316
> | LANDSCAPE | Configuration files for workload zone | A folder with [configuration files for all workload zones](deploy-workload-zone.md) that the environment manages. Name each subfolder by the naming convention **Environment - Region - Virtual Network**. For example, **PROD-WEEU-SAP00-INFRASTRUCTURE**. |
317317
> | SYSTEM | Configuration files for the SAP systems | A folder with [configuration files for all SAP System Identification (SID) deployments](configure-system.md) that the environment manages. Name each subfolder by the naming convention **Environment - Region - Virtual Network - SID**. For example, **PROD-WEEU-SAPO00-ABC**. |
318318
319-
:::image type="content" source="./media/plan-deployment/folder-structure.png" alt-text="Screenshot that shows example folder structure, with separate folders for SAP HANA and multiple workload environments.":::
319+
:::image type="content" source="./media/plan-deployment/folder-structure.png" alt-text="Screenshot that shows example folder structure, with separate folders for SAP HANA and multiple workload environments." lightbox="./media/plan-deployment/folder-structure.png":::
320320

321321
Your parameter file's name becomes the name of the Terraform state file. Make sure to use a unique parameter file name for this reason.
322322

articles/sap/automation/toc.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,8 @@ items:
5555
href: devops-tutorial.md
5656
- name: Sample deployment configurations
5757
href: new-vs-existing.md
58+
- name: Integrate with SAP Cloud Appliance Library
59+
href: integration-sap-cloud-application-library.md
5860
- name: Integration with other Microsoft Azure Services
5961
items:
6062
- name: SAP Monitoring with Azure Monitor for SAP

0 commit comments

Comments
 (0)