SAP-HANA-Systemreplikation einrichten

Objective

After completing this lesson, you will be able to SAP-HANA-Systemreplikation einrichten

Übersicht über die Konfigurationsschritte

Konfigurationsschritte zum Einrichten der SAP-HANA-Systemreplikation

  1. Starten Sie das Primärsystem.
  2. Legen Sie eine initiale Datensicherung oder einen Speicher-Snapshot auf dem Primärsystem an.
  3. Aktivieren Sie die Systemreplikation im Primärsystem.
  4. Bereiten Sie das Sekundärsystem für die Authentifizierung vor, indem Sie die System-PKI SSFS .key und die .dat-Datei vom Primärsystem in das Sekundärsystem kopieren.
  5. Registrieren Sie das Sekundärsystem und stellen Sie eine Verbindung zwischen dem Sekundärsystem und dem Primärsystem her.

Die Konfigurationsaufgaben im Primär- und Sekundärsystem zum Einrichten der Systemreplikation sind in der Abbildung „Einrichten der Systemreplikation" dargestellt. Mit dieser Konfiguration können Sie einen Rechenzentrumsausfall wiederherstellen, indem Sie zu einem Sekundärstandort wechseln. Das Primärsystem bleibt während dieses Vorgangs online.

Unabhängig von der Betriebsart der Systemreplikation ist die erste Datenübertragungsaktion eine automatische Erstdatenübernahme. Die zweite Datenübertragungsaktion hängt von der Betriebsart ab.

Die folgenden Schritte werden während der Einrichtung der Systemreplikation ausgeführt:

  1. Das Primärsystem wird informiert, um die Systemreplikation zu aktivieren.
  2. Die sekundäre Datenbank wird gestoppt. Der Inhalt wird während der Erstdatenübernahme mit einer vollständigen Datensicherung zu einem späteren Zeitpunkt beim initialen Start der Replikation gelöscht.
  3. Dem Sekundärsystem wird empfohlen, eine Verbindung zum Primärsystem herzustellen, und kommuniziert über den Versuch, den Standby-Prozess der Systemreplikation zu starten.
    • Dieser Prozess ist mit Zertifikaten usw. gesichert.
    • Es wird nur ein Befehl benötigt: HDBNSUTIL.
    • Beide Seiten müssen dieselbe Anzahl aktiver und Standby-Hosts mit demselben Sizing (Speicher und CPU) haben.
    • SAP HANA selbst behandelt beispielsweise die Beziehungen von Scale-Out-Setups auf beiden Seiten (primär zu sekundär) und die Art und Weise, wie die Kommunikation mit den einzelnen Gegenpartnern hergestellt wird.
    • Die Kommunikation findet intern zwischen Sites auf TREXnet statt.

Notiz

Wenn die primäre Verbindung zwischen Rechenzentren für eine Erstdatenübernahme (in der Regel TBs) zu schwach ist, verwenden Sie Snapshot-Datensicherungen, um die Initialisierung der SAP-HANA-Systemreplikation einzurichten.

Zusätzliche Konfigurationsschritte zum Aktivieren der SAP-HANA-Systemreplikation

Ab SAP HANA 2.0 sind zusätzliche Konfigurationsschritte erforderlich, um die SAP-HANA-Systemreplikation einzurichten, da Replikationsverbindungen nun die zertifikatsbasierte Authentifizierung verwenden.

Die Systemreplikation mit SAP HANA 2.0 erfordert eine Authentifizierung für die Daten- und Protokollversandkanäle. Die Authentifizierung erfolgt über die Zertifikate im System PKI SSFS Store. Ein zusätzlicher manueller Einrichtungsschritt ist erforderlich, um Zertifikate im System-PKI-SSFS-Speicher zwischen Primär- und Sekundär-Sites auszutauschen. Weitere Informationen finden Sie im SAP-Hinweis 2369981.

Zusätzliche Konfigurationsschritte zum Aktivieren der SAP-HANA-Systemreplikation

Kopieren Sie die System-PKI-SSFS-KEY- und DAT-Dateien vom Primärstandort in den Sekundärstandort. Sie finden die Dateien an folgenden Stellen:

/usr/sap/<SID>/SYS/global/security/rsecssfs/data/SSFS_<SID>.DAT

/usr/sap/<SID>/SYS/global/security/rsecssfs/key/SSFS_<SID>.KEY

Weitere Informationen finden Sie im SAP-Hinweis 2369981 - Erforderliche Konfigurationsschritte für die Authentifizierung mit SAP-HANA-Systemreplikation.

Notiz

Wenn Sie XS Advanced installiert haben, müssen Sie auch den XSA SSFS .key und die .dat -Datei aus dem Primärsystem in das Sekundärsystem in die folgenden Verzeichnisse kopieren:

/usr/sap/<SID>/SYS/global/xsa/security/ssfs/data/SSFS_<SID>.DAT

/usr/sap/<SID>/SYS/global/xsa/security/ssfs/key/SSFS_<SID>.KEY

Weitere Informationen finden Sie im SAP-Hinweis 2300936 - Host Auto-Failover & System Replication Setup with SAP HANA extended application services, advanced model.

Die kopierten Dateien werden beim Systemneustart aktiv. Daher wird empfohlen, die Dateien zu kopieren, wenn das sekundäre SAP-HANA-System offline ist, z.B. vor der Registrierung.

Aktivierung der SAP-HANA-Systemreplikation

Die Systemreplikation kann in der Befehlszeile mit hdbnsutil, mit dem SAP HANA Cockpit, SAP-HANA-Studio oder mit SAP Landscape Management eingerichtet oder verwaltet werden.

Die folgenden Administrationsaktivitäten sind mit hdbnsutil, mit dem SAP HANA Cockpit oder SAP-HANA-Studio möglich:

  • Durchführen der Erstkonfiguration, d.h. Aktivieren der Systemreplikation und Herstellen der Verbindung zwischen zwei identischen Systemen.

  • Überwachen des Status der Systemreplikation, um sicherzustellen, dass beide Systeme synchron sind.

  • Auslösen der Übernahme durch das Sekundärsystem im Katastrophenfall und Failback, sobald das Originalsystem wieder verfügbar ist.

  • Systemreplikation wird deaktiviert.

SAP-HANA-Systemreplikation mit SAP HANA Cockpit aktivieren

Es gibt zwei Möglichkeiten, die SAP-HANA-Systemreplikation im SAP HANA Cockpit einzurichten:

  • Aktivieren Sie das Primärsystem, und registrieren Sie dann das Sekundärsystem aus dem Primärsystem in einem Konfigurationsschritt.

  • Aktivieren Sie die Systemreplikation im Primärsystem, und registrieren Sie dann das Sekundärsystem in einem zweiten Schritt.

Die Schritte zum Konfigurieren des Primär- und Sekundärsystems mit dem SAP HANA Cockpit sind in der Abbildung „Systemreplikation aktivieren" dargestellt.

SAP HANA Cockpit: Suchen Sie auf der Übersichtsseite der Systemdatenbank nach Systemreplikation, um die App zu finden. Wählen Sie in der Systemreplikations-App die Drucktaste Systemreplikation konfigurieren, um den Assistenten zu starten.Systemreplikation konfigurieren

Sie haben die Systemreplikation aktiviert und das Sekundärsystem beim Primärsystem registriert. Das Sekundärsystem arbeitet im Wiederherstellungsmodus. Alle sekundären Systemservices kommunizieren ständig mit ihren primären Gegenstücken, replizieren und persistieren Daten und Protokolle und laden Daten in den Speicher. Das Sekundärsystem akzeptiert jedoch keine SQL-Verbindungen.

Um die SAP-HANA-Systemreplikation zwischen zwei identischen SAP-HANA-Systemen einzurichten, müssen Sie zuerst die Systemreplikation im Primärsystem aktivieren und dann das Sekundärsystem registrieren.

SAP-HANA-Systemreplikation mit hdbnsutil aktivieren

Es ist auch möglich, die SAP-HANA-Systemreplikation mit dem Befehlszeilenwerkzeug hdbnsutil als <sid>adm auf Betriebssystemebene zu konfigurieren. Das Befehlszeilentool kann Teil eines Skripts sein, das weitere Schritte über die Systemreplikation hinaus ausführt.

SAP-HANA-Systemreplikation mit hdbnsutil aktivieren

  1. Legen Sie eine Datensicherung des Primärsystems an.

  2. Aktivieren Sie das Primärsystem, und geben Sie dem Primärsystem einen logischen Namen:

    hdbnsutil -sr_enable --name=PRIMARY

  3. Stoppen Sie das Sekundärsystem:

    sapcontrol –nr <instance_number> -function StopSystem HDB

  4. Registrieren Sie das Sekundärsystem (wählen Sie Replikations- und Betriebsart):

    Code Snippet
    12345
    hdbnsutil -sr_register --remoteHost=<primary hostname> --remoteInstance=<instance number> --replicationMode=<sync|syncmem|async> --operationMode=<delta_datashipping|logreplay> --name=SECONDARY

  5. Starten Sie das Sekundärsystem, um die Replikation zu starten:

    sapcontrol –nr <instance_number> -function StartSystem HDB

Sobald das Sekundärsystem gestartet wurde, wird der Replikationsprozess automatisch gestartet.

Option für vollständige Synchronisierung für SAP-HANA-Systemreplikation aktivieren

Wenn diese Option aktiviert ist, stellt die Option für die vollständige Synchronisierung für die SAP-HANA-Systemreplikation sicher, dass ein Protokollpuffer an das Sekundärsystem gesendet wird, bevor ein Commit auf dem lokalen Primärsystem erfolgt.

Option für vollständige Synchronisierung für SAP-HANA-Systemreplikation

  • Aktivieren und deaktivieren Sie die Option für die vollständige Synchronisierung:

    hdbnsutil -sr_fullsync --enable|--disable

  • Prüfen Sie die Einstellung der Option für die vollständige Synchronisierung:

    Verwenden Sie SQL, um die Spalte "FULL_SYNC" der View M_SERVICE_REPLICATION anzuzeigen. Die Option für die vollständige Synchronisierung kann folgende Werte haben:

    • DISABLED: Vollständige Synchronisierung ist überhaupt nicht konfiguriert

    • AKTIVIERT: Vollständige Synchronisierung ist konfiguriert, aber noch nicht aktiv

    • AKTIV: Vollständiger Synchronisationsmodus ist konfiguriert und aktiv

Die Option für die vollständige Synchronisierung kann für die SYNC-Replikation aktiviert werden (d.h. nicht für SYNCMEM). Wenn die Option für die vollständige Synchronisierung aktiviert ist, findet die Transaktionsverarbeitung in den Primärblöcken statt. Wenn das Sekundärsystem derzeit nicht verbunden ist, können die neu angelegten Protokollpuffer nicht an das Sekundärsystem gesendet werden. Dieses Verhalten stellt sicher, dass keine Transaktion lokal festgeschrieben werden kann, ohne dass die Protokollpuffer an die Sekundärsite gesendet werden. Die Option für die vollständige Synchronisierung kann mit dem folgenden Befehl ein- und ausgeschaltet werden: hdbnsutil -sr_fullsync --enable|--disable

Dieser Befehl ändert die Einstellung des Parameters enable_full_sync im Systemreplikationsabschnitt der Datei global.ini entsprechend. In einem laufenden System wird die vollständige Synchronisierung jedoch nicht sofort aktiv. Dadurch wird verhindert, dass das System Transaktionen sofort sperrt, wenn der Parameter auf true gesetzt wird. Stattdessen muss die vollständige Synchronisierung zuerst vom Administrator aktiviert werden. In einem zweiten Schritt wird sie intern aktiviert, wenn das Sekundärsystem verbunden ist, und wird AKTIV.

In der Systemsicht M_SERVICE_REPLICATION kann die Einstellung der Option für die vollständige Synchronisierung in mithilfe von SQL angezeigt werden.

Die Option für die vollständige Synchronisierung kann folgende Werte haben:

  • DISABLED: Vollständige Synchronisierung ist überhaupt nicht konfiguriert. Der Parameter ist enable_full_sync = false im Systemreplikationsabschnitt der Datei global.ini.

  • AKTIVIERT: Vollständige Synchronisierung ist konfiguriert, aber noch nicht aktiv, daher blockieren Transaktionen in diesem Zustand nicht. Um aktiv zu werden, muss sich das Sekundärsystem verbinden, und REPLICATION_STATUS muss AKTIV sein.

  • AKTIV: Vollständiger Synchronisationsmodus ist konfiguriert und aktiv. Wenn die Netzwerkverbindung zu einem verbundenen Sekundärsystem geschlossen ist, blockieren Transaktionen auf der Primärseite in diesem Zustand.

Wenn die vollständige Synchronisierung aktiviert ist, wenn derzeit ein aktives Sekundärsystem verbunden ist, wird FULL_SYNC sofort auf ACTIVE gesetzt.

Achtung

Wenn das Sekundärsystem gestoppt wird, deaktivieren Sie FULL_SYNC. Andernfalls können die Primärblöcke nicht gestoppt werden.

Notiz

Das Auflösen einer Sperrsituation des Primärsystems, die durch die aktivierte Option für die vollständige Synchronisation verursacht wird, muss mit dem Befehl hdbnsutil erfolgen, da ein Befehl zur Konfigurationsänderung auch in diesem Zustand blockieren könnte. Dies ist auch erforderlich, wenn Sie das aktuell blockierende Primärsystem herunterfahren möchten. Andernfalls ist es nicht möglich, ihn zu stoppen.

Komprimierungsmethoden für Protokoll und Datenversand

Die SAP-HANA-Systemreplikation unterstützt eine Reihe von Komprimierungsmethoden für Protokoll- und Datenversand.

Folgende Komprimierungsarten für Protokoll- und Datenversand werden unterstützt:

Log

Protokollpuffer-Tail-Komprimierung (standardmäßig)

Komprimierung des Protokollpufferinhalts

Daten

Datenseitenkomprimierung

Die Protokollpuffer-Tail-Komprimierung ist standardmäßig aktiviert. Alle Protokollpuffer werden durch einen Fülleintrag an 4 KB-Grenzen ausgerichtet. Bei der Protokollpuffer-Tail-Komprimierung wird der Füllereintrag vor dem Senden über das Netzwerk vom Puffer abgeschnitten und wieder hinzugefügt, wenn der Puffer das Sekundärsystem erreicht hat. Daher wird nur die Nettopuffergröße an das Sekundärsystem übertragen.

Die Größe des Fülleintrags ist kleiner als 4 KB. Dies ist die maximale Größenreduzierung pro gesendetem Protokollpuffer. Wenn die Größe der Protokollpuffer recht groß ist, ist das Komprimierungsverhältnis recht begrenzt.

Die Komprimierung des Protokollpuffers und des Seiteninhalts kann über Parametereinstellungen aktiviert werden.

Protokollpuffer und Datenseiten, die an das Sekundärsystem geliefert werden, können mit einem verlustfreien Komprimierungsalgorithmus (LZ4) komprimiert werden. Standardmäßig ist die Inhaltskomprimierung deaktiviert. Sie können sie aktivieren, indem Sie die folgenden Konfigurationsparameter auf der Sekundärsite im Abschnitt system_replication der Datei global.ini festlegen.

Konfigurationsparameter zum Aktivieren der Komprimierung

  • Aktivieren Sie die Komprimierung eines Protokolls, wenn es an das Sekundärsystem gesendet wird:

    enable_log_compression = true

  • Aktivieren Sie die Komprimierung von Daten, wenn sie an das Sekundärsystem gesendet werden:

    enable_data_compression = true

Notiz

Nachdem Sie diese Parameter geändert haben, muss der Sekundärstandort erneut mit dem Primärstandort verbunden werden.

Die Protokoll- und Datenkomprimierung ist besonders nützlich, wenn die Systemreplikation über weite Entfernungen verwendet wird, z.B. mit dem ASYNC-Replikationsmodus.

Der Open-Source-Komprimierungsalgorithmus LZ4 wurde aufgrund seiner Geschwindigkeits- und Komprimierungsverhältnisse und des relativ geringen Zeitaufwands für die Komprimierung/Dekompression ausgewählt. Die Komprimierung des Protokollpufferinhalts funktioniert auch in Kombination mit der Protokollpuffer-Tail-Komprimierung. Daher wird nur der Inhaltsteil des Protokollpuffers komprimiert, ohne den Füllereintrag zu berücksichtigen.

Durch die Aktivierung der Komprimierung wird die erforderliche Netzwerkbandbreite reduziert, aber gleichzeitig entsteht ein CPU-Overhead für das Komprimieren und Dekomprimieren der Informationen. Die Verwendung der Komprimierung ist insbesondere bei langen Entfernungen zwischen Primär- und Sekundärstandort oder bei Bandbreitenbeschränkungen sinnvoll.

Prüfen und Überwachen der SAP-HANA-Systemreplikation

Nachdem Sie das Sekundärsystem für die Systemreplikation eingerichtet haben, können Sie den Status der Replikation zwischen dem Primär- und dem Sekundärsystem mit den folgenden Werkzeugen überwachen:

  • SAP HANA Cockpit

  • SAP-HANA-Studio

  • hdbnsutil

Der aktuelle Status der Systemreplikation kann mit allen diesen Werkzeugen geprüft werden.

Die Werte für den Systemreplikationsstatus werden hervorgehoben. Der Text erläutert die Details zu den Statuswerten der Systemreplikation.

Systemreplikationsstatus

StatusBeschreibung
UnbekanntSekundär hat seit dem letzten Neustart des Primärsystems keine Verbindung zum Primärsystem hergestellt.
Wird initialisiertInitiale Datenübertragung wird ausgeführt. In diesem Zustand ist das Sekundärsystem überhaupt nicht verwendbar.
SynchronisierenDas Sekundärsystem wird erneut synchronisiert (z.B. nach einem temporären Verbindungsverlust oder einem Neustart des Sekundärsystems).
AktivDie Initialisierung oder Synchronisierung mit dem Primärsystem ist abgeschlossen, und das Sekundärsystem wird kontinuierlich repliziert. Im SYNC-Modus kommt es zu keinem Datenverlust.
ErrorBei der Verbindung ist ein Fehler aufgetreten.

Systemreplikation mit SAP HANA Cockpit überwachen

Um die SAP-HANA-Systemreplikation zu überwachen, können Sie die Kachel Systemreplikation im SAP HANA Cockpit verwenden.

Wenn die Systemreplikation konfiguriert ist, enthält die Kachel Systemreplikation Informationen über den Typ der Landschaft (zwei- oder dreistufig), den Replikationsmodus zwischen dem Primärsystem und dem Sekundärsystem der Stufe 2, den Betriebsmodus und den Gesamtreplikationsstatus.

Die Kachel Systemreplikation zeigt die folgenden Status auf einen Blick an:

  • Nicht konfiguriert (d.h. Systemreplikation ist nicht konfiguriert)

  • Alle Services sind aktiv und synchron

  • Alle Services sind aktiv, aber noch nicht synchron

  • Fehler bei der Replikation

Um den Status der Replikation im Detail zu prüfen, wählen Sie die Kachel Systemreplikation. Das Übersichtsbild Systemreplikation zeigt eine grafische Darstellung der Systemlandschaft, Konfiguration und des Status der Systemreplikation an. Oben wird die „Kette" von Systemen mit ihren Replikationsmodi angezeigt, die weitere Informationen über die Standorte und die Netzwerkverbindungen zwischen ihnen enthält.

Das Bild Systemreplikation enthält folgende Informationen:

  • Name und Rolle des Systems sowie die ausgewählte Betriebsart.

    Für die Betriebsarten logreplay und logreplay_readaccesswird zusätzlich eine Schätzung der Verweildauer angezeigt. Dies ist eine Schätzung der verbleibenden Zeit, bevor das Primärsystem beginnt, die mit RetainedFree markierten Protokollsegmente zu überschreiben, und es ist eine vollständige Datenlieferung erforderlich, um die Primär- und Sekundärsysteme nach einer Unterbrechungssituation wieder synchron zu halten. Die geschätzte Protokoll-Vollzeit ist eine Schätzung der verbleibenden Zeit, bevor das Primärsystem ein Protokoll voll wird. Der im Kopf angezeigte Wert zeigt die Situation an, in der das System zuerst laufen könnte: Protokollaufbewahrung oder Protokoll voll.

  • Wenn die SQL-Ports des Sekundärsystems für Lesezugriffe geöffnet sind.

  • Der zwischen den Systemen verwendete Replikationsmodus.

  • Die aktuelle durchschnittliche Redo-Log-Versandzeit und die durchschnittliche Größe der versendeten Redo-Log-Puffer.

    Hier wird beschrieben, wie lange es durchschnittlich gedauert hat, Redo-Log-Puffer an den Sekundärstandort zu senden, basierend auf Messungen in den letzten 24 Stunden.

Im Primärsystem wird die Kachel für die Systemreplikation hervorgehoben, die den Primär- und Sekundärsystemstatus anzeigt. Die App Systemreplikationsübersicht zeigt den detaillierten Status pro Service an.

Darüber hinaus finden Sie detaillierte Informationen zur Systemreplikation auf den Registerkarten in der Abbildung „Details zum Status eines bestimmten Service".

Übersicht Systemreplikationsregisterkarten

Replizierte Services
Die Registerkarte Replizierte Services enthält Informationen zum Replikationsstatus pro Site und Service.
Netzwerk

Die Registerkarte Netzwerk enthält Informationen über die Zeit, die benötigt wurde, um das Redo-Log an das Sekundärsystem zu senden und das Redo-Log auf das lokale Log-Volume auf der Festplatte zu schreiben.

Sie können die Netzwerkverbindung auswählen, die Sie analysieren möchten (z.B. Netzwerk-Site 1 zu 2 oder Netzwerk-Site 2 zu 3). Das angezeigte Diagramm vergleicht die lokale Schreibwartezeit mit der Remote-Schreibwartezeit, die in den letzten 24 Stunden überwacht wurde.

Protokollwiedergabe

Die Registerkarte Log Replay bietet eine grafische Darstellung der Verzögerung des Sekundärsystems. Diese Registerkarte wird angezeigt, wenn die gewählte Betriebsart für die Systemreplikationslandschaft logreplay oder logreplay_readaccess ist.

Wenn diese Registerkarte für ein Sekundärsystem aktiviert ist, wird die Verzögerung der Protokollwiedergabe für die letzten 24 Stunden angezeigt.

Darüber hinaus können Sie auf dieser Registerkarte die geschätzte Protokollaufbewahrungszeit sowie die geschätzte Protokoll-Vollzeit für alle für die Systemreplikation relevanten Services anzeigen.

Prüfung der Netzwerkgeschwindigkeit
Auf der Registerkarte Netzwerkgeschwindigkeitsprüfung können Sie die Netzwerkgeschwindigkeit der Zuordnungen von Host-zu-Host-Netzwerkkanälen der Systemreplikation messen.
Netzwerksicherheitseinstellungen
Auf der Registerkarte Netzwerksicherheitseinstellungen werden die spezifischen Netzwerksicherheitsdetails angezeigt, die zwischen dem Primär- und dem Sekundärsystem konfiguriert wurden.

Wenn Sie auf der Registerkarte Replizierte Services eine Zeile auswählen, werden die Details für den entsprechenden Service thematisch gruppiert, wie im folgenden Beispiel für den Index-Server. Da diese Informationen kontextsensitiv sind, sehen Sie nur die für dieses System erforderlichen Informationen. Da dieses Beispielsystem in der Betriebsart logreplay läuft, werden daher hier keine Informationen zum Delta-Datenversand angezeigt. Die kontextsensitiven Informationen zur Verzögerung der Protokollwiedergabe werden jedoch angezeigt. Das Delta zwischen der letzten Protokollposition und der wiedergegebenen Protokollposition gibt an, wie weit die Protokollwiedergabe im Sekundärsystem zurückliegt.

Wenn Sie einen bestimmten Service auswählen, werden die Protokollposition, der Savepoint, das vollständige Datenreplikat und die Backlog-Details angezeigt.

SAP HANA Cockpit für die Sekundärverwaltung

Das SAP HANA Cockpit unterscheidet zwischen einem Primär- und einem Sekundärsystem. Im SAP HANA Cockpit des Sekundärsystems bietet die Kachel Systemreplikation eine erste Übersicht über den Status dieser Site. In der Systemreplikationsübersicht können Sie eine Übernahme initiieren.

Im Sekundärsystem wird die Systemreplikationskachel hervorgehoben, die nur den sekundären Systemstatus anzeigt. In der App Systemreplikationsübersicht wird die Drucktaste Übernahme angezeigt.

Systemreplikation mit Befehlszeilentools und Skripten überwachen

Befehlszeilentools und Skripte zur Überwachung der Systemreplikation

  • hdbnsutil -sr_state

    Prüft, ob die Primär- und Sekundär-Sites erfolgreich für die Systemreplikation aktiviert wurden.

  • landscapeHostConfiguration.py

    Prüft den Gesamtstatus des Primärsystems.

  • systemReplicationStatus.py

    Prüft den Gesamtstatus der Systemreplikation.

Die Python-Skripte befinden sich im Verzeichnis $DIR_INSTANCE/exe/python_support.

Befehl: hdbnsutil -sr_state

Primärer Einsatzort

Code Snippet
1234567891011121314151617181920212223242526
h10adm@wdflbmt7346:/> hdbnsutil -sr_state checking for active or inactive nameserver ... System Replication State ~~~~~~~~~~~~~~~~~~~~~~~~ online: true mode: primary operation mode: primary site id: 1 site name: PrimarySite is source system: true is secondary/consumer system: false has secondaries/consumers attached: true is a takeover active: false Host Mappings: ~~~~~~~~~~~~~~ wdflbmt7346 -> [SecondarySite] wdflbmt7347 wdflbmt7346 -> [PrimarySite] wdflbmt7346 done.

Sekundärstandort

Code Snippet
1234567891011121314151617181920212223242526272829
h10adm@wdflbmt7347:/> hdbnsutil -sr_state checking for active or inactive nameserver ... System Replication State ~~~~~~~~~~~~~~~~~~~~~~~~ online: true mode: syncmem operation mode: logreplay site id: 2 site name: SecondarySite is source system: false is secondary/consumer system: true has secondaries/consumers attached: false is a takeover active: false active primary site: 1 Host Mappings: ~~~~~~~~~~~~~~ wdflbmt7347 -> [SecondarySite] wdflbmt7347 wdflbmt7347 -> [PrimarySite] wdflbmt7346 primary masters:wdflbmt7346 done.

Skript: landscapeHostConfiguration.py

Sie können auch Informationen über den Gesamtstatus der Sites und die Systemreplikation mithilfe von Python-Skripten sammeln.

Das Skript landcapeHostConfiguration.py zeigt den Status des Primärsystems an:

  • SAP HANA ist in Ordnung.

  • SAP HANA ist beispielsweise nach einem automatischen Host-Failover in Ordnung.

  • Es werden nicht genügend Instanzen gestartet, und eine Übernahme wäre nützlich.

Notiz

Das Skript informiert Sie nicht darüber, ob das Sekundärsystem bereit für eine Übernahme ist.

Das Skript stellt einen Gesamtstatus und einen Rückgabewert bereit, der mit dem Gesamthoststatus übereinstimmt.

Eine Übernahme wird nur empfohlen, wenn der Rückgabewert aus dem Skript 1 (Fehler) ist.

Beispiel:

Code Snippet
1234567
<sid>adm># python $DIR_INSTANCE/exe/python_support/landscapeHostConfiguration.py | Host | Host | Host | ... | NameServer | NameServer | ... | | Active | Status | | Config Role| Actual Role | | ----- | ------ | ------ | --------- | ---------- | ----------- | ------ | host1 | yes | ok | ... | master 1 | master | ... | host2 | yes | ok | ... | master 2 | slave | ... overall host status: ok

Folgende Host-Zustände sind möglich:

  • OK: System ist OK.

  • WARNUNG: Es findet ein automatischer Host-Failover auf einen Standby-Host statt.

  • INFORMATION: Die Landschaft ist voll funktionsfähig, aber die aktuelle (tatsächliche) Rolle des Hosts weicht von der konfigurierten Rolle ab.

  • FEHLER: Es gibt nicht genug aktive Hosts.

Skript: systemReplicationStatus.py

Das Skript systemReplicationStatus.py zeigt den Status der Systemreplikation an.

Die Verwendung von systemReplicationStatus.py hat den Vorteil, dass angezeigt wird, ob die Sekundärsysteme synchron sind oder nicht. Dies bietet mehr Konfidenz, wenn eine Übernahme gerechtfertigt ist, da es zu unerwartetem Datenverlust kommen kann, wenn die Systemreplikation nie synchron war oder veraltet ist.

Beispiel:

Code Snippet
123456789101112131415161718
h10adm@wdflbmt7346:/> python $DIR_INSTANCE/exe/python_support/systemReplicationStatus.py | Database | Host | Service Name | Site Name | Secondary | Secondary | Replication | | | | | | Host | Site Name | Status | | -------- | ----------- | ------------ | ----------- | ----------- | ------------- | ----------- | | SYSTEMDB | wdflbmt7346 | nameserver | PrimarySite | wdflbmt7347 | SecondarySite | ACTIVE | | H10 | wdflbmt7346 | xsengine | PrimarySite | wdflbmt7347 | SecondarySite | ACTIVE | | H10 | wdflbmt7346 | indexserver | PrimarySite | wdflbmt7347 | SecondarySite | ACTIVE | status system replication site "2": ACTIVE overall system replication status: ACTIVE Local System Replication State ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ mode: PRIMARY site id: 1 site name: PrimarySite

Der zusätzliche Parameter systemReplicationStatus.py --localhost schränkt die Ausführung des Python-Skripts auf den Host ein, auf dem es ausgeführt wird.

Das Skript stellt die folgenden Rückgabewerte bereit:

  • 10: Keine Systemreplikation

  • 11: Fehler

  • 12: Unbekannt

  • 13: Initialisierung

  • 14: Synchronisierung

  • 15: Aktiv

Systemreplikation mit SQL-Anweisungen überwachen

Sie können systemreplikationsspezifische Informationen auch direkt aus Systemsichten abrufen.

Systemsichten, die Informationen zur Systemreplikation bereitstellen

  • M_SERVICE_REPLICATION

    Sammelt stündlich die Historie der Daten und die Protokollreplikation.

  • M_SYSTEM_REPLICATION

    Stellt allgemeine systemreplikationsrelevante Informationen über das gesamte System bereit.

Notiz

Eine Reihe komplexer SQL-Anweisungen finden Sie im SAP-Hinweis 1969700 - SQL-Anweisungssammlung für SAP HANA. Der Abschnitt Replikation desReplikationssystems enthält einige Anweisungen, die für die Systemreplikation relevant sind. Das Übersichtsskript enthält Informationen über die Systemreplikationslandschaft und den Replikationsstatus für jeden Service.

Systemreplikations-Alerts überwachen

Bestimmte Alerts werden vom Primärsystem ausgegeben, um Sie vor potenziellen Problemen zu warnen.

Systemreplikations-Alerts

  • Systemreplikationsverbindung geschlossen (Alert-ID 78)

  • Nichtübereinstimmung des Konfigurationsparameters für die Systemreplikation (Alert-ID 79)

  • Systemreplikation Logreplay-Rückstand (Alert-ID 94)

  • Systemreplikation: erhöhter Logversandrückstand (Alert-ID 104)

Die Alerts Verbindung geschlossen und Nichtübereinstimmung der Konfigurationsparameter werden ausgelöst, wenn eine Systemreplikationsverbindung geschlossen wird oder wenn es eine Nichtübereinstimmung des Konfigurationsparameters für die Systemreplikation gibt.

Der Alert Logreplay Backlog wird ausgelöst, wenn der Logreplay-Backlog der Systemreplikation erhöht wird. In diesem Fall verzögert sich logreplay am Sekundärstandort, was zu einer längeren Übernahmezeit führt.

Um den Grund für den erhöhten Logreplay-Backlog der Systemreplikation zu ermitteln, prüfen Sie den Status der Services im Sekundärsystem. Um weitere Informationen zu erhalten, überwachen Sie den Sekundärstandort. Mögliche Ursachen für den erhöhten Logreplay-Backlog der Systemreplikation können z.B. eine langsame oder nicht funktionierende Protokollwiedergabe oder ein nicht laufender Service auf dem Sekundärsystem sein.

Der Alert Erhöhter Logversandrückstand wird ausgelöst, wenn der Versandrückstand des Systemreplikationsprotokolls erhöht wird. In diesem Fall wird der Protokollversand an das Sekundärsystem verzögert oder funktioniert nicht ordnungsgemäß, was zu einem Datenverlust im Sekundärsystem führt, wenn eine Übernahme ausgeführt wird.

Um den Grund für den erhöhten Rückstand des Systemreplikationsprotokolls zu ermitteln, prüfen Sie den Status des Sekundärsystems. Mögliche Ursachen für den erhöhten Rückstand beim Versand des Systemreplikationsprotokolls können eine langsame Netzwerk-Performance, Verbindungsprobleme oder andere interne Probleme sein (z.B. im Replikationsmodus sync oder syncmem).

Überwachen von INI-Dateiparameteränderungen

Datenbankparameter sollten im Primär- und Sekundärsystem identisch sein und werden automatisch geprüft. Der Konfigurationsparameter checker meldet alle Unterschiede zwischen Primärsystemen, Sekundärsystemen und Sekundärsystemen der Schicht 3. In einem solchen Fall erzeugt der Parameterchecker einen Alert.

Wenn die Parameterreplikation aktiviert ist, werden alle Änderungen, die am Primärsystem vorgenommen wurden, automatisch an die Sekundärstandorte repliziert. Wenn dieser Parameter nicht aktiviert ist, sollten Änderungen manuell im anderen System dupliziert werden.

Die Parameterreplikation ist standardmäßig deaktiviert. Sie kann auf der Primärsite mit dem folgenden Parameter aktiviert und deaktiviert werden:

[inifile_checker]/replicate = true | false

Der Parameter checker ist standardmäßig aktiviert. Sie kann auf der Primärsite mit dem folgenden Parameter aktiviert und deaktiviert werden:

[inifile_checker]/enable = true | false

Einige Parameter haben absichtlich unterschiedliche Einstellungen auf dem Primär- und dem Sekundärstandort. Ein Beispiel ist der Parameter global_allocation_limit , bei dem das Sekundärsystem für andere Systeme verwendet wird. Indem Sie diese Parameter zur Ausschlussliste hinzufügen, können Sie sie von der Prüfung ausschließen.