Konfigurera kontrollplanet

Kontrollplanet för SAP Deployment Automation Framework består av följande komponenter:

  • Distribuerare
  • SAP-bibliotek

Diagram som visar kontrollplanet.

Distribuerare

Distribueraren är körningsmotorn för SAP Deployment Automation Framework. Det är en förkonfigurerad virtuell dator (VM) som används för att köra Terraform- och Ansible-kommandon. När du använder Azure DevOps är distribueraren en lokalt installerad agent.

Konfigurationen av distribueraren utförs i en Terraform-variabelfil tfvars .

Om du vill använda en befintlig resursgrupp för Deployer anger du Azure-resurs-ID:t för resursgruppen med hjälp av parametern resource_group_arm_id i distribuerarens tfvars-fil. Om parametern inte har definierats skapas resursgruppen med hjälp av standardnamngivningen. Du kan ändra standardnamnet med hjälp av parametern resource_group_name .

Terraform-parametrar

Den här tabellen visar Terraform-parametrarna. Dessa parametrar måste anges manuellt om du inte använder distributionsskripten.

Olika beskrivning Typ
tfstate_resource_id Azure-resursidentifierare för lagringskontot i SAP-biblioteket som innehåller Terraform-tillståndsfilerna Obligatoriskt

Miljöparametrar

Den här tabellen visar de parametrar som definierar resursnamngivningen.

Olika beskrivning Type Anteckningar
environment Identifierare för kontrollplanet (högst 5 tecken). Obligatorisk Till exempel PROD för en produktionsmiljö och NP för en icke-produktionsmiljö.
location Azure-region där du ska distribuera. Obligatoriskt Använd gemener.
codename Ytterligare komponent för att namnge resurserna. Valfritt
name_override_file Åsidosättningsfil för namn. Valfritt Se Anpassad namngivning.
place_delete_lock_on_resources Placera ett borttagningslås på nyckelresurserna. Valfritt

Resursgrupp

Den här tabellen visar de parametrar som definierar resursgruppen.

Olika beskrivning Typ
resourcegroup_name Namnet på resursgruppen som ska skapas Valfritt
resourcegroup_arm_id Azure-resursidentifierare för en befintlig resursgrupp Valfritt
resourcegroup_tags Taggar som ska associeras med resursgruppen Valfritt

Nätverksparametrar

Automation-ramverket stöder både skapandet av det virtuella nätverket och undernäten (grönt fält) eller med hjälp av ett befintligt virtuellt nätverk och befintliga undernät (brunt fält) eller en kombination av grönt fält och brunt fält:

  • Scenario med grönt fält: Det virtuella nätverkets adressutrymme och undernätets adressprefix måste anges.
  • Scenario med brunt fält: Azure-resursidentifieraren för det virtuella nätverket och undernäten måste anges.

Den rekommenderade CIDR för det virtuella nätverkets adressutrymme är /27, vilket tillåter utrymme för 32 IP-adresser. Ett CIDR-värde på /28 tillåter endast 16 IP-adresser. Om du vill inkludera Azure Firewall använder du CIDR-värdet /25 eftersom Azure Firewall kräver ett intervall på /26.

Det rekommenderade CIDR-värdet för hanteringsundernätet är /28, vilket tillåter 16 IP-adresser. Det rekommenderade CIDR-värdet för brandväggsundernätet är /26, vilket tillåter 64 IP-adresser.

Den här tabellen visar nätverksparametrarna.

Olika beskrivning Type Anteckningar
management_network_name Namnet på det virtuella nätverk som distribueraren ska distribueras till Valfritt För distributioner med grönt fält
management_network_logical_name Nätverkets logiska namn (DEV-WEEU-MGMT01-INFRASTRUCTURE) Obligatoriskt
management_network_arm_id Azure-resursidentifieraren för det virtuella nätverket Valfritt För distributioner med brunt fält
management_network_address_space Adressintervallet för det virtuella nätverket Obligatorisk För distributioner med grönt fält
management_subnet_name Namnet på undernätet Valfritt
management_subnet_address_prefix Adressintervallet för undernätet Obligatorisk För distributioner med grönt fält
management_subnet_arm_id Azure-resursidentifieraren för undernätet Obligatorisk För distributioner med brunt fält
management_subnet_nsg_name Namnet på nätverkssäkerhetsgruppen Valfritt
management_subnet_nsg_arm_id Azure-resursidentifieraren för nätverkssäkerhetsgruppen Obligatorisk För distributioner med brunt fält
management_subnet_nsg_allowed_ips Intervall med tillåtna IP-adresser att lägga till i Azure Firewall Valfritt
management_firewall_subnet_arm_id Azure-resursidentifieraren för Azure Firewall-undernätet Obligatorisk För distributioner med brunt fält
management_firewall_subnet_address_prefix Adressintervallet för undernätet Obligatorisk För distributioner med grönt fält
management_bastion_subnet_arm_id Azure-resursidentifieraren för Azure Bastion-undernätet Obligatorisk För distributioner med brunt fält
management_bastion_subnet_address_prefix Adressintervallet för undernätet Obligatorisk För distributioner med grönt fält
webapp_subnet_arm_id Azure-resursidentifieraren för webbappens undernät Obligatorisk För distributioner med brunt fält
webapp_subnet_address_prefix Adressintervallet för undernätet Obligatorisk För distributioner med grönt fält
use_private_endpoint Använd privata slutpunkter. Valfritt
use_service_endpoint Använd tjänstslutpunkter för undernät. Valfritt

Kommentar

När du använder ett befintligt undernät för webbappen måste undernätet vara tomt i samma region som resursgruppen som distribueras och delegeras till Microsoft.Web/serverFarms.

Parametrar för distribuerarens virtuella dator

Den här tabellen visar parametrarna som är relaterade till den virtuella distributionsdatorn.

Olika beskrivning Typ
deployer_size Definierar den virtuella dator-SKU:n som ska användas, standard: Standard_D4ds_v4 Valfritt
deployer_count Definierar antalet distribuerare Valfritt
deployer_image Definierar vm-avbildningen som ska användas, standard: Ubuntu 22.04 Valfritt
plan Definierar planen som är associerad med VM-avbildningen Valfritt
deployer_disk_type Definierar disktypen standard: Premium_LRS Valfritt
deployer_use_DHCP Styr om IP-adresserna som tillhandahålls av Azure-undernätet ska användas (dynamiskt) true Valfritt
deployer_private_ip_address Definierar den privata IP-adress som ska användas Valfritt
deployer_enable_public_ip Definierar om distribueraren har en offentlig IP-adress Valfritt
auto_configure_deployer Definierar om distribueraren har konfigurerats med den programvara som krävs (Terraform och Ansible) Valfritt
add_system_assigned_identity Definierar om distribueraren tilldelas en systemidentitet Valfritt

Vm-avbildningen definieras med hjälp av följande struktur:

xxx_vm_image  = {
  os_type         = ""
  source_image_id = ""
  publisher       = "Canonical"
  offer           = "0001-com-ubuntu-server-jammy"
  sku             = "22_04-lts"
  version         = "latest"
  type            = "marketplace"
}

Kommentar

Typen kan vara marketplace/marketplace_with_plan/custom. Om du använder en avbildning av typen marketplace_with_plan måste bilden i fråga användas minst en gång i prenumerationen. Den första användningen uppmanar användaren att godkänna licensvillkoren och automatiseringen har inget sätt att godkänna den.

Autentiseringsparametrar

Det här avsnittet definierar de parametrar som används för att definiera VM-autentiseringen.

Olika beskrivning Typ
deployer_vm_authentication_type Definierar standardautentiseringen för distribueraren Valfritt
deployer_authentication_username Administratörskontonamn Valfritt
deployer_authentication_password Administratörslösenord Valfritt
deployer_authentication_path_to_public_key Sökväg till den offentliga nyckel som används för autentisering Valfritt
deployer_authentication_path_to_private_key Sökväg till den privata nyckel som används för autentisering Valfritt
use_spn Om distributionen definieras utförs den med hjälp av tjänstens huvudnamn, annars en MSI Valfritt

Nyckelvalvsparametrar

Det här avsnittet definierar de parametrar som används för att definiera Azure Key Vault-informationen.

Olika beskrivning Typ
user_keyvault_id Azure-resursidentifierare för användarens nyckelvalv. Valfritt
spn_keyvault_id Azure-resursidentifierare för nyckelvalvet som innehåller autentiseringsuppgifterna för distributionen. Valfritt
deployer_private_key_secret_name Namnet på nyckelvalvets hemlighet för den privata nyckeln för distribueraren. Valfritt
deployer_public_key_secret_name Nyckelvalvets hemliga namn för den offentliga nyckeln för distribueraren. Valfritt
deployer_username_secret_name Nyckelvalvets hemliga namn för distribuerarens användarnamn. Valfritt
deployer_password_secret_name Nyckelvalvets hemliga namn för distributionslösenordet. Valfritt
additional_users_to_add_to_keyvault_policies En lista över användarobjekt-ID:t som ska läggas till i åtkomstprinciperna för distributionsnyckelvalvet. Valfritt
set_secret_expiry Ange utgången av 12 månader för key vault-hemligheter. Valfritt
soft_delete_retention_days Antalet dagar som objekt ska behållas under perioden för mjuk borttagning. Valfritt
deployer_assign_subscription_permissions Styr tilldelning av prenumerationsbehörighet. Valfritt

DNS-stöd

Olika beskrivning Typ
dns_label DNS-namnet på Privat DNS-zonen. Valfritt
use_custom_dns_a_registration Använder ett externt system för DNS, inställt på false för azure native. Valfritt
management_dns_subscription_id Prenumerations-ID för den prenumeration som innehåller Privat DNS-zonen. Valfritt
management_dns_resourcegroup_name Resursgrupp som innehåller Privat DNS-zonen. Valfritt

Andra parametrar

Olika beskrivning Type Anteckningar
firewall_deployment Boolesk flagga som styr om en Azure-brandvägg ska distribueras. Valfritt
bastion_deployment Boolesk flagga som styr om Azure Bastion-värden ska distribueras. Valfritt
bastion_sku SKU för Azure Bastion-värd som ska distribueras (Basic/Standard). Valfritt
enable_purge_control_for_keyvaults Boolesk flagga som styr om rensningskontrollen är aktiverad i nyckelvalvet. Valfritt Använd endast för testdistributioner.
enable_firewall_for_keyvaults_and_storage Begränsa åtkomsten till valda undernät. Valfritt
Agent_IP IP-adressen för agenten. Valfritt
add_Agent_IP Styr om agent-IP läggs till i brandväggarna för nyckelvalvet och lagringskontot Valfritt

Webbappsparametrar

Olika beskrivning Type Anteckningar
use_webapp Booleskt värde som anger om en webbapp ska distribueras. Valfritt
app_service_SKU_name SKU:n för App Service-planen. Valfritt
app_registration_app_id Appregistrerings-ID:t som ska användas för webbappen. Valfritt
webapp_client_secret SKU:n för App Service-planen. Valfritt Sparas i Key Vault

Exempelparametrar för distribueraren (endast obligatoriska parametrar)

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

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

# management_network_address_space is the address space for management virtual network
management_network_address_space="10.10.20.0/25"

# management_subnet_address_prefix is the address prefix for the management subnet
management_subnet_address_prefix="10.10.20.64/28"

# management_firewall_subnet_address_prefix is the address prefix for the firewall subnet
management_firewall_subnet_address_prefix="10.10.20.0/26"

# management_bastion_subnet_address_prefix is a mandatory parameter if bastion is deployed and if the subnets are not defined in the workload or if existing subnets are not used
management_bastion_subnet_address_prefix = "10.10.20.128/26"

deployer_enable_public_ip=false

firewall_deployment=true

bastion_deployment=true

SAP-bibliotek

SAP-biblioteket tillhandahåller beständig lagring av Terraform-tillståndsfilerna och det nedladdade SAP-installationsmediet för kontrollplanet.

Konfigurationen av SAP-biblioteket utförs i en Terraform-variabelfil tfvars .

Om du vill använda en befintlig resursgrupp för SAP-biblioteket anger du Azure-resurs-ID:t för resursgruppen med hjälp av parametern resource_group_arm_id i distribuerarens tfvars-fil. Om parametern inte har definierats skapas resursgruppen med hjälp av standardnamngivningen. Du kan ändra standardnamnet med hjälp av parametern resource_group_name .

Terraform-parametrar

Den här tabellen visar Terraform-parametrarna. Dessa parametrar måste anges manuellt om du inte använder distributionsskripten eller Azure Pipelines.

Olika beskrivning Type Anteckningar
deployer_tfstate_key Namn på tillståndsfil för distribueraren Obligatoriskt

Miljöparametrar

Den här tabellen visar de parametrar som definierar resursnamngivningen.

Olika beskrivning Type Anteckningar
environment Identifierare för kontrollplanet (högst fem tecken) Obligatorisk Till exempel PROD för en produktionsmiljö och NP för en icke-produktionsmiljö.
location Azure-region där du ska distribuera Obligatoriskt Använd gemener.
name_override_file Åsidosättningsfil för namn Valfritt Se Anpassad namngivning.

Resursgrupp

Den här tabellen visar de parametrar som definierar resursgruppen.

Olika beskrivning Typ
resourcegroup_name Namnet på resursgruppen som ska skapas Valfritt
resourcegroup_arm_id Azure-resursidentifierare för en befintlig resursgrupp Valfritt
resourcegroup_tags Taggar som ska associeras med resursgruppen Valfritt

SAP-installationsmedielagringskonto

Olika beskrivning Typ
library_sapmedia_arm_id Azure-resursidentifierare Valfritt

Lagringskonto för Terraform-fjärrtillstånd

Olika beskrivning Typ
library_terraform_state_arm_id Azure-resursidentifierare Valfritt

DNS-stöd

Olika beskrivning Typ
dns_label DNS-namnet på Privat DNS-zonen. Valfritt
use_custom_dns_a_registration Använd en befintlig Privat DNS zon. Valfritt
management_dns_subscription_id Prenumerations-ID för den prenumeration som innehåller Privat DNS-zonen. Valfritt
management_dns_resourcegroup_name Resursgrupp som innehåller Privat DNS-zonen. Valfritt

Extra parametrar

Olika beskrivning Typ
use_private_endpoint Använd privata slutpunkter. Valfritt
use_service_endpoint Använd tjänstslutpunkter för undernät. Valfritt
enable_firewall_for_keyvaults_and_storage Begränsa åtkomsten till valda undernät. Valfritt
subnets_to_add_to_firewall_for_keyvaults_and_storage Undernät som behöver åtkomst till nyckelvalv och lagringskonton. Valfritt

Exempelparametrar för SAP-biblioteket (endast obligatoriska parametrar)

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

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

Gå vidare