Terraform: Automatisiertes VM-Deployment für SAP NetWeaver unter Linux

In diesem Leitfaden werden mit Terraform alle erforderlichen Google Cloud-Ressourcen bereitgestellt, um SAP NetWeaver unter Linux auszuführen, einschließlich der virtuellen Maschine (VM) von Compute Engine, des Linux-Betriebssystems und der nichtflüchtigen Speicher. Sie definieren die Installationsparameter, z. B. den Maschinentyp, die Ressourcennamen und die Laufwerkgröße etc., in einer Terraform-Konfigurationsdatei.

Wenn Sie für Ihre SAP NetWeaver-Installation mehr Kontrolle über den Deploymentprozess möchten, als Ihnen die Terraform-Konfigurationsdatei bietet, lesen Sie VM für SAP NetWeaver unter Linux manuell bereitstellen.

Informationen zum Bereitstellen einer VM, die unter Windows ausgeführt wird, finden Sie in der Windows-Deploymentanleitung.

Mit dieser Anleitung bereitgestellte VM-Konfiguration

Die auf der Basis dieser Anleitung bereitgestellte VM ist für eine dreistufige Konfiguration gedacht, in der SAP NetWeaver auf einer VM und der Datenbankserver auf einer anderen VM ausgeführt werden.

Wenn Sie eine zweistufige Konfiguration einrichten möchten, bei der SAP NetWeaver auf derselben VM wie der Datenbankserver ausgeführt wird, stellen Sie zuerst den Datenbankserver bereit und erstellen zu diesem Zeitpunkt die VM sowie die erforderlichen Laufwerke für den Datenbankserver und für SAP NetWeaver. Anschließend installieren Sie SAP NetWeaver auf derselben VM, auf der sich der Datenbankserver befindet.

Eine Anleitung dazu, wie Sie die VM für einen Datenbankserver bereitstellen, finden Sie im Leitfaden zum Datenbankdeployment für Ihren Datenbankserver.

Mit dieser Anleitung bereitgestellte Google Cloud-Ressourcen

Zu den von der Terraform-Konfigurationsdatei bereitgestellten Google Cloud-Ressourcen zählen:

  • Eine VM, die eine von SAP zertifizierte Version von Linux verwendet
  • Ein nichtflüchtiger Speicher für das Bootlaufwerk
  • Ein nichtflüchtiger Speicher für SAP-Binärdateien
  • Ein nichtflüchtiger Speicher als Auslagerungsspeicher
  • Die empfohlenen APIs
  • Google Cloud-Agent für SAP.

In der folgenden Anleitung wird Cloud Shell verwendet. Sie können stattdessen aber auch die Google Cloud CLI in Ihrem lokalen Terminal verwenden, wenn Sie dies vorziehen.

Weitere Informationen zur Planung der Implementierung finden Sie im Planungsleitfaden. Eine Übersicht über die IT-Funktionen für Ihr System finden Sie in der Betriebsanleitung.

Projekt erstellen

Wenn Ihre SAP-Arbeitslast die Anforderungen an den Datenstandort, die Zugriffssteuerung oder die Supportmitarbeiter oder gesetzliche Anforderungen erfüllen muss, müssen Sie den erforderlichen Assured Workloads-Ordner erstellen. Weitere Informationen finden Sie unter Compliance und Steuerung der Datenhoheit für SAP in Google Cloud.

So erstellen Sie ein Projekt:

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Make sure that billing is enabled for your Google Cloud project.

gcloud-Befehlsumgebung konfigurieren

In dieser Anleitung werden gcloud-Befehle für die Bereitstellung oder Konfiguration Ihrer Google Cloud-Ressourcen mit Cloud Shell eingegeben. Auf Cloud Shell greifen Sie in Ihrem Browser über die Google Cloud Console zu.

Cloud Shell wird auf einer VM ausgeführt, die von Google Cloud bei jedem Start von Cloud Shell bereitgestellt wird. Wenn Sie Cloud Shell zum ersten Mal verwenden, erstellt Google Cloud für Sie auch ein nichtflüchtiges $HOME-Verzeichnis, das jedes Mal wiederhergestellt wird, wenn Sie Cloud Shell öffnen.

Die bereitgestellte VM enthält das neueste Google Cloud CLI. Daher verwenden Sie in Cloud Shell dieselben gcloud-Befehle wie in einer lokal installierten Instanz der gcloud CLI.

Wenn die gcloud CLI installiert ist, können Sie die gcloud-Befehle in dieser Anleitung auf Ihrem lokalen Computer ausführen. Bei einer lokal installierten gcloud CLI müssen Sie jedoch immer darauf achten, dass Sie die neueste Version der gcloud CLI verwenden.

Unabhängig davon, ob Sie Cloud Shell oder die gcloud CLI verwenden, können Sie die Attribute Ihrer gcloud-Befehlsumgebung festlegen und ändern und als Konfiguration speichern. Konfigurationen sind Sammlungen von Schlüssel/Wert-Paaren, die das Verhalten der gcloud-Befehle beeinflussen.

Zu den grundlegenden Aktionen, die Sie mit einer Konfiguration in Cloud Shell ausführen können, gehören:

  • Konfiguration initialisieren:

    gcloud init
  • Die Einstellungen Ihrer aktuellen gcloud-Konfiguration prüfen:

    gcloud config list
  • Wechseln Sie zum erforderlichen Google Cloud-Projekt. Ersetzen Sie PROJECT_ID durch die ID Ihres Google Cloud-Projekts.

    gcloud config set project PROJECT_ID
  • Eine Standardregion festlegen. Ersetzen Sie REGION durch eine Google Cloud-Region.

    gcloud config set compute/region REGION
  • Eine Standardzone festlegen. Ersetzen Sie ZONE durch eine Google Cloud-Zone.

    gcloud config set compute/zone ZONE
  • Eine neue Konfiguration erstellen. Ersetzen Sie NAME durch den Namen für die Konfiguration.

    gcloud config configurations create NAME

Weitere Informationen zum Arbeiten mit Konfigurationen finden Sie unter Konfigurationen der gcloud CLI verwalten.

Netzwerk erstellen

Erstellen Sie aus Sicherheitsgründen ein neues Netzwerk. Durch das Festlegen von Firewallregeln oder die Nutzung eines anderen Verfahrens der Zugriffskontrolle steuern Sie, wer Zugriff hat.

Wenn Ihr Projekt ein Standard-VPC-Netzwerk (Virtual Private Cloud) hat, verwenden Sie es nicht. Erstellen Sie stattdessen Ihr eigenes VPC-Netzwerk, sodass nur die von Ihnen explizit formulierten Firewallregeln gelten.

Während der Bereitstellung müssen VM-Instanzen normalerweise auf das Internet zugreifen können, um den Google Cloud-Agent für SAP herunterzuladen. Wenn Sie eines der von SAP zertifizierten Linux-Images verwenden, die in Google Cloud verfügbar sind, benötigen die VM-Instanzen außerdem einen Internetzugang, um die Lizenz zu registrieren und auf Repositories von Betriebssystemanbietern zuzugreifen. Eine Konfiguration mit einem NAT-Gateway und VM-Netzwerk-Tags unterstützt diesen Zugriff selbst dann, wenn die Ziel-VMs keine externen IP-Adressen haben.

Führen Sie die folgenden Schritte aus, um ein VPC-Netzwerk für Ihr Projekt zu erstellen:

  1. Erstellen Sie ein Netzwerk im benutzerdefinierten Modus. Weitere Informationen finden Sie unter Netzwerk im benutzerdefinierten Modus erstellen.

  2. Erstellen Sie ein Subnetzwerk und geben Sie die Region und den IP-Adressbereich an. Weitere Informationen finden Sie unter Subnetze hinzufügen.

NAT-Gateway einrichten

Wenn Sie eine oder mehrere VMs ohne öffentliche IP-Adressen erstellen müssen, müssen Sie die Network Address Translation (NAT) verwenden, damit die VMs auf das Internet zugreifen können. Verwenden Sie Cloud NAT, einen verteilten, softwarebasierten verwalteten Dienst von Google Cloud, der es VMs ermöglicht, ausgehende Pakete an das Internet zu senden und entsprechende eingehende Antwortpakete zu empfangen. Alternativ können Sie eine separate VM als NAT-Gateway einrichten.

Informationen zum Erstellen einer Cloud NAT-Instanz für Ihr Projekt finden Sie unter Cloud NAT verwenden.

Nachdem Sie Cloud NAT für Ihr Projekt konfiguriert haben, können Ihre VM-Instanzen ohne öffentliche IP-Adressen sicher auf das Internet zugreifen.

Firewallregeln hinzufügen

Standardmäßig werden von außerhalb Ihres Google Cloud-Netzwerks eingehende Verbindungen blockiert. Wenn Sie eingehende Verbindungen zulassen möchten, richten Sie für Ihre VM eine entsprechende Firewallregel ein. Firewallregeln regulieren nur neue eingehende Verbindungen zu einer VM. Nachdem eine Verbindung zu einer VM hergestellt wurde, ist Traffic über diese Verbindung in beide Richtungen zulässig.

Sie können eine Firewallregel erstellen, um den Zugriff auf bestimmte Ports oder zwischen VMs im selben Subnetzwerk zuzulassen.

Erstellen Sie Firewallregeln, um den Zugriff für Folgendes zu ermöglichen:

  • Die von SAP NetWeaver verwendeten Standardports, wie unter TCP/IP-Ports aller SAP-Produkte dokumentiert.
  • Verbindungen von Ihrem Computer oder dem Unternehmensnetzwerk aus zu Ihrer Compute Engine-VM-Instanz. Wenn Sie sich nicht sicher sind, welche IP-Adresse Sie verwenden sollen, wenden Sie sich an den Netzwerkadministrator Ihres Unternehmens.
  • Kommunikation zwischen VMs in einer dreistufigen Konfiguration, einer horizontal skalierbaren Konfiguration oder einer Hochverfügbarkeitskonfiguration. Wenn Sie beispielsweise ein dreistufiges System bereitstellen, befinden sich mindestens zwei VMs in Ihrem Subnetzwerk: die VM für SAP NetWeaver und eine andere VM für den Datenbankserver. Damit eine Kommunikation zwischen beiden VMs stattfinden kann, müssen Sie eine Firewallregel erstellen, die Traffic aus dem Subnetzwerk zulässt.
  • SSH-Verbindungen zu Ihrer VM-Instanz, einschließlich SSH über den Browser über Port 22.
  • Verbindungen zur VM-Instanz von Drittanbietertools, z. B. einem lokalen Terminal oder PuTTY. Erstellen Sie eine Regel, die dem Tool den Zugriff über Ihre Firewall ermöglicht. Weitere Informationen finden Sie unter Verbindung zu Linux-VMs über Drittanbietertools herstellen.

Informationen zum Erstellen der Firewallregeln für Ihr Projekt finden Sie unter Firewallregeln erstellen.

Linux-VM für SAP NetWeaver mit Terraform bereitstellen

In der folgenden Anleitung wird Cloud Shell verwendet, um eine VM-Instanz mit Linux und allen nichtflüchtigen Speichern bereitzustellen, die von SAP NetWeaver benötigt werden.

Bereitstellungsverfahren

  1. Rufen Sie Cloud Shell auf.

    Zu Cloud Shell

  2. Laden Sie die Konfigurationsdatei sap_nw.tf in Ihr Arbeitsverzeichnis herunter:

    wget https://storage.googleapis.com/cloudsapdeploy/terraform/latest/terraform/sap_nw/terraform/sap_nw.tf

  3. Öffnen Sie die Datei sap_nw.tf im Cloud Shell-Code-Editor.

    Klicken Sie zum Öffnen des Code-Editors auf das Stiftsymbol oben rechts im Cloud Shell-Terminalfenster.

  4. Aktualisieren Sie in der Datei sap_nw.tf die folgenden Argumentwerte. Ersetzen Sie dazu den Inhalt innerhalb der doppelten Anführungszeichen durch die Werte für Ihre Installation. Die Argumente werden in der folgenden Tabelle beschrieben.

    Argument Datentyp Beschreibung
    source String

    Gibt den Speicherort und die Version des Terraform-Moduls an, das während der Bereitstellung verwendet werden soll.

    Die Konfigurationsdatei sap_nw.tf enthält zwei Instanzen des Arguments source: eine aktive und eine als Kommentar. Das standardmäßig aktive Argument source gibt latest als Modulversion an. Die zweite Instanz des Arguments source, die standardmäßig durch ein führendes #-Zeichen deaktiviert ist, gibt einen Zeitstempel an, der eine Modulversion identifiziert.

    Wenn alle Ihre Bereitstellungen dieselbe Modulversion verwenden müssen, entfernen Sie das führende #-Zeichen aus dem Argument source, das den Zeitstempel der Version angibt, und fügen Sie es dem Argument source hinzu, das latest angibt.

    project_id String Geben Sie die ID Ihres Google Cloud-Projekts an, in dem Sie dieses System bereitstellen. Beispiel: my-project-x.
    zone String

    Geben Sie die Zone an, in der Sie das SAP-System bereitstellen. Die Zone muss sich in derselben Region befinden, die Sie für Ihr Subnetz ausgewählt haben.

    Wenn Ihr Subnetz beispielsweise in der Region us-central1 bereitgestellt wird, können Sie eine Zone wie us-central1-a angeben.

    machine_type String Geben Sie den Typ der virtuellen Maschine (VM) von Compute Engine an, auf der Sie Ihr SAP-System ausführen müssen. Wenn Sie einen benutzerdefinierten VM-Typ benötigen, geben Sie einen vordefinierten VM-Typ mit einer Anzahl an vCPUs an, die der benötigten Anzahl am nächsten kommt, aber noch darüber liegt. Wenn die Bereitstellung abgeschlossen ist, ändern Sie die Anzahl der vCPUs und den Umfang des Arbeitsspeichers.

    Beispiel: n1-highmem-32.

    subnetwork String Geben Sie den Namen des Subnetzwerks an, das Sie in einem vorherigen Schritt erstellt haben. Wenn die Bereitstellung in einer freigegebenen VPC erfolgt, geben Sie diesen Wert als SHARED_VPC_PROJECT_ID/SUBNETWORK an. Beispiel: myproject/network1.
    linux_image String Geben Sie den Namen des Linux-Betriebssystem-Images an, auf dem Sie Ihr SAP-System bereitstellen möchten. Beispiel: rhel-9-2-sap-ha oder sles-15-sp5-sap. Eine Liste der verfügbaren Betriebssystem-Images finden Sie auf der Seite Images in der Google Cloud Console.
    linux_image_project String Geben Sie das Google Cloud-Projekt an, in dem das Image enthalten ist, das Sie für das Argument linux_image angegeben haben. Dieses Projekt kann Ihr eigenes Projekt oder ein Google Cloud-Image-Projekt sein. Geben Sie für ein Compute Engine-Image entweder rhel-sap-cloud oder suse-sap-cloud an. Weitere Informationen zum Image-Projekt für Ihr Betriebssystem finden Sie unter Details zu Betriebssystemen.
    usr_sap_size Ganzzahl Optional. Geben Sie die Größe des Laufwerks /usr/sap in GB an. Die Mindestgröße beträgt 8 GB. Der Standardwert ist 8.
    sap_mnt_size Ganzzahl Optional. Geben Sie die Größe des Laufwerks /sapmnt in GB an. Die Mindestgröße beträgt 8 GB. Der Standardwert ist 8.
    swap_size Ganzzahl Optional. Geben Sie die Größe des Auslagerungs-Volumes in GB an. Die Mindestgröße beträgt 8 GB. Der Standardwert ist 8.
    network_tags String Optional. Geben Sie ein oder mehrere kommagetrennte Netzwerk-Tags an, die Sie zu Firewall- oder Routingzwecken mit Ihren VM-Instanzen verknüpfen möchten.

    Wenn Sie public_ip = false, aber kein Netzwerk-Tag angeben, müssen Sie eine andere Möglichkeit für den Zugriff auf das Internet bereitstellen.

    public_ip Boolesch Optional. Legt fest, ob Ihre VM-Instanz eine öffentliche IP-Adresse erhält. Der Standardwert ist true.
    service_account String Optional. Geben Sie die E-Mail-Adresse eines nutzerverwalteten Dienstkontos an, das von den Host-VMs und den darauf ausgeführten Programmen verwendet werden soll. Beispiel: svc-acct-name@project-id.iam.gserviceaccount.com.

    Wenn Sie dieses Argument ohne Wert angeben oder weglassen, verwendet das Installationsskript das Compute Engine-Standarddienstkonto. Weitere Informationen finden Sie unter Identitäts- und Zugriffsverwaltung für SAP-Programme in Google Cloud.

    sap_deployment_debug Boolesch Optional. Geben Sie true nur dann an, wenn Sie von Cloud Customer Care aufgefordert werden, das Debugging für Ihre Bereitstellung zu aktivieren, da hierdurch ausführliche Bereitstellungslogs generiert werden. Der Standardwert ist false.
    reservation_name String Optional. Um eine bestimmte Compute Engine-VM-Reservierung für diese Bereitstellung zu verwenden, geben Sie den Namen der Reservierung an. Standardmäßig wählt das Installationsskript basierend auf den folgenden Bedingungen jede verfügbare Compute Engine-Reservierung aus.

    Damit eine Reservierung unabhängig davon verwendet werden kann, ob Sie einen Namen angeben oder dieser vom Installationsskript automatisch ausgewählt wird, muss die Reservierung so festgelegt werden:

    • Die Option specificReservationRequired ist auf true oder in der Google Cloud Console auf Bestimmte Reservierung auswählen festgelegt.
    • Einige Compute Engine-Maschinentypen unterstützen CPU-Plattformen, die nicht von der SAP-Zertifizierung des Maschinentyps abgedeckt sind. Wenn die Zielreservierung für einen der folgenden Maschinentypen gilt, muss die Reservierung die Mindest-CPU-Plattformen angeben:
      • n1-highmem-32: Intel Broadwell
      • n1-highmem-64: Intel Broadwell
      • n1-highmem-96: Intel Skylake
      • m1-megamem-96: Intel Skylake
    • Die Mindest-CPU-Plattformen für alle anderen Maschinentypen, die von SAP für die Verwendung in Google Cloud zertifiziert sind, entsprechen der Mindest-CPU-Anforderung von SAP.
    can_ip_forward Boolesch

    Geben Sie an, ob das Senden und Empfangen von Paketen mit nicht übereinstimmenden Quell- oder Ziel-IP-Adressen zulässig ist. Dadurch kann eine VM als Router fungieren. Der Standardwert ist true.

    Wenn Sie nur die internen Load Balancer von Google zum Verwalten virtueller IP-Adressen für die bereitgestellten VMs verwenden möchten, legen Sie den Wert auf false fest. Ein interner Load-Balancer wird im Rahmen von Hochverfügbarkeitsvorlagen automatisch bereitgestellt.

    Die folgende Konfigurationsdatei erstellt eine VM, die für die Ausführung von SAP NetWeaver konfiguriert ist. Die Konfigurationsdatei stellt eine n1-standard-16-VM bereit, auf der ein SLES 15 SP3-Betriebssystem ausgeführt wird. Die VM enthält alle Verzeichnisse, die zum Ausführen von SAP NetWeaver benötigt werden.

      # ...
      module "sap_nw" {
      source = "https://storage.googleapis.com/cloudsapdeploy/terraform/latest/terraform/sap_nw/sap_nw_module.zip"
      #
      # By default, this source file uses the latest release of the terraform module
      # for SAP on Google Cloud.  To fix your deployments to a specific release
      # of the module, comment out the source property above and uncomment the source property below.
      #
      # source = "https://storage.googleapis.com/cloudsapdeploy/terraform/YYYYMMDDHHMM/terraform/sap_nw/sap_nw_module.zip"
      #
      # ...
      #
      project_id = "example-project-123456"
      zone = "us-central1-f"
      machine_type = "n1-standard-16"
      subnetwork = "example-sub-network-sap"
      linux_image = "sles-15-sp3-sap"
      linux_image_project = "suse-sap-cloud"
    
      instance_name = "ex-vm-nw-lin"
      # ...
      usr_sap_size = 15
      sap_mnt_size = 15
      swap_size = 24
      # ...
      }
  5. So initialisieren Sie Ihr aktuelles Arbeitsverzeichnis und laden das Plug-in und die Moduldateien des Terraform-Anbieters für Google Cloud herunter:

    terraform init

    Mit dem Befehl terraform init wird Ihr Arbeitsverzeichnis für andere Terraform-Befehle vorbereitet.

    Wenn Sie eine Aktualisierung der Plug-in- und Konfigurationsdateien des Anbieters in Ihrem Arbeitsverzeichnis erzwingen möchten, geben Sie das Flag --upgrade an. Wenn das Flag --upgrade weggelassen wird und Sie keine Änderungen in Ihrem Arbeitsverzeichnis vornehmen, verwendet Terraform die lokal im Cache gespeicherten Kopien, auch wenn in der source-URL der Wert latest angegeben ist.

    terraform init --upgrade 
  6. Optional können Sie den Terraform-Ausführungsplan so erstellen:

    terraform plan

    Der Befehl terraform plan zeigt die Änderungen an, die für Ihre aktuelle Konfiguration erforderlich sind. Wenn Sie diesen Schritt überspringen, wird mit dem Befehl terraform apply automatisch ein neuer Plan erstellt und Sie werden aufgefordert, diesen zu genehmigen.

  7. So wenden Sie den Ausführungsplan an:

    terraform apply

    Wenn Sie aufgefordert werden, die Aktionen zu genehmigen, geben Sie yes ein.

    Mit dem terraform-Befehl apply wird die Google Cloud-Infrastruktur gemäß den in der Terraform-Konfigurationsdatei definierten Argumenten eingerichtet. Der Vorgang kann einige Minuten dauern. Führen Sie die Schritte im nächsten Abschnitt aus, um den Fortschritt des Deployments zu überprüfen.

  8. Wenn Sie nach dem Deployment der VM-Instanz Compute Engine benötigen, um das Bootlaufwerk für den Fall zu speichern, dass die VM-Instanz gelöscht wird:

    1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.

      Zu Seite „VM-Instanzen“

    2. Klicken Sie auf den Namen der VM-Instanz, um die Seite VM-Instanzdetails für Ihre VM-Instanz zu öffnen.

    3. Klicken Sie auf Bearbeiten.

    4. Achten Sie darauf, dass im Abschnitt Bootlaufwerk für die Löschregel die Option Laufwerk behalten ausgewählt ist.

    5. Klicken Sie auf Speichern.

Deployment überprüfen

Zum Prüfen der Bereitstellung prüfen Sie die Bereitstellungslogs in Cloud Logging und die Konfiguration der VM.

Log prüfen

  1. Öffnen Sie in der Google Cloud Console „Cloud Logging“, um den Installationsfortschritt zu überwachen und nach Fehlern zu suchen.

    Zu Cloud Logging

  2. Filtern Sie die Logs:

    Log-Explorer

    1. Wechseln Sie auf der Seite Log-Explorer zum Bereich Abfrage.

    2. Wählen Sie im Drop-down-Menü Ressource die Option Global aus und klicken Sie dann auf Hinzufügen.

      Wenn die Option Global nicht angezeigt wird, geben Sie im Abfrageeditor die folgende Abfrage ein:

      resource.type="global"
      "Deployment"
      
    3. Klicken Sie auf Abfrage ausführen.

    Legacy-Loganzeige

    • Wählen Sie auf der Seite Legacy-Loganzeige im einfachen Auswahlmenü die Option Global als Logging-Ressource aus.
  3. Analysieren Sie die gefilterten Logs:

    • Wenn "--- Finished" angezeigt wird, ist die Verarbeitung des Deployments abgeschlossen und Sie können mit dem nächsten Schritt fortfahren.
    • Wenn ein Kontingentfehler auftritt:

      1. Erhöhen Sie auf der Seite IAM & Verwaltung > Kontingente alle Kontingente, die nicht die im Planungsleitfaden für SAP HANA aufgeführten Anforderungen erfüllen.

      2. Öffnen Sie Cloud Shell.

        Zu Cloud Shell

      3. Wechseln Sie zu Ihrem Arbeitsverzeichnis und löschen Sie das Deployment, um die VMs und nichtflüchtigen Speicher aus der fehlgeschlagenen Installation zu entfernen:

        terraform destroy

        Wenn Sie aufgefordert werden, die Aktion zu genehmigen, geben Sie yes ein.

      4. Führen Sie die Bereitstellung noch einmal aus.

Konfiguration der VM prüfen

  1. Stellen Sie nach dem Bereitstellen der VM-Instanz mithilfe von ssh eine Verbindung zur VM her.

    1. Erstellen Sie eine Firewallregel, um eine SSH-Verbindung über Port 22 zuzulassen, wenn nicht bereits geschehen.
    2. Wechseln Sie zur Seite VM-Instanzen.

      Zu „VM-Instanzen“

    3. Klicken Sie für Ihre VM-Instanz auf SSH oder verwenden Sie Ihre bevorzugte SSH-Methode.

      Schaltfläche "SSH" auf der Seite "VM-Instanzen" von Compute Engine

  2. Wechseln Sie zum Root-Nutzer.

    sudo su -
  3. Geben Sie bei der Eingabeaufforderung df -h ein. Prüfen Sie, ob eine Ausgabe ähnlich der folgenden angezeigt wird.

    Vom Skript erstellte Daten-Volumes

  4. Prüfen Sie, ob das Auslagerungsverzeichnis erstellt wurde:

    cat /proc/meminfo | grep Swap

    Die Ausgabe sollte diesem Beispiel ähneln:

    Beispiel für Terminalausgabe bei Vorhandensein eines Auslagerungsverzeichnisses

  5. Wenn Sie RHEL für SAP 9.0 oder höher verwenden, achten Sie darauf, dass die Pakete chkconfig und compat-openssl11 auf Ihrer VM-Instanz installiert sind.

    Weitere Informationen von SAP finden Sie im SAP-Hinweis 3108316 – Red Hat Enterprise Linux 9.x: Installation und Konfiguration.

Wenn einer der Überprüfungsschritte auf eine fehlgeschlagene Installation hindeutet:

  1. Korrigieren Sie den Fehler.

  2. Cloud Shell öffnen

    Zu Cloud Shell

  3. Wechseln Sie zu dem Verzeichnis, das die Terraform-Konfigurationsdatei enthält.

  4. Löschen Sie das Deployment:

    terraform destroy

    Wenn Sie aufgefordert werden, die Aktion zu genehmigen, geben Sie yes ein.

  5. Führen Sie die Bereitstellung noch einmal aus.

Verbindung zur VM herstellen

Wenn Sie eine Firewallregel definiert haben, die den Zugriff auf Port 22 zulässt, können Sie mithilfe von gängigen SSH-Tools eine Verbindung zu einer Linux-VM herstellen.

Sie können die Verbindung über die Google Cloud Console oder von einem Terminal mit einem gcloud-Befehl herstellen.

Console

So stellen Sie eine Verbindung über ssh direkt in einem Browser in der Google Cloud Console her:

  1. In the Google Cloud console, go to the VM instances page.

    Go to VM instances

  2. In the list of virtual machine instances, click SSH in the row of the instance that you want to connect to.

    SSH button next to instance name.

gcloud

Das Google Cloud CLI verwaltet Ihre SSH-Schlüssel für Sie, indem sie bei Bedarf neue projektweite SSH-Schlüssel generiert und anwendet.

Stellen Sie eine Verbindung zur VM-Instanz her:

gcloud compute --project "[VM_PROJECT_ID]" ssh --zone "[VM_ZONE]" "[VM_NAME]"

Dabei gilt:

  • [VM_PROJECT_ID] ist der ID des Google Cloud-Projekts, in dem Sie die VM erstellt haben.
  • [VM_ZONE] ist die Zone, in der Sie die VM platziert haben.
  • [VM_NAME] ist der Name der VM-Instanz.

Nachdem Sie diesen Befehl gesendet haben, ist das Terminal mit der VM in Google Cloud verbunden und Sie können Befehle auf der Linux-VM ausführen. Wenn Sie fertig sind, trennen Sie die Verbindung zur VM mit dem Befehl exit.

Sie können auch ein neues Schlüsselpaar für die Linux-VM generieren und dieses auf das Projekt anwenden. Dadurch können Sie eine Verbindung mithilfe von Drittanbietertools wie PuTTY auf Windows-Workstations herstellen. Weitere Informationen finden Sie unter SSH-Schlüssel erstellen.

Es gibt noch weitere Verbindungsoptionen, die hier nicht erläutert werden.

Weitere Informationen zum Herstellen einer Verbindung zu einer Linux-VM in Google Cloud finden Sie unter Mit Linux-Instanzen verbinden.

Datenbank einrichten

Wenn Sie Ihre Datenbank noch nicht in Google Cloud bereitgestellt haben, folgen Sie der Anleitung zum Einrichten einer Datenbank sowohl im Leitfaden zu Google Cloud-Deployments als auch in der Datenbankdokumentation Ihres Datenbankanbieters.

Google Cloud bietet Deployment-Leitfäden für die folgenden SAP-zertifizierten Datenbanken:

Wenn SAP NetWeaver und der Datenbankserver auf verschiedenen VMs in einer dreistufigen Architektur ausgeführt werden, achten Sie darauf, dass Ihre Firewallregeln so definiert sind, dass die Kommunikation zwischen den VMs zugelassen ist.

Cloud Logging-Agent installieren

Der Cloud Logging-Agent bietet Ihnen eine Lösung für das Logging der Google Cloud-Systemaktivität, einschließlich Betriebssystemereignissen und – wenn Sie SAP HANA verwenden – SAP HANA-Ereignissen. Der Cloud Logging-Agent ist eine optionale, aber empfohlene Komponente. Weitere Informationen zum Google Cloud-Logging finden Sie in der Betriebsanleitung für SAP NetWeaver in Google Cloud.

Informationen zum Installieren des Cloud Logging-Agents in der neuen VM finden Sie in den Anleitungen für Linux und Windows unter Agent installieren.

SAP NetWeaver installieren

Eine Anleitung zum Installieren von SAP NetWeaver auf der neuen VM finden Sie im SAP Help Portal und im SAP NetWeaver Master Guide.

Nach der Installation von SAP NetWeaver:

  1. Aktualisieren Sie den SAP-Kernel auf die minimal unterstützte Patchebene.

    Weitere Informationen zu den unterstützten Patchebenen für den SAP-Kernel finden Sie im SAP-Hinweis 2446441 – Linux in Google Cloud (IaaS): SAP-Lizenz anpassen.

  2. Installieren Sie Ihre permanente SAP NetWeaver-Lizenz.

    Weitere Informationen von SAP über das Verwalten Ihrer SAP NetWeaver-Lizenzen finden Sie unter SAP-Lizenzverfahren.

SAP-Host-Agent installieren

Der SAP-Host-Agent wurde für die Ausführung in Google Cloud optimiert. Führen Sie mindestens die für die Google Cloud-Umgebung erforderliche Mindestversion des SAP-Host-Agents aus.

Details finden Sie in den folgenden SAP-Hinweisen:

Installation des Google Cloud-Agents für SAP prüfen

Nachdem Sie eine VM bereitgestellt und Ihr SAP-System installiert haben, prüfen Sie, ob der Google Cloud-Agent für SAP ordnungsgemäß funktioniert.

Ausführung des Google Cloud-Agents für SAP prüfen

So prüfen Sie, ob der Agent ausgeführt wird:

  1. Stellen Sie eine SSH-Verbindung zu Ihrer Compute Engine-Instanz her.

  2. Führen Sie dazu diesen Befehl aus:

    systemctl status google-cloud-sap-agent

    Wenn der Agent ordnungsgemäß funktioniert, enthält die Ausgabe active (running). Beispiel:

    google-cloud-sap-agent.service - Google Cloud Agent for SAP
    Loaded: loaded (/usr/lib/systemd/system/google-cloud-sap-agent.service; enabled; vendor preset: disabled)
    Active:  active (running)  since Fri 2022-12-02 07:21:42 UTC; 4 days ago
    Main PID: 1337673 (google-cloud-sa)
    Tasks: 9 (limit: 100427)
    Memory: 22.4 M (max: 1.0G limit: 1.0G)
    CGroup: /system.slice/google-cloud-sap-agent.service
           └─1337673 /usr/bin/google-cloud-sap-agent
    

Wenn der Agent nicht ausgeführt wird, starten Sie den Agent neu.

Prüfen, ob der SAP-Host-Agent Messwerte empfängt

Führen Sie die folgenden Schritte aus, um zu prüfen, ob die Infrastrukturmesswerte vom Agent von Google Cloud für SAP erfasst und korrekt an den SAP-Host-Agent gesendet werden:

  1. Geben Sie in Ihrem SAP-System Transaktion ST06 ein.
  2. Kontrollieren Sie im Übersichtsbereich die Verfügbarkeit und den Inhalt der folgenden Felder, um die korrekte End-to-End-Einrichtung der SAP- und Google-Monitoring-Infrastruktur zu überprüfen:

    • Cloud-Anbieter: Google Cloud Platform
    • Zugriff für erweitertes Monitoring: TRUE
    • Details für erweitertes Monitoring: ACTIVE

SAP NetWeaver-Arbeitslast bewerten

Mit Workload Manager können Sie kontinuierliche Validierungsprüfungen für Ihre SAP NetWeaver-Arbeitslasten automatisieren, die in Google Cloud ausgeführt werden.

Mit Workload Manager können Sie Ihre SAP NetWeaver-Arbeitslasten automatisch anhand von Best Practices von SAP, Google Cloud und Betriebssystemanbietern scannen und bewerten. Dies verbessert die Qualität, Leistung und Zuverlässigkeit Ihrer Arbeitslasten.

Informationen zu den Best Practices, die Workload Manager für die Bewertung von SAP NetWeaver-Arbeitslasten in Google Cloud unterstützt, finden Sie unter Best Practices von Workload Manager für SAP. Informationen zum Erstellen und Ausführen einer Bewertung mit Workload Manager finden Sie unter Evaluierung erstellen und ausführen.

Fehlerbehebung

Dieser Abschnitt bietet Informationen zur Behebung häufiger Probleme.

Fehlerbehebung bei Kommunikationsproblemen mit dem Datenbankserver

Wenn Sie ein dreistufiges SAP-System einrichten und Verbindungsprobleme zwischen Ihren VMs haben, achten Sie darauf, dass Sie eine Firewallregel erstellt haben, um Traffic zwischen den VMs in Ihrem Subnetzwerk zuzulassen.

Fehlerbehebung beim Herstellen einer Verbindung zu der VM

Wenn Sie Probleme damit haben, über ssh eine Verbindung zur VM herzustellen, prüfen Sie, ob Sie eine Firewallregel zum Öffnen von Port 22 im verwendeten Google Cloud-Netzwerk erstellt haben.

Weitere mögliche Probleme in Zusammenhang mit SSH über den Browser finden Sie unter Bekannte Probleme.

Fehlerbehebung für den Google Cloud-Agent für SAP

Informationen zur Fehlerbehebung für den Google Cloud-Agent für SAP finden Sie in den Tipps zur Fehlerbehebung für den Google Cloud-Agent für SAP.