Distribution av arbetsbelastningszoner i SAP Automation-ramverket
Ett SAP-program har vanligtvis flera utvecklingsnivåer. Du kan till exempel ha utvecklings-, kvalitetssäkrings- och produktionsnivåer. SAP Deployment Automation Framework anropar arbetsbelastningszonerna på dessa nivåer.
Du kan använda arbetsbelastningszoner i flera Azure-regioner. Varje arbetsbelastningszon har sedan en egen instans av Azure Virtual Network.
Följande tjänster tillhandahålls av SAP-arbetsbelastningszonen:
- Ett virtuellt nätverk, inklusive undernät och nätverkssäkerhetsgrupper
- En Azure Key Vault-instans för systemautentiseringsuppgifter
- Ett Azure Storage-konto för startdiagnostik
- Ett lagringskonto för molnvittnen
- Ett Azure NetApp Files-konto och kapacitetspooler (valfritt)
- Azure Files NFS-resurser (valfritt)
- Azure Monitor för SAP (valfritt)
Arbetsbelastningszonerna distribueras vanligtvis i ekrar i en hubb- och ekerarkitektur. De kan finnas i sina egna prenumerationer.
Den privata DNS:en stöds från kontrollplanet eller från en konfigurerbar källa.
Kärnkonfiguration
Följande exempelparameterfil visar endast obligatoriska parametrar.
# 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"
Förbereda autentiseringsuppgifterna för arbetsbelastningszonens distribution
SAP Deployment Automation Framework använder tjänstens huvudnamn när du utför distributionen. Om du vill skapa tjänstens huvudnamn för distributionen av arbetsbelastningszonen använder du ett konto med behörighet att skapa tjänstens huvudnamn.
az ad sp create-for-rbac --role="Contributor" --scopes="/subscriptions/<subscriptionID>" --name="<environment>-Deployment-Account"
Viktigt!
Namnet på tjänstens huvudnamn måste vara unikt.
Registrera utdatavärdena från kommandot:
- appId
- password
- tenant
Tilldela rätt behörigheter till tjänstens huvudnamn.
az role assignment create --assignee <appId> \
--scope /subscriptions/<subscriptionID> \
--role "User Access Administrator"
Distribuera SAP-arbetsbelastningszonen
Exempelkonfigurationsfilen DEV-WEEU-SAP01-INFRASTRUCTURE.tfvars
för arbetsbelastningszonen finns i ~/Azure_SAP_Automated_Deployment/samples/Terraform/WORKSPACES/LANDSCAPE/DEV-WEEU-SAP01-INFRASTRUCTURE
mappen.
Kör följande kommando för att distribuera SAP-arbetsbelastningszonen.
Utför den här uppgiften från distribueraren.
Du kan kopiera exempelkonfigurationsfilerna för att börja testa ramverket för distributionsautomatisering.
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}"
Dricks
Om skripten inte kan köras kan det ibland hjälpa till att rensa de lokala cachefilerna genom att ta bort ~/.sap_deployment_automation/
katalogerna och ~/.terraform.d/
innan du kör skripten igen.