Partager via


Déploiement de la zone de charge de travail dans l’infrastructure d’automatisation SAP

Une application SAP a généralement plusieurs niveaux de développement. Par exemple, vous pouvez avoir des niveaux de développement, d’assurance qualité et de production. L’infrastructure d’automatisation du déploiement SAP appelle ces zones de charge de travail tierces.

Vous pouvez utiliser des zones de charge de travail dans plusieurs régions Azure. Chaque zone de charge de travail dispose alors de sa propre instance du réseau virtuel Azure.

Les services suivants sont fournis par la zone de charge de travail SAP :

  • Un réseau virtuel, y compris des sous-réseaux et des groupes de sécurité réseau
  • Une instance Azure Key Vault pour les informations d’identification système
  • Un compte de stockage Azure pour des diagnostics de démarrage
  • Un compte de stockage pour les témoins cloud
  • Un compte Azure NetApp Files et un pool de capacités (facultatif)
  • Partages NFS Azure Files (facultatif)
  • Azure Monitor pour SAP (facultatif)

Diagram that shows an SAP workload zone.

Les zones de charge de travail sont généralement déployées dans spokes dans une architecture hub-and-spoke. Elles peuvent être dans leurs propres abonnements.

Le DNS privé est pris en charge à partir du plan de contrôle ou d’une source configurable.

Configuration de base

L’exemple de fichier de paramètres suivant affiche uniquement les paramètres requis.

# The environment value is a mandatory field, it is used for partitioning the environments, for example (PROD and NP)
environment="DEV"

# The location value is a mandatory field, it is used to control where the resources are deployed
location="westeurope"

# The network logical name is mandatory - it is used in the naming convention and should map to the workload virtual network logical name
network_name="SAP01"

# network_address_space is a mandatory parameter when an existing virtual network is not used
network_address_space="10.110.0.0/16"

# admin_subnet_address_prefix is a mandatory parameter if the subnets are not defined in the workload or if existing subnets are not used
admin_subnet_address_prefix="10.110.0.0/19"

# db_subnet_address_prefix is a mandatory parameter if the subnets are not defined in the workload or if existing subnets are not used
db_subnet_address_prefix="10.110.96.0/19"

# app_subnet_address_prefix is a mandatory parameter if the subnets are not defined in the workload or if existing subnets are not used
app_subnet_address_prefix="10.110.32.0/19"

# The automation_username defines the user account used by the automation
automation_username="azureadm"

Préparer des informations d’identification du déploiement de la zone de charge de travail

L’infrastructure d’automatisation du déploiement SAP utilise des principaux de service lors du déploiement. Pour créer le principal du service pour le déploiement de la zone de charge de travail, à l’aide d’un compte disposant des autorisations pour créer des principaux de service.

az ad sp create-for-rbac --role="Contributor" --scopes="/subscriptions/<subscriptionID>" --name="<environment>-Deployment-Account"

Important

Le nom du principal de service doit être unique.

Enregistrez les valeurs de sortie de la commande :

  • appId
  • mot de passe
  • tenant

Attribuez les autorisations appropriées au principal de service.

az role assignment create --assignee <appId> \
    --scope /subscriptions/<subscriptionID> \
    --role "User Access Administrator"

Déployer la zone de charge de travail SAP

Le fichier config DEV-WEEU-SAP01-INFRASTRUCTURE.tfvars de l’exemple de zone de charge de travail se trouve dans le dossier ~/Azure_SAP_Automated_Deployment/samples/Terraform/WORKSPACES/LANDSCAPE/DEV-WEEU-SAP01-INFRASTRUCTURE.

Exécutez la commande suivante pour déployer la zone de charge de travail SAP.

Effectuez cette tâche à partir du système de déploiement.

Vous pouvez copier les fichiers de configuration d'exemple pour commencer à tester le cadre d'automatisation du déploiement.

cd ~/Azure_SAP_Automated_Deployment

cp -R sap-automation/samples/WORKSPACES config


export  ARM_SUBSCRIPTION_ID="<subscriptionId>"
export        ARM_CLIENT_ID="<appId>"
export    ARM_CLIENT_SECRET="<password>"
export        ARM_TENANT_ID="<tenantId>"
export             env_code="DEV"
export          region_code="<region_code>"
export            vnet_code="SAP02"
export deployer_environment="MGMT"


export DEPLOYMENT_REPO_PATH="${HOME}/Azure_SAP_Automated_Deployment/sap-automation"
export CONFIG_REPO_PATH="${HOME}/Azure_SAP_Automated_Deployment/config/WORKSPACES"
export SAP_AUTOMATION_REPO_PATH="${HOME}/Azure_SAP_Automated_Deployment/sap-automation"

az login --service-principal -u "${ARM_CLIENT_ID}" -p="${ARM_CLIENT_SECRET}" --tenant "${ARM_TENANT_ID}"


cd "${CONFIG_REPO_PATH}/LANDSCAPE/${env_code}-${region_code}-${vnet_code}-INFRASTRUCTURE"
parameterFile="${env_code}-${region_code}-${vnet_code}-INFRASTRUCTURE.tfvars"

$SAP_AUTOMATION_REPO_PATH/deploy/scripts/install_workloadzone.sh   \
    --parameterfile "${parameterFile}"                             \
    --deployer_environment "${deployer_environment}"               \ 
    --subscription "${ARM_SUBSCRIPTION_ID}"                        \
    --spn_id "${ARM_CLIENT_ID}"                                    \
    --spn_secret "${ARM_CLIENT_SECRET}"                            \
    --tenant_id "${ARM_TENANT_ID}"
    

Conseil

En cas d’échec de l’exécution des scripts, il peut parfois être utile d’effacer les fichiers du cache local en supprimant les répertoires ~/.sap_deployment_automation/ et ~/.terraform.d/ avant d’exécuter à nouveau les scripts.

Étape suivante