|
| 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) |
0 commit comments