Install SAP software (preview)

Important

Azure Center for SAP solutions is currently in PREVIEW. See the Azure Center for SAP solutions - Legal Terms for legal notices applicable to Azure Center for SAP solutions.

After you've created infrastructure for your new SAP system using Azure Center for SAP solutions, you need to install the SAP software.

In this how-to guide, you'll learn how to upload and install all the required components in your Azure account. You can either run a pre-installation script to automate the upload process or manually upload the components. Then, you can run the software installation wizard.

Prerequisites

  • An Azure subscription.

  • An Azure account with Contributor role access to the subscriptions and resource groups in which the VIS exists.

  • A User-assigned managed identity with Storage Blob Data Reader and Reader and Data Access roles on the Storage Account which has the SAP software.

  • A network set up for your infrastructure deployment.

  • A deployment of S/4HANA infrastructure.

  • The SSH private key for the virtual machines in the SAP system. You generated this key during the infrastructure deployment.

  • If you're installing a Highly Available (HA) SAP system, get the Service Principal identifier (SPN ID) and password to authorize the Azure fence agent (fencing device) against Azure resources. For more information, see Use Azure CLI to create an Azure AD app and configure it to access Media Services API. For an example, see the Red Hat documentation for Creating an Azure Active Directory Application.

    To avoid frequent password expiry, use the Azure Command-Line Interface (Azure CLI) to create the Service Principal identifier and password instead of the Azure portal.

Supported software

Azure Center for SAP solutions supports the following SAP software version: S/4HANA 1909 SPS 03, S/4HANA 2020 SPS 03, S/4HANA 2021 ISS 00. Following is the operating system (OS) software versions compatibility with SAP Software Version:

Publisher Version Generation SKU Patch version name Supported SAP Software Version
Red Hat RHEL-SAP-HA (8.2 HA Pack) 82sapha-gen2 8.2.2021091202 S/4HANA 1909 SPS 03, S/4HANA 2020 SPS 03, S/4HANA 2021 ISS 00
Red Hat RHEL-SAP-HA (8.4 HA Pack) 84sapha-gen2 8.4.2021091202 S/4HANA 1909 SPS 03, S/4HANA 2020 SPS 03, S/4HANA 2021 ISS 00
SUSE sles-sap-15-sp3 gen2 2022.01.26 S/4HANA 1909 SPS 03, S/4HANA 2020 SPS 03, S/4HANA 2021 ISS 00
SUSE sles-sap-12-sp4 gen2 2022.02.01 S/4HANA 1909 SPS 03

Required components

The following components are necessary for the SAP installation.

  • SAP software installation media (part of the sapbits container described later in this article)
    • All essential SAP packages (SWPM, SAPCAR, etc.)
    • SAP software (for example, S/4HANA 2021 ISS 00)
  • Supporting software packages for the installation process which will be downloaded automatially and used by ACSS during the installation).
    • pip3 version pip-21.3.1.tar.gz
    • wheel version 0.37.1
    • jq version 1.6
    • ansible version 2.9.27
    • netaddr version 0.8.0
  • The SAP Bill of Materials (BOM), as generated by Azure Center for SAP solutions. These YAML files list all required SAP packages for the SAP software installation. There's a main BOM (S41909SPS03_v0011ms.yaml, S42020SPS03_v0003ms.yaml, S4HANA_2021_ISS_v0001ms.yaml) and there are dependent BOMs (HANA_2_00_059_v0004ms.yaml, HANA_2_00_064_v0001ms.yaml SUM20SP15_latest.yaml, SWPM20SP13_latest.yaml). They provide the following information:
    • The full name of the SAP package (name)
    • The package name with its file extension as downloaded (archive)
    • The checksum of the package as specified by SAP (checksum)
    • The shortened filename of the package (filename)
    • The SAP URL to download the software (url)
  • Template or INI files, which are stack XML files required to run the SAP packages.

Option 1: Upload software components with script

You can use the following method to upload the SAP components to your Azure account using scripts. Then, you can run the software installation wizard to install the SAP software. We recommend using this method.

You also can upload the components manually instead.

Set up storage account

Before you can download the software, set up an Azure Storage account for storing the software.

  1. Create an Azure Storage account through the Azure portal. Make sure to create the storage account in the same subscription as your SAP system infrastructure.

  2. Create a container within the Azure Storage account named sapbits.

    1. On the storage account's sidebar menu, select Containers under Data storage.

    2. Select + Container.

    3. On the New container pane, for Name, enter sapbits.

    4. Select Create.

  3. Grant the User-assigned managed identity, which was used during infrastructure deployment, Storage Blob Data Reader and Reader and Data Access role access on this storage account.

Download SAP media

You can download the SAP installation media required to install the SAP software, using a script as described in this section.

  1. Create an Ubuntu 20.04 VM in Azure

  2. Sign in to the VM.

  3. Install the Azure CLI on the VM.

    curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash
    
  4. Update the Azure CLI to version 2.30.0 or higher.

  5. Sign in to Azure:

    az login
    
  6. Install Ansible 2.9.27 on the ubuntu VM

    sudo pip3 install ansible==2.9.27
    
  7. Clone the SAP automation repository from GitHub.

    git clone https://github.com/Azure/sap-automation.git
    
  8. Change the branch to main

    git checkout main
    
  9. [Optional] : Verify if the current branch is "main"

    git status
    
  10. Run the Ansible script playbook_bom_download with your own information.

    • When asked if you have a storage account, enter Y.
    • For <username>, use your SAP username.
    • For <password>, use your SAP password.
    • For <bom_base_name>, use the SAP Version you want to install i.e. S41909SPS03_v0011ms or S42020SPS03_v0003ms or S4HANA_2021_ISS_v0001ms
    • For <storageAccountAccessKey>, use your storage account's access key. To find the storage account's key:
    1. Find the storage account in the Azure portal that you created.

    2. On the storage account's sidebar menu, select Access keys under Security + networking.

    3. For key1, select Show key and connection string.

    4. Copy the Key value.

      • For <containerBasePath>, use the path to your sapbits container. To find the container path:
    5. Find the storage account that you created in the Azure portal.

    6. Find the container named sapbits.

    7. On the container's sidebar menu, select Properties under Settings.

    8. Copy down the URL value. The format is https://<your-storage-account>.blob.core.windows.net/sapbits. The format is https://<your-storage-account>.blob.core.windows.net/sapbits

    • Ansible command to run
    ansible-playbook ./sap-automation/deploy/ansible/playbook_bom_downloader.yaml -e "bom_base_name=S41909SPS03_v0011ms" -e "deployer_kv_name=dummy_value" -e "s_user=<username>" -e "s_password=<password>" -e "sapbits_access_key=<storageAccountAccessKey>" -e "sapbits_location_base_path=<containerBasePath>" 
    

Now, you can install the SAP software using the installation wizard.

Option 2: Upload software components manually

You can use the following method to download and upload the SAP components to your Azure storage account manually. Then, you can run the software installation wizard to install the SAP software.

You also can run scripts to automate this process instead.

  1. Create a new Azure storage account for storing the software components.

  2. Grant the roles Storage Blob Data Reader and Reader and Data Access to the user-assigned managed identity, which you used during infrastructure deployment.

  3. Create a container within the storage account. You can choose any container name; for example, sapbits.

  4. Create a folder within the container, named sapfiles.

    Warning

    Don't change the folder name structure for any steps in this process. Otherwise, the installation process can fail.

  5. Go to the sapfiles folder.

  6. Create two subfolders named archives and boms.

  7. In the boms folder, create four subfolders as follows.

    • For S/4HANA 1909 SPS 03, make following folders
    1. HANA_2_00_059_v0003ms
    2. S41909SPS03_v0011ms
    3. SWPM20SP12_latest
    4. SUM20SP14_latest
    • For S/4HANA 2020 SPS 03, make following folders
    1. HANA_2_00_064_v0001ms
    2. S42020SPS03_v0003ms
    3. SWPM20SP12_latest
    4. SUM20SP14_latest
    • For S/4HANA 2021 ISS 00, make following folders
    1. HANA_2_00_064_v0001ms
    2. S4HANA_2021_ISS_v0001ms
    3. SWPM20SP12_latest
    4. SUM20SP14_latest
  8. Upload the following YAML files to the folders with the same name.

    • For S/4HANA 1909 SPS 03,
    1. S41909SPS03_v0011ms.yaml
    2. HANA_2_00_059_v0004ms.yaml
    3. SWPM20SP13_latest.yaml
    4. SUM20SP15_latest.yaml
    • For S/4HANA 2020 SPS 03,
    1. S42020SPS03_v0003ms.yaml
    2. HANA_2_00_064_v0001ms.yaml
    3. SWPM20SP13_latest.yaml
    4. SUM20SP15_latest.yaml
    • For S/4HANA 2021 ISS 00,
    1. S4HANA_2021_ISS_v0001ms.yaml
    2. HANA_2_00_064_v0001ms.yaml
    3. SWPM20SP13_latest.yaml
    4. SUM20SP15_latest.yaml
  9. Depending upon the SAP product version you are installing go to S41909SPS03_v0011ms or S42020SPS03_v0003ms or S4HANA_2021_ISS_v0001ms folder and create a subfolder named templates.

  10. Download the following files. Then, upload all the files to the templates folder.

    • For S/4HANA 1909 SPS 03,
    1. HANA_2_00_055_v1_install.rsp.j2
    2. S41909SPS03_v0011ms-app-inifile-param.j2
    3. S41909SPS03_v0011ms-dbload-inifile-param.j2
    4. S41909SPS03_v0011ms-ers-inifile-param.j2
    5. S41909SPS03_v0011ms-generic-inifile-param.j2
    6. S41909SPS03_v0011ms-pas-inifile-param.j2
    7. S41909SPS03_v0011ms-scs-inifile-param.j2
    8. S41909SPS03_v0011ms-scsha-inifile-param.j2
    9. S41909SPS03_v0011ms-web-inifile-param.j2
    • For S/4HANA 2020 SPS 03,
    1. HANA_2_00_055_v1_install.rsp.j2
    2. HANA_2_00_install.rsp.j2
    3. S42020SPS03_v0003ms-app-inifile-param.j2
    4. S42020SPS03_v0003ms-dbload-inifile-param.j2
    5. S42020SPS03_v0003ms-ers-inifile-param.j2
    6. S42020SPS03_v0003ms-generic-inifile-param.j2
    7. S42020SPS03_v0003ms-pas-inifile-param.j2
    8. S42020SPS03_v0003ms-scs-inifile-param.j2
    9. S42020SPS03_v0003ms-scsha-inifile-param.j2
    • For S/4HANA 2021 ISS 00,
    1. HANA_2_00_055_v1_install.rsp.j2
    2. HANA_2_00_install.rsp.j2
    3. NW_ABAP_ASCS_S4HANA2021.CORE.HDB.AB
    4. NW_ABAP_CI-S4HANA2021.CORE.HDB.ABAP_Distributed.params
    5. NW_ABAP_DB-S4HANA2021.CORE.HDB.ABAP_Distributed.params
    6. NW_DI-S4HANA2021.CORE.HDB.PD_Distributed.params
    7. NW_Users_Create-GENERIC.HDB.PD_Distributed.params
    8. S4HANA_2021_ISS_v0001ms-app-inifile-param.j2
    9. S4HANA_2021_ISS_v0001ms-dbload-inifile-param.j2
    10. S4HANA_2021_ISS_v0001ms-ers-inifile-param.j2
    11. S4HANA_2021_ISS_v0001ms-generic-inifile-param.j2
    12. S4HANA_2021_ISS_v0001ms-pas-inifile-param.j2
    13. S4HANA_2021_ISS_v0001ms-scs-inifile-param.j2
    14. S4HANA_2021_ISS_v0001ms-scsha-inifile-param.j2
    15. S4HANA_2021_ISS_v0001ms-web-inifile-param.j2
  11. Go back to the sapfiles folder, then go to the archives subfolder.

  12. Download all packages that aren't labeled as download: false in the main BOM URL shown below. You can use the URL mentioned in the BOM to download each package. Make sure to download the exact package versions listed in each BOM. Repeat this step for the main and dependent BOM files.

    • For S/4HANA 1909 SPS 03,
    1. S41909SPS03_v0011ms.yaml
    2. HANA_2_00_059_v0004ms.yaml
    3. SWPM20SP13_latest.yaml
    4. SUM20SP15_latest.yaml
    • For S/4HANA 2020 SPS 03,
    1. S42020SPS03_v0003ms.yaml
    2. HANA_2_00_064_v0001ms.yaml
    3. SWPM20SP13_latest.yaml
    4. SUM20SP15_latest.yaml
    • For S/4HANA 2021 ISS 00,
    1. S4HANA_2021_ISS_v0001ms.yaml
    2. HANA_2_00_064_v0001ms.yaml
    3. SWPM20SP13_latest.yaml
    4. SUM20SP15_latest.yaml
  13. Upload all the packages that you downloaded to the archives folder. Don't rename the files.

  14. Optionally, you can install other packages that aren't required.

    1. Download the package files.
    2. Upload the files to the archives folder.
    3. Open the S41909SPS03_v0011ms or S42020SPS03_v0003ms or S4HANA_2021_ISS_v0001ms YAML file for the BOM.
    4. Edit the information for each optional package to download:true.
    5. Save the YAML file and reupload the yaml file. There shall be only one yaml file in the subfolder (S41909SPS03_v0011ms or S42020SPS03_v0003ms or S4HANA_2021_ISS_v0001ms) of the "boms" folder

Now, you can install the SAP software using the installation wizard.

Install software

To install the SAP software on Azure, use the Azure Center for SAP solutions installation wizard.

  1. Sign in to the Azure portal.

  2. Search for and select Virtual Instance for SAP solutions.

  3. Select your Virtual Instance for SAP solutions (VIS) instance.

  4. On the Overview page for the VIS resource, select Install SAP software.

  5. In the Prerequisites tab of the wizard, review the prerequisites. Then, select Next.

  6. On the Software tab, provide information about your SAP media.

    1. For Have you uploaded the software to an Azure storage account?, select Yes.

    2. For Software version, use the SAP S/4HANA 1909 SPS03 or SAP S/4HANA 2020 SPS 03 or SAP S/4HANA 2021 ISS 00 . Please note only those versions will light up which are supported with the OS version that was used to deploy the infrastructure previously.

    3. For BOM directory location, select Browse and find the path to your BOM file. For example, https://<your-storage-account>.blob.core.windows.net/sapbits/sapfiles/boms/S41909SPS03_v0010ms.yaml.

    4. For High Availability (HA) systems only, enter the client identifier for the STONITH Fencing Agent service principal for Fencing client ID.

    5. For High Availability (HA) systems only, enter the password for the Fencing Agent service principal for Fencing client password.

    6. Select Next.

  7. On the Review + install tab, review the software settings.

  8. Select Install to proceed with installation.

  9. Wait for the installation to complete. The process takes approximately three hours. You can see the progress, along with estimated times for each step, in the wizard.

  10. After the installation completes, sign in with your SAP system credentials. Refer to this section to find the SAP system and HANA DB credentials for the newly installed system.

Limitations

The following are known limitations and issues.

Application Servers

You can install a maximum of 10 Application Servers, excluding the Primary Application Server.

SAP package version changes

  1. When SAP changes the version of packages for a component in the BOM, you might encounter problems with the automated installation shell script. It's recommended to download your SAP installation media as soon as possible to avoid issues.

If you encounter this problem, follow these steps:

  1. Download a new valid package from the SAP software downloads page.

  2. Upload the new package in the archives folder of your Azure Storage account.

  3. Update the following contents in the BOM file(s) that reference the updated component.

    • name to the new package name
    • archive to the new package name and extension
    • checksum to the new checksum
    • filename to the new shortened package name
    • permissions to 0755
    • url to the new SAP download URL
  4. Reupload the BOM file(s) in the subfolder (S41909SPS03_v0011ms or S42020SPS03_v0003ms or S4HANA_2021_ISS_v0001ms) of the "boms" folder

Special characters like $ in S-user password is not accepted while downloading the BOM.

  1. Follow the step by step instructions upto cloning the 'SAP Automation repository from GitHub' in Download SAP media section.

  2. Before running the Ansible playbook set the SPASS environment variable below. Single quotes should be present in the below command

    export SPASS='password_with_special_chars'
    
  3. Then run the ansible playbook

    ansible-playbook ./sap-automation/deploy/ansible/playbook_bom_downloader.yaml -e "bom_base_name=S41909SPS03_v0011ms" -e "deployer_kv_name=dummy_value" -e "s_user=<username>" -e "s_password=$SPASS" -e "sapbits_access_key=<storageAccountAccessKey>" -e "sapbits_location_base_path=<containerBasePath>"
  • For <username>, use your SAP username.

  • For <bom_base_name>, use the SAP Version you want to install i.e. S41909SPS03_v0011ms or S42020SPS03_v0003ms or S4HANA_2021_ISS_v0001ms

  • For <storageAccountAccessKey>, use your storage account's access key. You found this value in the Download SAP media section

  • For <containerBasePath>, use the path to your sapbits container. You found this value in the Download SAP media section.

    The format is https://<your-storage-account>.blob.core.windows.net/sapbits

This should resolve the problem and you can proceed with next steps as described in the section.

Next steps