Configuratie van de workloadzone in het SAP Automation-framework
Een SAP-toepassing heeft doorgaans meerdere ontwikkellagen. U hebt bijvoorbeeld ontwikkelings-, kwaliteitsgarantie- en productielagen. SAP Deployment Automation Framework roept deze workloadzones aan. Zie het volgende diagram voor een voorbeeld van een workloadzone met twee SAP-systemen.
De workloadzone biedt gedeelde services voor alle SAP-systemen in de workloadzone. Deze gedeelde services zijn onder andere:
- Azure Virtual Network
- Azure Key Vault
- Gedeeld Azure Storage-account voor installatiemedia
- Azure NetApp Files-account en capaciteitspool (optioneel)
De workloadzone wordt doorgaans geïmplementeerd in een spoke-abonnement en de implementatie van alle artefacten in de workloadzone wordt uitgevoerd met behulp van een unieke service-principal.
Configuratie van implementatie van workloadzone
De configuratie van de SAP-workloadzone wordt uitgevoerd via een Terraform-variabelebestand tfvars
. U vindt voorbeelden van het variabelebestand in de samples/WORKSPACES/LANDSCAPE
map.
In de volgende secties ziet u de verschillende secties van het variabelebestand.
Omgevingsparameters
Deze tabel bevat de parameters waarmee de omgevingsinstellingen worden gedefinieerd.
Variabele | Beschrijving | Type | Opmerkingen |
---|---|---|---|
environment |
Id voor de workloadzone (maximaal vijf tekens) | Verplicht | Bijvoorbeeld PROD voor een productieomgeving en QA voor een quality assurance-omgeving. |
location |
De Azure-regio waarin moet worden geïmplementeerd | Vereist | |
name_override_file |
Naam overschrijven bestand | Optioneel | Zie Aangepaste naamgeving. |
tags |
Een woordenlijst met tags die aan alle resources moeten worden gekoppeld. | Optioneel |
Resourcegroepparameters
Deze tabel bevat de parameters waarmee de resourcegroep wordt gedefinieerd.
Variabele | Beschrijving | Type |
---|---|---|
resourcegroup_name |
Naam van de resourcegroep die moet worden gemaakt | Optioneel |
resourcegroup_arm_id |
Azure-resource-id voor een bestaande resourcegroep | Optioneel |
resourcegroup_tags |
Tags die aan de resourcegroep moeten worden gekoppeld | Optioneel |
Netwerkparameters
Het automatiseringsframework ondersteunt zowel het maken van het virtuele netwerk als de subnetten (groen veld) of het gebruik van een bestaand virtueel netwerk en bestaande subnetten (bruin veld) of een combinatie van groen veld en bruin veld:
- Scenario met groen veld: de adresruimte van het virtuele netwerk en de voorvoegsels van het subnetadres moeten worden opgegeven.
- Brown-field scenario: De Azure-resource-id voor het virtuele netwerk en de subnetten moeten worden opgegeven.
Zorg ervoor dat de adresruimte van het virtuele netwerk groot genoeg is om alle resources te hosten.
Deze tabel bevat de netwerkparameters.
Variabele | Beschrijving | Type | Opmerkingen |
---|---|---|---|
network_logical_name |
De logische naam van het netwerk, bijvoorbeeld SAP01 |
Vereist | Wordt gebruikt voor naamgeving van resources |
network_name |
De naam van het netwerk | Optioneel | |
network_arm_id |
De Azure-resource-id voor het virtuele netwerk | Optioneel | Voor bruinveldimplementaties |
network_address_space |
Het adresbereik voor het virtuele netwerk | Verplicht | Voor implementaties in groen veld |
admin_subnet_address_prefix |
Het adresbereik voor het admin subnet |
Verplicht | Voor implementaties in groen veld |
admin_subnet_arm_id |
De Azure-resource-id voor het admin subnet |
Verplicht | Voor bruinveldimplementaties |
admin_subnet_name |
De naam van het admin subnet |
Optioneel | |
admin_subnet_nsg_name |
De naam van de admin netwerkbeveiligingsgroep |
Optioneel | |
admin_subnet_nsg_arm_id |
De Azure-resource-id voor de admin netwerkbeveiligingsgroep |
Verplicht | Voor bruinveldimplementaties |
db_subnet_address_prefix |
Het adresbereik voor het db subnet |
Verplicht | Voor implementaties in groen veld |
db_subnet_arm_id |
De Azure-resource-id voor het db subnet |
Verplicht | Voor bruinveldimplementaties |
db_subnet_name |
De naam van het db subnet |
Optioneel | |
db_subnet_nsg_name |
De naam van de db netwerkbeveiligingsgroep |
Optioneel | |
db_subnet_nsg_arm_id |
De Azure-resource-id voor de db netwerkbeveiligingsgroep |
Verplicht | Voor bruinveldimplementaties |
app_subnet_address_prefix |
Het adresbereik voor het app subnet |
Verplicht | Voor implementaties in groen veld |
app_subnet_arm_id |
De Azure-resource-id voor het app subnet |
Verplicht | Voor bruinveldimplementaties |
app_subnet_name |
De naam van het app subnet |
Optioneel | |
app_subnet_nsg_name |
De naam van de app netwerkbeveiligingsgroep |
Optioneel | |
app_subnet_nsg_arm_id |
De Azure-resource-id voor de app netwerkbeveiligingsgroep |
Verplicht | Voor bruinveldimplementaties |
web_subnet_address_prefix |
Het adresbereik voor het web subnet |
Verplicht | Voor implementaties in groen veld |
web_subnet_arm_id |
De Azure-resource-id voor het web subnet |
Verplicht | Voor bruinveldimplementaties |
web_subnet_name |
De naam van het web subnet |
Optioneel | |
web_subnet_nsg_name |
De naam van de web netwerkbeveiligingsgroep |
Optioneel | |
web_subnet_nsg_arm_id |
De Azure-resource-id voor de web netwerkbeveiligingsgroep |
Verplicht | Voor bruinveldimplementaties |
Deze tabel bevat de netwerkparameters als Azure NetApp Files wordt gebruikt.
Variabele | Beschrijving | Type | Opmerkingen |
---|---|---|---|
anf_subnet_arm_id |
De Azure-resource-id voor het ANF subnet |
Vereist | Wanneer u bestaande subnetten gebruikt |
anf_subnet_address_prefix |
Het adresbereik voor het ANF subnet |
Vereist | Bij gebruik ANF voor implementaties |
anf_subnet_name |
De naam van het ANF subnet |
Optioneel | |
anf_subnet_nsg_name |
De naam van de anf netwerkbeveiligingsgroep |
Optioneel | |
anf_subnet_nsg_arm_id |
De Azure-resource-id voor de anf netwerkbeveiligingsgroep |
Optioneel | Voor bruinveldimplementaties |
Deze tabel bevat de netwerkparameters als iSCSI-apparaten worden gehost vanuit deze workloadzone.
Variabele | Beschrijving | Type | Opmerkingen |
---|---|---|---|
iscsi_subnet_address_prefix |
Het adresbereik voor het iscsi subnet |
Verplicht | Voor implementaties in groen veld |
iscsi_subnet_arm_id |
De Azure-resource-id voor het iscsi subnet |
Verplicht | Voor bruinveldimplementaties |
iscsi_subnet_name |
De naam van het iscsi subnet |
Optioneel | |
iscsi_subnet_nsg_arm_id |
De Azure-resource-id voor de iscsi netwerkbeveiligingsgroep |
Verplicht | Voor bruinveldimplementaties |
iscsi_subnet_nsg_name |
De naam van de iscsi netwerkbeveiligingsgroep |
Optioneel |
Deze tabel bevat de netwerkparameters als Azure Monitor voor SAP wordt gehost vanuit deze workloadzone.
Variabele | Beschrijving | Type | Opmerkingen |
---|---|---|---|
ams_subnet_address_prefix |
Het adresbereik voor het iscsi subnet |
Verplicht | Voor implementaties in groen veld |
ams_subnet_arm_id |
De Azure-resource-id voor het iscsi subnet |
Verplicht | Voor bruinveldimplementaties |
ams_subnet_name |
De naam van het iscsi subnet |
Optioneel | |
ams_subnet_nsg_arm_id |
De Azure-resource-id voor de iscsi netwerkbeveiligingsgroep |
Verplicht | Voor bruinveldimplementaties |
ams_subnet_nsg_name |
De naam van de iscsi netwerkbeveiligingsgroep |
Optioneel |
Deze tabel bevat aanvullende netwerkparameters.
Variabele | Beschrijving | Type | Opmerkingen |
---|---|---|---|
use_private_endpoint |
Zijn privé-eindpunten gemaakt voor opslagaccounts en sleutelkluizen. | Optioneel | |
use_service_endpoint |
Zijn service-eindpunten gedefinieerd voor de subnetten. | Optioneel | |
peer_with_control_plane_vnet |
Zijn virtuele netwerken gekoppeld aan het virtuele netwerk van het besturingsvlak. | Optioneel | Vereist voor de SAP-installatie |
public_network_access_enabled |
Is openbare toegang ingeschakeld voor de opslagaccounts en sleutelkluizen | Optioneel |
Minimaal vereiste netwerkdefinitie
network_logical_name = "SAP01"
network_address_space = "10.110.0.0/16"
db_subnet_address_prefix = "10.110.96.0/19"
app_subnet_address_prefix = "10.110.32.0/19"
Verificatieparameters
In deze tabel worden de referenties gedefinieerd die worden gebruikt voor het definiëren van de verificatie van de virtuele machine.
Variabele | Beschrijving | Type | Opmerkingen |
---|---|---|---|
automation_username |
accountnaam van Beheer istrator | Optioneel | Standaardwaarde: azureadm |
automation_password |
wachtwoord voor Beheer istrator | Optioneel | |
automation_path_to_public_key |
Pad naar bestaande openbare sleutel | Optioneel | |
automation_path_to_private_key |
Pad naar bestaande persoonlijke sleutel | Optioneel | |
use_spn |
Als de implementatie is gedefinieerd, wordt deze uitgevoerd met behulp van een service-principal, anders een MSI | Optioneel |
Minimaal vereiste verificatiedefinitie
automation_username = "azureadm"
Sleutelkluisparameters
In deze tabel worden de parameters gedefinieerd die worden gebruikt voor het definiëren van de sleutelkluisgegevens.
Variabele | Beschrijving | Type | Opmerkingen |
---|---|---|---|
spn_keyvault_id |
Azure-resource-id voor bestaande spn-sleutelkluis (implementatiereferenties) | Optioneel | |
user_keyvault_id |
Azure-resource-id voor bestaande sleutelkluis voor systeemreferenties | Optioneel | |
additional_users_to_add_to_keyvault_policies |
Een lijst met gebruikersobject-id's die moeten worden toegevoegd aan het toegangsbeleid voor de implementatiesleutelkluis | Optioneel | |
enable_purge_control_for_keyvaults |
Schakelt de beveiliging tegen opschonen van Azure-sleutelkluizen uit | Optioneel | Alleen gebruiken voor testomgevingen. |
enable_rbac_authorization_for_keyvault |
Schakelt RBAC in op sleutelkluizen | Optioneel | |
soft_delete_retention_days |
Het aantal dagen dat items moeten worden bewaard in de periode voor voorlopig verwijderen | Optioneel | |
keyvault_private_endpoint_id |
Azure-resource-id van het privé-eindpunt van de sleutelkluis | Optioneel |
Privé-DNS
Variabele | Beschrijving | Type |
---|---|---|
dns_label |
Indien opgegeven, is dit de DNS-naam van de privé-DNS-zone | Optioneel |
dns_resource_group_name |
De naam van de resourcegroep die de privé-DNS-zone bevat | Optioneel |
register_virtual_network_to_dns |
Hiermee bepaalt u of het virtuele SAP-netwerk is geregistreerd bij de privé-DNS-zone | Optioneel |
dns_server_list |
Indien opgegeven, een lijst met IP-adressen van DNS-server | Optioneel |
Ondersteuning voor NFS
Variabele | Beschrijving | Type | Opmerkingen |
---|---|---|---|
create_transport_storage |
Indien gedefinieerd, maakt u opslag voor de transportmappen. | Optioneel | |
export_install_path |
Indien opgegeven, exporteert u het koppelingspad voor de installatiemedia. | Optioneel | |
export_transport_path |
Indien opgegeven, exporteert u het koppelpad voor de transportshare. | Optioneel | |
install_always_create_fileshares |
Altijd bestandsshares maken. | Optioneel | |
install_private_endpoint_id |
Azure-resource-id voor het install privé-eindpunt. |
Optioneel | Voor bestaande eindpunten |
install_volume_size |
Hiermee definieert u de grootte (in GB) voor het install volume. |
Optioneel | |
NFS_provider |
Hiermee definieert u welke NFS-back-end moet worden gebruikt. | Optioneel | De opties zijn AFS voor Azure Files NFS of ANF voor Azure NetApp Files, NONE voor NFS vanaf de SCS-server of NFS voor een externe NFS-oplossing. |
transport_private_endpoint_id |
Azure-resource-id van het privé-eindpunt van de sleutelkluis | Optioneel | |
transport_volume_size |
Hiermee definieert u de grootte (in GB) voor het transport volume. |
Optioneel | |
use_AFS_for_installation_media |
Indien opgegeven, gebruikt u AFS voor de installatiemedia. | Optioneel |
Ondersteuning voor Azure Files NFS
Variabele | Beschrijving | Type | Opmerkingen |
---|---|---|---|
install_storage_account_id |
Azure-resource-id voor het install opslagaccount |
Optioneel | Voor bruinveldimplementaties |
transport_storage_account_id |
Azure-resource-id voor het transport opslagaccount |
Optioneel | Voor bruinveldimplementaties |
Storage account replication type |
Replicatietype opslagaccount, standaard ZRS | Optioneel |
Minimaal vereiste Azure Files NFS-definitie
NFS_provider = "AFS"
use_private_endpoint = true
Ondersteuning voor Azure NetApp Files
Variabele | Beschrijving | Type | Opmerkingen |
---|---|---|---|
ANF_account_name |
Naam voor het Azure NetApp Files-account | Optioneel | |
ANF_service_level |
Serviceniveau voor de Azure NetApp Files-capaciteitspool | Optioneel | |
ANF_pool_size |
De grootte (in GB) van de Azure NetApp Files-capaciteitspool | Optioneel | |
ANF_qos_type |
De kwaliteit van het servicetype van de pool (automatisch of handmatig) | Optioneel | |
ANF_use_existing_pool |
Bestaande gebruiken voor de Azure NetApp Files-capaciteitspool | Optioneel | |
ANF_pool_name |
De naam van de Azure NetApp Files-capaciteitspool | Optioneel | |
ANF_account_arm_id |
Azure-resource-id voor het Azure NetApp Files-account | Optioneel | Voor bruinveldimplementaties |
ANF_transport_volume_use_existing |
Definieert of een bestaand transportvolume wordt gebruikt | Optioneel | |
ANF_transport_volume_name |
Definieert de naam van het transportvolume | Optioneel | Voor bruinveldimplementaties |
ANF_transport_volume_size |
Definieert de grootte van het transportvolume in GB | Optioneel | |
ANF_transport_volume_throughput |
Definieert de doorvoer van het transportvolume | Optioneel | |
ANF_transport_volume_zone |
Definieert de beschikbaarheidszone van het transportvolume | Optioneel | |
ANF_install_volume_use_existing |
Definieert of een bestaand installatievolume wordt gebruikt | Optioneel | |
ANF_install_volume_name |
Definieert de naam van het installatievolume | Optioneel | Voor bruinveldimplementaties |
ANF_install_volume_size |
Definieert de grootte van het installatievolume in GB | Optioneel | |
ANF_install_volume_throughput |
Definieert de doorvoer van het installatievolume | Optioneel | |
ANF_install_volume_zone |
Definieert de beschikbaarheidszone van het installatievolume | Optioneel |
Minimaal vereiste ANF-definitie
NFS_provider = "ANF"
anf_subnet_address_prefix = "10.110.64.0/27"
ANF_service_level = "Ultra"
DNS-ondersteuning
Variabele | Beschrijving | Type |
---|---|---|
dns_label |
DNS-naam van de privé-DNS-zone. | Optioneel |
management_dns_resourcegroup_name |
Resourcegroep die de privé-DNS-zone bevat. | Optioneel |
management_dns_subscription_id |
Abonnements-id voor het abonnement dat de privé-DNS-zone bevat. | Optioneel |
use_custom_dns_a_registration |
Gebruik een bestaande privé-DNS-zone. | Optioneel |
Andere parameters
Variabele | Beschrijving | Type | Opmerkingen |
---|---|---|---|
diagnostics_storage_account_arm_id |
De Azure-resource-id voor het diagnostische opslagaccount. | Vereist | Voor bruinveldimplementaties. |
place_delete_lock_on_resources |
Verwijderingsvergrendelingen voor de sleutelkluizen en het virtuele netwerk plaatsen | Optioneel | |
witness_storage_account_arm_id |
De Azure-resource-id voor het witness-opslagaccount. | Vereist | Voor bruinveldimplementaties. |
Agent_IP |
IP-adres van de agent. | Optioneel | |
add_Agent_IP |
Hiermee bepaalt u of agent-IP wordt toegevoegd aan de sleutelkluis en firewalls van het opslagaccount | Optioneel | |
enable_firewall_for_keyvaults_and_storage |
De toegang tot geselecteerde subnetten beperken. | Optioneel |
iSCSI-parameters
Variabele | Beschrijving | Type | Opmerkingen |
---|---|---|---|
iscsi_authentication_type |
Definieert de standaardverificatie voor de virtuele iSCSI-machines | Optioneel | |
iscsi_authentication_username |
accountnaam van Beheer istrator | Optioneel | |
iscsi_count |
Het aantal virtuele iSCSI-machines | Optioneel | |
iscsi_size |
De grootte van virtuele iSCSI-machines | Optioneel | |
iscsi_image |
Hiermee definieert u de installatiekopieën van de virtuele machine die u wilt gebruiken (volgende tabel) | Optioneel | |
iscsi_nic_ips |
IP-adressen voor de virtuele iSCSI-machines | Optioneel | Genegeerd als iscsi_use_DHCP is gedefinieerd |
iscsi_use_DHCP |
Hiermee bepaalt u of dynamische IP-adressen moeten worden gebruikt die worden geleverd door het Azure-subnet | Optioneel | |
iscsi_vm_zones |
Beschikbaarheidszones voor de virtuele iSCSI-machines | Optioneel |
VM-parameters voor hulpprogramma's
Variabele | Beschrijving | Type | Opmerkingen |
---|---|---|---|
utility_vm_count |
Hiermee definieert u het aantal virtuele machines van het hulpprogramma dat moet worden geïmplementeerd | Optioneel | De virtuele machine van het hulpprogramma gebruiken om SAPGui te hosten |
utility_vm_image |
Definieert de installatiekopieën van de virtuele machine die moeten worden gebruikt | Optioneel | Standaard: Windows Server 2019 |
utility_vm_nic_ips |
Definieert de IP-adressen voor de virtuele machines | Optioneel | |
utility_vm_os_disk_size |
Definieert de grootte van de besturingssysteemschijf voor de virtuele machine | Optioneel | Standaardwaarde: 128 |
utility_vm_os_disk_type |
Definieert het type besturingssysteemschijf voor de virtuele machine | Optioneel | Standaard: Premium_LRS |
utility_vm_size |
Definieert de SKU voor de virtuele machines van het hulpprogramma | Optioneel | Standaard: Standard_D4ds_v4 |
utility_vm_useDHCP |
Hiermee definieert u of ip-adressen van het Azure-subnet moeten worden gebruikt | Optioneel | |
'user_assigned_identity_id | Door de gebruiker toegewezen identiteit om toe te wijzen aan de virtuele machines | Optioneel |
De virtuele machine en de installatiekopieën van het besturingssysteem worden gedefinieerd met behulp van de volgende structuur:
{
os_type = "linux"
type = "marketplace"
source_image_id = ""
publisher = "SUSE"
offer = "sles-sap-15-sp5"
sku = "gen2"
version= " latest"
}
Azure Monitor voor SAP-parameters
Variabele | Beschrijving | Type | Opmerkingen |
---|---|---|---|
create_ams_instance |
Definieert of een Azure Monitor voor SAP-exemplaar moet worden gemaakt | Optioneel | |
ams_instance_name |
Definieert de naam van het exemplaar | Optioneel | |
ams_laws_arm_id |
Definieert de ARM-resource-id voor de Log Analytics-werkruimte | Optioneel |
Terraform-parameters
Deze tabel bevat de Terraform-parameters. Deze parameters moeten handmatig worden ingevoerd als u de implementatiescripts niet gebruikt.
Variabele | Beschrijving | Type |
---|---|---|
tfstate_resource_id |
De Azure-resource-id voor het opslagaccount in de SAP-bibliotheek die de Terraform-statusbestanden bevat. | Vereist |
deployer_tfstate_key |
De naam van het statusbestand voor de implementatie. | Vereist |