Edit

Create infrastructure for a distributed HA SAP system with custom resource names by using Azure CLI

In this quickstart, you use Azure CLI to deploy infrastructure for a distributed highly available (HA) SAP system with customized resource names in Azure Center for SAP solutions. Alternatively, you can use the Azure PowerShell module.

After you deploy infrastructure and install SAP software, you can manage and monitor the system through the Virtual Instance for SAP solutions (VIS) resource. For example, you can:

  • View and track the SAP system as an Azure resource.
  • Get recommendations for your SAP infrastructure and operating system configurations based on quality checks that evaluate best practices for SAP on Azure.
  • Get health and status information about your SAP system.
  • Start and stop the SAP application tier.
  • Start and stop individual instances of Advanced Business Application Programming SAP Central Services (ASCS), Application server, and HANA database.
  • Monitor the Azure infrastructure metrics for the SAP system resources.
  • View cost analysis for the SAP system.

Prerequisites

  • An Azure subscription. If you don't have an Azure subscription, create a free account.

  • If you're using Azure Center for SAP solutions for the first time, register the Microsoft.Workloads resource provider on the subscription in which you're deploying the SAP system:

    az provider register --namespace 'Microsoft.Workloads'
    
  • An Azure account with Azure Center for SAP solutions administrator and Managed Identity Operator role access to the subscriptions and resource groups in which you create the Virtual Instance for SAP solutions (VIS) resource.

  • A User-assigned managed identity that has Azure Center for SAP solutions service role access on the subscription or at least all resource groups (Compute, Network, Storage). If you want to install SAP software through Azure Center for SAP solutions, also provide Reader and Data Access role to the identity on the SAP bits storage account where you store the SAP media.

  • A network set up for your infrastructure deployment.

  • A 4 core minimum of either Standard_D4ds_v4 or Standard_E4s_v3 SKUs, which are used during infrastructure deployment and software installation.

  • Sufficient quotas for your Azure subscription. If the quotas are low, you might need to create a support request before creating your infrastructure deployment. Otherwise, you might experience deployment failures or an Insufficient quota error.

  • The SAP Application Performance Standard (SAPS) and database memory size that you need to allow Azure Center for SAP solutions to size your SAP system. If you're not sure, you can also select the VMs. There are:

    • A single or cluster of ASCS VMs, which make up a single ASCS instance in the VIS.
    • A single or cluster of database VMs, which make up a single database instance in the VIS.
    • A single Application Server VM, which makes up a single application instance in the VIS. Depending on the number of Application Servers being deployed or registered, there can be multiple application instances.

Azure Cloud Shell

Azure hosts Azure Cloud Shell, an interactive shell environment that you can use through your browser. You can use either Bash or PowerShell with Cloud Shell to work with Azure services. You can use the Cloud Shell preinstalled commands to run the code in this article, without having to install anything on your local environment.

To start Azure Cloud Shell:

Option Example/Link
Select Try It in the upper-right corner of a code or command block. Selecting Try It doesn't automatically copy the code or command to Cloud Shell. Screenshot that shows an example of Try It for Azure Cloud Shell.
Go to https://shell.azure.com, or select the Launch Cloud Shell button to open Cloud Shell in your browser. Button to launch Azure Cloud Shell.
Select the Cloud Shell button on the menu bar at the upper right in the Azure portal. Screenshot that shows the Cloud Shell button in the Azure portal

To use Azure Cloud Shell:

  1. Start Cloud Shell.

  2. Select the Copy button on a code block (or command block) to copy the code or command.

  3. Paste the code or command into the Cloud Shell session by selecting Ctrl+Shift+V on Windows and Linux, or by selecting Cmd+Shift+V on macOS.

  4. Select Enter to run the code or command.

Get SAP system sizing recommendations

Use az workloads sap-sizing-recommendation to get SAP system sizing recommendations by providing SAPS input for the application tier and memory required for the database tier.

az workloads sap-sizing-recommendation --app-location "eastus" --database-type "HANA" --db-memory 1024 --deployment-type "ThreeTier" --environment "Prod" --high-availability-type "AvailabilitySet" --sap-product "S4HANA" --saps 75000 --location "eastus2" --db-scale-method ScaleUp

Create a JSON configuration file with custom resource names

  1. To use for the deployment of SAP system infrastructure, prepare a JSON file with the configuration (payload). You can make edits in this sample payload or use the examples listed in the REST API documentation for Azure Center for SAP solutions.

  2. In the JSON file, provide the custom resource names for the infrastructure that is deployed for your SAP system.

Deploy infrastructure for your SAP system

Use az workloads sap-virtual-instance create to deploy infrastructure for your SAP system with a three-tier HA architecture.

az workloads sap-virtual-instance create -g <Resource Group Name> -n <VIS Name> --environment NonProd --sap-product s4hana --configuration <Payload file path> --identity "{type:UserAssigned,userAssignedIdentities:{<Managed_Identity_ResourceID>:{}}}"