Planen der Bereitstellung des SAP-Automatisierungsframeworks

Es gibt mehrere Überlegungen zur Planung von SAP-Bereitstellungen mithilfe des SAP Deployment Automation Framework. Dazu gehören die Abonnementplanung, das virtuelle Netzwerkdesign für die Verwaltung von Anmeldeinformationen.

Allgemeine Überlegungen zum Design für SAP in Azure finden Sie unter Szenario für SAP-Einführung.

Hinweis

Die Terraform-Bereitstellung verwendet Terraform-Vorlagen, die von Microsoft aus dem Repository des SAP Deployment Automation Framework bereitgestellt werden. Die Vorlagen verwenden Parameterdateien mit Ihren systemspezifischen Informationen, um die Bereitstellung durchzuführen.

Abonnementplanung

Sie sollten die Steuerebene und die Workloadzonen in verschiedenen Abonnements bereitstellen. Die Steuerungsebene sollte sich in einem Hubabonnement befinden, das zum Hosten der Verwaltungskomponenten des SAP-Automatisierungsframeworks verwendet wird.

Die SAP-Systeme sollten in Speichenabonnements gehostet werden, die den SAP-Systemen zugeordnet sind. Ein Beispiel für die Partitionierung der Systeme wäre das Hosten der Entwicklungssysteme in einem separaten Abonnement mit einem dedizierten virtuellen Netzwerk. Die Produktionssysteme würden in ihrem eigenen Abonnement mit einem dedizierten virtuellen Netzwerk gehostet.

Dieser Ansatz bietet sowohl eine Sicherheitsgrenze als auch eine klare Trennung von Aufgaben und Zuständigkeiten. Beispielsweise kann das SAP Basis-Team Systeme in den Workloadzonen bereitstellen, und das Infrastrukturteam kann die Steuerungsebene verwalten.

Planung der Steuerungsebene

Sie können die Bereitstellungs- und Konfigurationsaktivitäten entweder über Azure Pipelines oder mithilfe der bereitgestellten Shellskripts direkt auf in Azure gehosteten Linux-VMs ausführen. Diese Umgebung wird als Steuerungsebene bezeichnet. Informationen zum Einrichten von Azure DevOps für das Bereitstellungsframework finden Sie unter Einrichten von Azure DevOps für das SAP Deployment Automation Framework. Informationen zum Einrichten eines virtuellen Linux-Computers als Bereitstellung finden Sie unter Einrichten virtueller Linux-Computer für das SAP Deployment Automation Framework.

Bevor Sie Ihre Steuerungsebene entwerfen, sollten Sie sich die folgenden Fragen stellen:

  • In welchen Regionen müssen Sie SAP-Systeme bereitstellen?
  • Gibt es ein dediziertes Abonnement für die Steuerungsebene?
  • Gibt es dedizierte Anmeldeinformationen für die Bereitstellung (Dienstprinzipal) für die Steuerungsebene?
  • Gibt es ein vorhandenes virtuelles Netzwerk oder ist ein neues virtuelles Netzwerk erforderlich?
  • Wie wird der ausgehende Internetzugriff für die VMs bereitgestellt?
  • Stellen Sie Azure Firewall für ausgehende Internetkonnektivität bereit?
  • Sind private Endpunkte für Speicherkonten und den Schlüsseltresor erforderlich?
  • Werden Sie eine vorhandene private DNS-Zone für die virtuellen Computer verwenden oder die Steuerungsebene zum Hosten von privatem DNS verwenden?
  • Verwenden Sie Azure Bastion für den sicheren Remotezugriff auf die VMs?
  • Verwenden Sie die Webanwendung für die Konfiguration des SAP Deployment Automation Framework für die Durchführung von Konfigurations- und Bereitstellungsaktivitäten?

Steuerungsebene

Die Steuerungsebene bietet die folgenden Dienste:

  • Bereitstellungs-VMs, die Terraform-Bereitstellungen und die Ansible-Konfiguration ausführen. Diese fungieren als selbstgehostete Azure DevOps-Agents.
  • Einen Schlüsseltresor mit den Anmeldeinformationen für die Bereitstellung (Dienstprinzipale), die von Terraform beim Ausführen der Bereitstellungen verwendet werden.
  • Azure Firewall für die ausgehende Internetkonnektivität.
  • Azure Bastion zur Bereitstellung eines sicheren Remotezugriffs auf die bereitgestellten VMs.
  • Eine Azure-Webanwendung für das SAP Deployment Automation Framework zum Ausführen von Konfigurations- und Bereitstellungsaktivitäten.

Die Steuerungsebene wird mithilfe von zwei Konfigurationsdateien definiert, eine für die Bereitstellung und eine für die SAP-Bibliothek.

Die Bereitstellungskonfigurationsdatei definiert die Region, den Umgebungsnamen und die Informationen zum virtuellen Netzwerk. Zum Beispiel:

# Deployer Configuration File
environment = "MGMT"
location = "westeurope"

management_network_logical_name = "DEP01"

management_network_address_space = "10.170.20.0/24"
management_subnet_address_prefix = "10.170.20.64/28"

firewall_deployment = true
management_firewall_subnet_address_prefix = "10.170.20.0/26"

bastion_deployment = true
management_bastion_subnet_address_prefix = "10.170.20.128/26"

use_webapp = true

webapp_subnet_address_prefix = "10.170.20.192/27"
deployer_assign_subscription_permissions = true

deployer_count = 2

use_service_endpoint = false
use_private_endpoint = false
public_network_access_enabled = true

DNS Überlegungen

Berücksichtigen Sie beim Planen der DNS-Konfiguration für das Automatisierungsframework die folgenden Fragen:

  • Gibt es ein vorhandenes privates DNS, in das die Lösungen integriert werden können, oder müssen Sie eine benutzerdefinierte private DNS-Zone für die Bereitstellungsumgebung verwenden?
  • Werden Sie vordefinierte IP-Adressen für die VMs verwenden oder Azure diese dynamisch zuweisen lassen?

Sie können in eine vorhandene private DNS-Zone integriert werden, indem Sie die folgenden Werte in Ihren tfvars-Dateien angeben:

management_dns_subscription_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
#management_dns_resourcegroup_name = "RESOURCEGROUPNAME"
use_custom_dns_a_registration = false

Ohne diese Werte wird in der SAP-Bibliotheksressourcengruppe eine private DNS-Zone erstellt.

Weitere Informationen finden Sie in der ausführlichen Erläuterung zum Konfigurieren des Bereitstellers.

SAP-Bibliothekskonfiguration

Die SAP-Bibliothekenressourcengruppe stellt Speicher für SAP-Installationsmedien, BOM-Dateien (Bill of Material, Stückliste), Terraform-Zustandsdateien und optional eine private DNS-Zone bereit. Die Konfigurationsdatei definiert die Region und den Umgebungsnamen für die SAP-Bibliothek. Parameterinformationen und Beispiele finden Sie unter Konfigurieren der SAP-Bibliothek für die Automatisierung.

Planen von Workloadzonen

Die meisten SAP-Anwendungslandschaften sind in verschiedenen Ebenen partitioniert. In SAP Deployment Automation Framework werden diese Ebenen als Workloadzonen bezeichnet. Beispielsweise verfügen Sie möglicherweise über unterschiedliche Workloadzonen für Entwicklung, Qualitätssicherung und Produktionssysteme. Weitere Informationen finden Sie unter Workloadzonen.

Die Workloadzone stellt die folgenden freigegebenen Dienste für die SAP-Anwendungen bereit:

  • Virtuelle Azure-Netzwerke für virtuelle Netzwerke, Subnetze und Netzwerksicherheitsgruppen.
  • Azure Key Vault zum Speichern der VM- und SAP-Systemanmeldeinformationen
  • Azure Storage-Konten für Startdiagnose und Cloud Witness.
  • Freigegebener Speicher für die SAP-Systeme: Azure Files oder Azure NetApp Files.

Bevor Sie Ihr Workloadzonenlayout entwerfen, sollten Sie sich die folgenden Fragen stellen:

  • In welchen Regionen müssen Sie Workloads bereitstellen?
  • Wie viele Workloadzonen sind für Ihr Szenario erforderlich (Entwicklung, Qualitätssicherung und Produktion usw.)?
  • Erfolgt die Bereitstellung in neuen virtuellen Netzwerken, oder verwenden Sie vorhandene virtuelle Netzwerke?
  • Welchen Speichertyp benötigen Sie für den freigegebenen Speicher (Azure Files NFS oder Azure NetApp Files)?

Die Standardbenennungskonvention für Workloadzonen lautet [ENVIRONMENT]-[REGIONCODE]-[NETWORK]-INFRASTRUCTURE. DEV-WEEU-SAP01-INFRASTRUCTURE gilt beispielsweise für eine Entwicklungsumgebung, die in der Region Europa, Westen mit dem virtuellen SAP01-Netzwerk gehostet wird. PRD-WEEU-SAP02-INFRASTRUCTURE ist für eine Produktionsumgebung in der Region Europa, Westen, die mit dem virtuellen SAP02-Netzwerk gehostet wird.

Mit den Bezeichnungen SAP01 und SAP02 werden die logischen Namen für die virtuellen Azure-Netzwerke definiert. Sie können verwendet werden, um die Umgebungen weiter zu partitionieren. Angenommen, Sie benötigen zwei virtuelle Azure-Netzwerke für dieselbe Workloadzone. Sie können beispielsweise ein Szenario mit mehreren Abonnements haben, in dem Sie Entwicklungsumgebungen in zwei Abonnements hosten. Sie können die verschiedenen logischen Namen für jedes virtuelle Netzwerk verwenden. Sie können z. B. DEV-WEEU-SAP01-INFRASTRUCTURE und DEV-WEEU-SAP02-INFRASTRUCTURE verwenden.

Weitere Informationen finden Sie unter Konfigurieren einer Workloadzonenbereitstellung für die Automatisierung.

Windows-basierte Bereitstellungen

Wenn Sie Windows-basierte Bereitstellungen durchführen, müssen die VMs im virtuellen Netzwerk der Workloadzone mit Active Directory kommunizieren können, um die SAP-VMs in die Active Directory-Domäne einzubinden. Der angegebene DNS-Name muss von der Active Directory-Instanz aufgelöst werden können.

Das SAP Deployment Automation Framework erstellt keine Konten in Active Directory, daher müssen die Konten im Schlüsseltresor der Workloadzone vorkonfiguriert und gespeichert werden.

Anmeldeinformationen Name Beispiel
Konto, das Aktivitäten zum Domänenbeitritt ausführen kann [IDENTIFIER]-ad-svc-account DEV-WEEU-SAP01-ad-svc-account
Kennwort für das Konto, das den Domänenbeitritt ausführt [IDENTIFIER]-ad-svc-account-password DEV-WEEU-SAP01-ad-svc-account-password
sidadm-Kontokennwort [IDENTIFIER]-[SID]-win-sidadm_password_id DEV-WEEU-SAP01-W01-winsidadm_password_id
Kennwort des SID-Dienstkontos [IDENTIFIER]-[SID]-svc-sidadm-password DEV-WEEU-SAP01-W01-svc-sidadm-password
SQL Server-Dienstkonto [IDENTIFIER]-[SID]-sql-svc-account DEV-WEEU-SAP01-W01-sql-svc-account
SQL Serverdienst-Kontokennwort [IDENTIFIER]-[SID]-sql-svc-password DEV-WEEU-SAP01-W01-sql-svc-password
SQL Server-Agent-Dienstkonto [IDENTIFIER]-[SID]-sql-agent-account DEV-WEEU-SAP01-W01-sql-agent-account
SQL Server-Agent-Dienstkontopasswort [IDENTIFIER]-[SID]-sql-agent-password DEV-WEEU-SAP01-W01-sql-agent-password

DNS-Einstellungen

Für Hochverfügbarkeitsszenarien wird ein DNS-Eintrag im Active Directory für das zentrale Dienstcluster von SAP benötigt. Der DNS-Eintrag muss in der Active Directory-DNS-Zone erstellt werden. Der Name des DNS-Eintrags ist definiert als [sid]>scs[scs instance number]cl1. w01scs00cl1 wird beispielsweise für das Cluster verwendet, mit W01 als SID und 00 als Instanznummer.

Verwaltung von Anmeldeinformationen

Das Automatisierungsframework verwendet Dienstprinzipale für die Infrastrukturbereitstellung. Wir empfehlen die Verwendung unterschiedlicher Anmeldeinformationen für die Bereitstellung (Dienstprinzipale) für jede Workloadzone. Das Framework speichert diese Anmeldeinformationen im Schlüsseltresor des Bereitstellers. Anschließend ruft das Framework diese Anmeldeinformationen während des Bereitstellungsprozesses dynamisch ab.

Verwaltung der Anmeldeinformationen für SAP und virtuelle Computer

Das Automatisierungsframework verwendet den Schlüsseltresor der Workloadzone, um sowohl die Anmeldeinformationen der Automation-Benutzer als auch die Anmeldeinformationen des SAP-Systems zu speichern. In der folgenden Tabelle sind die Namen der Anmeldeinformationen des virtuellen Computers aufgeführt.

Anmeldeinformationen Name Beispiel
Privater Schlüssel [IDENTIFIER]-sshkey DEV-WEEU-SAP01-sid-sshkey
Öffentlicher Schlüssel [IDENTIFIER]-sshkey-pub DEV-WEEU-SAP01-sid-sshkey-pub
Username [IDENTIFIER]-username DEV-WEEU-SAP01-sid-username
Kennwort [IDENTIFIER]-password DEV-WEEU-SAP01-sid-password
sidadm-Kennwort [IDENTIFIER]-[SID]-sap-password DEV-WEEU-SAP01-X00-sap-password
sidadm-Kontokennwort [IDENTIFIER]-[SID]-winsidadm_password_id DEV-WEEU-SAP01-W01-winsidadm_password_id
Kennwort des SID-Dienstkontos [IDENTIFIER]-[SID]-svc-sidadm-password DEV-WEEU-SAP01-W01-svc-sidadm-password

Dienstprinzipalerstellung

Erstellen Ihres Dienstprinzipals:

  1. Melden Sie sich bei der Azure CLI mit einem Konto an, das über Berechtigungen zum Erstellen eines Dienstprinzipals verfügt

  2. Erstellen Sie einen neuen Dienstprinzipal, indem Sie den Befehl az ad sp create-for-rbac ausführen. Stellen Sie sicher, dass Sie einen Beschreibungsnamen für --name verwenden. Beispiel:

    az ad sp create-for-rbac --role="Contributor" --scopes="/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" --name="DEV-Deployment-Account"
    
  3. Notieren Sie sich die Ausgabe. Sie benötigen den Anwendungsbezeichner (appId), das Kennwort (password) und den Mandantenbezeichner (tenant) für den nächsten Schritt. Beispiel:

    {
        "appId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "displayName": "DEV-Deployment-Account",
        "name": "http://DEV-Deployment-Account",
        "password": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        "tenant": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
    }
    
  4. Weisen Sie dem Dienstprinzipal die Rolle „Benutzerzugriffsadministrator“ zu. Zum Beispiel:

    az role assignment create --assignee <your-application-ID> --role "User Access Administrator" --scope /subscriptions/<your-subscription-ID>/resourceGroups/<your-resource-group-name>
    

Weitere Informationen finden Sie in der Azure CLI-Dokumentation zum Erstellen eines Dienstprinzipals.

Wichtig

Wenn Sie dem Dienstprinzipal nicht die Rolle Benutzerzugriffsadministrator zuweisen, können Sie keine Berechtigungen mithilfe der Automatisierung zuweisen.

Verwaltung von Berechtigungen

In einer gesperrten Umgebung müssen Sie den Dienstprinzipalen u. U. eine weitere Berechtigung zuweisen. Möglicherweise müssen Sie dem Dienstprinzipal z. B. die Rolle „Benutzerzugriffsadministrator“ zuweisen.

Erforderliche Berechtigungen

In der folgenden Tabelle sind die erforderlichen Berechtigungen für den Dienstprinzipal aufgeführt.

Anmeldeinformationen Bereich Erforderliche Berechtigungen Duration
Dienstprinzipalname der Steuerungsebene Abonnement der Steuerungsebene Beitragender
Dienstprinzipalname der Steuerungsebene Deployer-Ressourcengruppe Mitwirkender
Dienstprinzipalname der Steuerungsebene Deployer-Ressourcengruppe Benutzerzugriffsadministrator Während des Setups
Dienstprinzipalname der Steuerungsebene SAP-Bibliotheksressourcengruppe Mitwirkender
Dienstprinzipalname der Steuerungsebene SAP-Bibliotheksressourcengruppe Benutzerzugriffsadministrator
Dienstprinzipalname der Workloadzone Zielabonnement Mitwirkender
Dienstprinzipalname der Workloadzone Ressourcengruppe „Workloadzone“ Mitwirkender, Benutzerzugriffsadministrator
Dienstprinzipalname der Workloadzone Abonnement der Steuerungsebene Leser
Dienstprinzipalname der Workloadzone Virtuelles Netzwerk der Steuerungsebene Netzwerkmitwirkender
Dienstprinzipalname der Workloadzone SAP-Bibliotheksspeicherkonto tfstate Speicherkontomitwirkender
Dienstprinzipalname der Workloadzone SAP-Bibliotheksspeicherkonto sapbits Leser
Dienstprinzipalname der Workloadzone Private DNS-Zone Mitwirkender für private DNS-Zone
Identität der Webanwendung Zielabonnement Leser
Identität der Cluster-VM Resource group Fencing-Rolle

Firewallkonfiguration

Komponente Adressen Duration Notizen
SDAF github.com/Azure/sap-automation, github.com/Azure/sap-automation-samples, githubusercontent.com Einrichtung des Bereitstellers
Terraform releases.hashicorp.com, registry.terraform.io, checkpoint-api.hashicorp.com Einrichtung des Bereitstellers Siehe Installieren von Terraform.
Azure CLI Installieren der Azure CLI Einrichtung des Bereitstellers und während Bereitstellungen Eine Beschreibung der Firewallanforderungen für die Installation der Azure-Befehlszeilenschnittstelle (Azure CLI) finden Sie unter Installieren der Azure CLI.
PIP bootstrap.pypa.io Einrichtung des Bereitstellers Weitere Informationen unter Installieren von Ansible.
Ansible pypi.org, pythonhosted.org, files.pythonhosted.org, galaxy.ansible.com, 'https://ansible-galaxy-ng.s3.dualstack.us-east-1.amazonaws.com' Einrichtung des Bereitstellers
PowerShell-Katalog onegetcdn.azureedge.net, psg-prod-centralus.azureedge.net, psg-prod-eastus.azureedge.net Einrichtung von Windows-basierten Systemen Weitere Informationen unter PowerShell-Katalog.
Windows-Komponenten download.visualstudio.microsoft.com, download.visualstudio.microsoft.com, download.visualstudio.com Einrichtung von Windows-basierten Systemen Weitere Informationen unter Visual Studio-Komponenten.
SAP-Downloads softwaredownloads.sap.com                                    SAP-Softwaredownload Weitere Informationen unter SAP-Downloads.
Azure DevOps-Agent https://vstsagentpackage.azureedge.net                                   Einrichten von Azure DevOps

Sie können die Verbindung zu den URLs von einer Linux-VM in Azure aus mit einem PowerShell-Skript testen, das die Funktion „run-command“ in Azure verwendet, um die Verbindung zu den URLs zu testen.

Das folgende Beispiel zeigt, wie Sie die Verbindung mit den URLs mithilfe eines interaktiven PowerShell-Skripts testen.


$sdaf_path = Get-Location
if ( $PSVersionTable.Platform -eq "Unix") {
    if ( -Not (Test-Path "SDAF") ) {
      $sdaf_path = New-Item -Path "SDAF" -Type Directory
    }
}
else {
    $sdaf_path = Join-Path -Path $Env:HOMEDRIVE -ChildPath "SDAF"
    if ( -not (Test-Path $sdaf_path)) {
        New-Item -Path $sdaf_path -Type Directory
    }
}

Set-Location -Path $sdaf_path

git clone https://github.com/Azure/sap-automation.git 

cd sap-automation
cd deploy
cd scripts

if ( $PSVersionTable.Platform -eq "Unix") {
 ./Test-SDAFURLs.ps1
}
else {
 .\Test-SDAFURLs.ps1
}

DevOps-Struktur

Das Bereitstellungsframework verwendet drei separate Repositorys für die Bereitstellungsartefakte. Für Ihre eigenen Parameterdateien empfiehlt es sich, diese Dateien in einem von Ihnen verwalteten Quellcodeverwaltungs-Repository zu speichern.

Hauptrepository

Dieses Repository enthält die Terraform-Parameterdateien und die Dateien, die für die Ansible-Playbooks für alle Workloadzonen- und Systembereitstellungen erforderlich sind.

Zum Erstellen dieses Repositorys können Sie das Bootstrap-Repository des Automatisierungsframeworks für die SAP-Bereitstellung in Ihrem Repository für die Quellcodeverwaltung klonen.

Wichtig

Dieses Repository muss das Standardrepository für Ihr Azure DevOps-Projekt sein.

Ordnerstruktur

Die folgende Beispielordnerhierarchie zeigt, wie Sie Ihre Konfigurationsdateien zusammen mit den Automatisierungsframeworkdateien strukturieren.

Ordnername Contents Beschreibung
BOMs BoM-Dateien Wird für den manuellen BoM-Download verwendet
BEREITSTELLER Konfigurationsdateien für den Bereitsteller Ein Ordner mit Bereitstellungskonfigurationsdateien für alle Bereitstellungen, die von der Umgebung verwaltet werden. Benennen Sie jeden Unterordner nach der Namenskonvention von Umgebung – Region – virtuelles Netzwerk. Beispiel: PROD-WEEU-DEP00-INFRASTRUCTURE.
LIBRARY Konfigurationsdateien für die SAP-Bibliothek Ein Ordner mit SAP-Bibliothekskonfigurationsdateien für alle Bereitstellungen, die von der Umgebung verwaltet werden. Benennen Sie jeden Unterordner nach der Namenskonvention von Umgebung – Region – virtuelles Netzwerk. Beispiel: PROD-WEEU-SAP-LIBRARY.
QUERFORMAT Konfigurationsdateien für die Workloadzone Ein Ordner mit Konfigurationsdateien für alle Workloadzonen, die von der Umgebung verwaltet werden. Benennen Sie jeden Unterordner nach der Namenskonvention Umgebung – Region – virtuelles Netzwerk. Beispiel: PROD-WEEU-SAP00-INFRASTRUCTURE.
SYSTEM Konfigurationsdateien für die SAP-Systeme Ein Ordner mit Konfigurationsdateien für alle System-ID-Bereitstellungen (SID), die von der Umgebung verwaltet werden. Benennen Sie jeden Unterordner nach der Namenskonvention Umgebung – Region – virtuelles Netzwerk – SID. Beispiel: PROD-WEEU-SAPO00-ABC.

Screenshot that shows example folder structure, with separate folders for SAP HANA and multiple workload environments.

Der Name Ihrer Parameterdatei wird zum Namen der Terraform-Statusdatei. Stellen Sie aus diesem Grund sicher, dass Sie einen eindeutigen Parameterdateinamen verwenden.

Coderepository

Dieses Repository enthält die Terraform-Automatisierungsvorlagen, die Ansible-Playbooks sowie die Bereitstellungspipelines und -skripts. In den meisten Anwendungsfällen sollten Sie dieses Repository als schreibgeschützt betrachten und es nicht ändern.

Um dieses Repository zu erstellen, klonen Sie das Repository des SAP Deployment Automation Framework in Ihr Quellcodeverwaltungs-Repository.

Nennen Sie dieses Repository sap-automation.

Beispielrepository

Dieses Repository enthält die Beispieldateien für die Stückliste und die Terraform-Beispielkonfigurationsdateien.

Zum Erstellen dieses Repositorys können Sie das Beispielrepository des Automatisierungsframeworks für die SAP in Azure-Bereitstellung in Ihrem Repository für die Quellcodeverwaltung klonen.

Nennen Sie dieses Repository samples.

Unterstützte Bereitstellungsszenarien

Das Automatisierungsframework unterstützt die Bereitstellung in neuen und vorhandenen Szenarien.

Azure-Regionen

Bevor Sie eine Lösung bereitstellen, müssen Sie berücksichtigen, welche Azure-Regionen verwendet werden sollen. Abhängig von Ihrem spezifischen Szenario können verschiedene Azure-Regionen in den Geltungsbereich fallen.

Das Framework für die Automatisierung unterstützt die Bereitstellung in mehreren Azure-Regionen. Jede Region hostet:

  • Die Bereitstellungsinfrastruktur.
  • Die SAP-Bibliothek mit Zustandsdateien und Installationsmedien.
  • 1-n Workloadzonen.
  • 1-n SAP-Systeme in den Workloadzonen.

Bereitstellungsumgebungen

Wenn Sie mehrere Workloadzonen in einer Region unterstützen, verwenden Sie einen eindeutigen Bezeichner für Ihre Bereitstellungsumgebung und SAP-Bibliothek. Verwenden Sie nicht den Bezeichner für die Workloadzone. Verwenden Sie beispielsweise MGMT zu Verwaltungszwecken.

Das Automatisierungsframework unterstützt auch die Bereitstellungsumgebung und die SAP-Bibliothek in separaten Abonnements als die Workloadzonen.

Die Bereitstellungsumgebung stellt die folgenden Dienste bereit:

  • Mindestens ein virtueller Bereitstellungscomputer, der die Infrastrukturbereitstellungen mithilfe von Terraform durchführt und die Systemkonfiguration und die SAP-Installation mithilfe von Ansible Playbooks durchführt.
  • Ein Key Vault, der Informationen zur Dienstprinzipalidentität für die Verwendung durch Terraform-Bereitstellungen enthält.
  • Eine Azure Firewall-Komponente, die ausgehende Internetkonnektivität bereitstellt.

Die Bereitstellungskonfigurationsdatei definiert die Region, den Umgebungsnamen und die Informationen zum virtuellen Netzwerk. Beispiel:

# 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

Weitere Informationen finden Sie in der ausführlichen Erläuterung zum Konfigurieren des Bereitstellers.

Struktur der Workloadzone

Die meisten SAP-Konfigurationen verfügen über mehrere Workloadzonen für verschiedene Anwendungsebenen. Beispielsweise verfügen Sie möglicherweise über unterschiedliche Workloadzonen für Entwicklung, Qualitätssicherung und Produktion.

Sie erstellen oder gewähren Zugriff auf die folgenden Dienste in jeder Workloadzone:

  • Virtuelle Azure-Netzwerke für virtuelle Netzwerke, Subnetze und Netzwerksicherheitsgruppen.
  • Azure Key Vault für Systemanmeldeinformationen und den Bereitstellungsdienstprinzipal.
  • Azure Storage-Konten für Startdiagnose und Cloud Witness.
  • Freigegebener Speicher für die SAP-Systeme: Azure Files oder Azure NetApp Files.

Bevor Sie Ihr Workloadzonenlayout entwerfen, sollten Sie sich die folgenden Fragen stellen:

  • Wie viele Workloadzonen sind für Ihr Szenario erforderlich?
  • In welchen Regionen müssen Sie Workloads bereitstellen?
  • Wie sieht Ihr Bereitstellungsszenario aus?

Weitere Informationen finden Sie unter Konfigurieren einer Workloadzonenbereitstellung für die Automatisierung.

Einrichtung des SAP-Systems

Das SAP-System enthält alle Azure-Komponenten, die zum Hosten der SAP-Anwendung erforderlich sind.

Stellen Sie sich vor dem Konfigurieren des SAP-Systems die folgenden Fragen:

  • Welches Datenbank-Back-End möchten Sie verwenden?
  • Wie viele Datenbankserver benötigen Sie?
  • Erfordert Ihr Szenario Hochverfügbarkeit?
  • Wie viele Anwendungsserver benötigen Sie?
  • Wie viele Web Dispatcher benötigen Sie, falls vorhanden?
  • Wie viele zentrale Dienstinstanzen benötigen Sie?
  • Welche Größe benötigen Sie für die VM?
  • Welches VM-Image möchten Sie verwenden? Ist das Image auf Azure Marketplace oder benutzerdefiniert?
  • Stellen Sie die Bereitstellung in einem neuen oder vorhandenen Bereitstellungsszenario bereit?
  • Wie lautet Ihre IP-Zuordnungsstrategie? Soll Azure IP-Einstellungen festlegen oder benutzerdefinierte Einstellungen verwenden?

Weitere Informationen finden Sie unter Konfigurieren des SAP-Systems für die Automatisierung.

Bereitstellungsablauf

Wenn Sie eine Bereitstellung planen, ist es wichtig, den gesamten Ablauf zu berücksichtigen. Es gibt drei Hauptschritte einer SAP-Bereitstellung mit dem Automatisierungs-Framework in Azure.

  1. Bereitstellen der Steuerungsebene. In diesem Schritt werden Komponenten bereitgestellt, um das SAP-Automatisierungs-Framework in einer angegebenen Azure-Region zu unterstützen.

    1. Sie erstellen die Bereitstellungsumgebung.
    2. Sie erstellen den freigegebenen Speicher für Terraform-Zustandsdateien.
    3. Sie erstellen den freigegebenen Speicher für das SAP-Installationsmedium.
  2. Bereitstellen der Workloadzone. In diesem Schritt werden die Workloadzonenkomponenten bereitgestellt, z. B. das virtuelle Netzwerk und Key Vaults.

  3. Bereitstellen des Systems. Dieser Schritt umfasst die Infrastruktur für die SAP-Systembereitstellung und die SAP-Konfiguration und SAP-Installation.

Benennungskonventionen

Das Automatisierungsframework verwendet eine Standardbenennungskonvention. Wenn Sie eine benutzerdefinierte Namenskonvention verwenden möchten, planen und definieren Sie Ihre benutzerdefinierten Namen vor der Bereitstellung. Weitere Informationen finden Sie unter Konfigurieren der Benennungskonvention.

Dimensionierung von Datenträgern

Wenn Sie benutzerdefinierte Datenträgergrößen konfigurieren möchten, sollten Sie ihr benutzerdefiniertes Setup vor der Bereitstellung planen.

Nächster Schritt