|
|
| Zeile 32: |
Zeile 32: |
| </syntaxhighlight> | | </syntaxhighlight> |
| Mit "1" alles updaten und weiter den Anweisungen folgen. | | Mit "1" alles updaten und weiter den Anweisungen folgen. |
| === SAP HANA Zero Downtime Patching mit System Replication ===
| |
| ==== Übersicht ====
| |
| Diese Anleitung beschreibt das Zero Downtime Patching von SAP HANA mit System Replication unter Verwendung von <code>hdbnsutil</code>. Das Verfahren ermöglicht das Patchen beider HANA-Systeme ohne Ausfallzeit.
| |
| ===== Voraussetzungen =====
| |
|
| |
| SAP HANA System Replication ist konfiguriert und läuft
| |
| Replication Mode: <code>sync</code>
| |
| Operation Mode: <code>logreplay</code>
| |
| Backup der Systeme ist vorhanden
| |
| Administrativer Zugang auf beide Hosts
| |
|
| |
| ==== Vorbereitungen ====
| |
| ===== Status prüfen =====
| |
| Vor Beginn des Patching-Prozesses muss der aktuelle Status der System Replication überprüft werden:
| |
| <pre>
| |
| # Auf Primary (olga9195)
| |
| impadm@olga9195:/usr/sap/IMP/HDB00> hdbnsutil -sr_state
| |
|
| |
| # Auf Secondary (olga9196)
| |
| impadm@olga9196:/usr/sap/IMP/HDB00> hdbnsutil -sr_state
| |
| </pre>
| |
| ===== Backup erstellen =====
| |
|
| |
| ==== Phase 1: Secondary System patchen ====
| |
| ===== 1.1 Secondary unregistrieren =====
| |
| <pre>
| |
| # Auf olga9196 als impadm
| |
| impadm@olga9196:/usr/sap/IMP/HDB00> hdbnsutil -sr_unregister --id=2
| |
| </pre>
| |
| ===== 1.2 Secondary System stoppen =====
| |
| <pre>
| |
| # Auf olga9196
| |
| impadm@olga9196:/usr/sap/IMP/HDB00> HDB stop
| |
| </pre>
| |
| ===== 1.3 Patch anwenden =====
| |
| Anwenden des Patches auf olga9196 mittels:
| |
|
| |
| SWPM (Software Provisioning Manager), oder
| |
| hdblcm (HANA Database Lifecycle Manager)
| |
|
| |
| =====1.4 Secondary System starten =====
| |
| <pre>
| |
| # Auf olga9196
| |
| impadm@olga9196:/usr/sap/IMP/HDB00> HDB start
| |
| </pre>
| |
| ===== 1.5 Secondary wieder registrieren =====
| |
| <pre>
| |
| # Auf olga9196
| |
| impadm@olga9196:/usr/sap/IMP/HDB00> hdbnsutil -sr_register --remoteHost=olga9195rep \
| |
| --remoteInstance=00 \
| |
| --replicationMode=sync \
| |
| --operationMode=logreplay \
| |
| --name=imsaimpdb2
| |
| </pre>
| |
| ===== 1.6 Replikation Status prüfen =====
| |
| <pre>
| |
| # Auf beiden Hosts prüfen
| |
| hdbnsutil -sr_state
| |
| </pre>
| |
| Erwartetes Ergebnis: Secondary ist wieder als <code>sync/logreplay</code> registriert.
| |
| ==== Phase 2: Takeover zu Secondary ====
| |
| ===== 2.1 Takeover durchführen =====
| |
| <pre>
| |
| # Auf olga9196 (Secondary wird zum Primary)
| |
| impadm@olga9196:/usr/sap/IMP/HDB00> hdbnsutil -sr_takeover
| |
| </pre>
| |
| ===== 2.2 Status nach Takeover prüfen =====
| |
| <pre>
| |
| # Auf olga9196 (neuer Primary)
| |
| impadm@olga9196:/usr/sap/IMP/HDB00> hdbnsutil -sr_state
| |
| </pre>
| |
| Erwartetes Ergebnis: olga9196 ist jetzt Primary (<code>mode: primary</code>).
| |
| ==== Phase 3: Ursprüngliches Primary patchen ====
| |
| ===== 3.1 Altes Primary stoppen =====
| |
| <pre>
| |
| # Auf olga9195
| |
| impadm@olga9195:/usr/sap/IMP/HDB00> HDB stop
| |
| </pre>
| |
| ===== 3.2 Patch anwenden =====
| |
| Anwenden des Patches auf olga9195 mittels:
| |
|
| |
| SWPM (Software Provisioning Manager), oder
| |
| hdblcm (HANA Database Lifecycle Manager)
| |
|
| |
| ===== 3.3 Altes Primary starten =====
| |
| <pre>
| |
| # Auf olga9195
| |
| impadm@olga9195:/usr/sap/IMP/HDB00> HDB start
| |
| </pre>
| |
| ===== 3.4 Als neues Secondary registrieren =====
| |
| <pre>
| |
| # Auf olga9195 (wird zum Secondary)
| |
| impadm@olga9195:/usr/sap/IMP/HDB00> hdbnsutil -sr_register --remoteHost=olga9196rep \
| |
| --remoteInstance=00 \
| |
| --replicationMode=sync \
| |
| --operationMode=logreplay \
| |
| --name=imsaimpdb1
| |
| </pre>
| |
| ==== Phase 4: Zurück switchen (optional) ====
| |
| Falls das ursprüngliche Primary wieder zum Primary werden soll:
| |
| ===== 4.1 Switchover zurück =====
| |
| <pre>
| |
| # Auf olga9195 (zurück zum Primary)
| |
| impadm@olga9195:/usr/sap/IMP/HDB00> hdbnsutil -sr_takeover
| |
| </pre>
| |
| ===== 4.2 Secondary neu registrieren =====
| |
| <pre>
| |
| # Auf olga9196 (wieder Secondary)
| |
| impadm@olga9196:/usr/sap/IMP/HDB00> hdbnsutil -sr_register --remoteHost=olga9195rep \
| |
| --remoteInstance=00 \
| |
| --replicationMode=sync \
| |
| --operationMode=logreplay \
| |
| --name=imsaimpdb2
| |
| </pre>
| |
| ==== Validierung ====
| |
| ===== Finale Überprüfung =====
| |
| <pre>
| |
| # Auf beiden Hosts den finalen Status prüfen
| |
| hdbnsutil -sr_state
| |
| hdbnsutil -sr_info
| |
|
| |
| # Detaillierte Informationen
| |
| HDBSettings.sh systemReplicationStatus.py
| |
| </pre>
| |
| ===== Erwartete Ergebnisse =====
| |
|
| |
| ==== Troubleshooting ====
| |
| ===== Häufige Probleme =====
| |
| ; Replikation synchronisiert nicht
| |
| : Prüfen Sie die Netzwerkverbindung zwischen den Hosts und die Log-Verzeichnisse.
| |
| ; Takeover schlägt fehl
| |
| : Überprüfen Sie, ob alle Services auf dem Secondary laufen: <code>HDB info</code>
| |
| ; Secondary registriert sich nicht
| |
| : Kontrollieren Sie die Parameter (insbesondere remoteHost) und die Berechtigung des impadm-Users.
| |
| ===== Log-Dateien =====
| |
| Wichtige Log-Dateien für die Diagnose:
| |
| <pre>
| |
| # Nameserver Trace
| |
| /usr/sap/IMP/HDB00/olga9195/trace/nameserver_*.trc
| |
|
| |
| # System Replication Log
| |
| /usr/sap/IMP/HDB00/olga9195/trace/nameserver_history.trc
| |
| </pre>
| |
| ==== Wichtige Hinweise ====
| |
| '''Backup vor Start''': Erstellen Sie immer ein vollständiges Backup vor dem Patching.
| |
| '''Patch-Kompatibilität''': Stellen Sie sicher, dass beide Systeme mit derselben Patch-Version kompatibel sind.
| |
| '''Monitoring''': Überwachen Sie kontinuierlich den Status mit <code>hdbnsutil -sr_state</code>.
| |
| '''Rollback-Plan''': Halten Sie einen Rollback-Plan für den Fall von Problemen bereit.
| |
| '''Downtime''': Obwohl "Zero Downtime", gibt es kurze Unterbrechungen während der Takeover-Vorgänge.
| |
|
| |
| ==== Weiterführende Informationen ====
| |
|
| |
| SAP Note 1999880 - FAQ: SAP HANA System Replication
| |
| SAP Note 2013111 - FAQ: SAP HANA Database Upgrade
| |
| SAP HANA Administration Guide - System Replication
| |
|
| |
| ===SAP HANA Sizing Report=== | | ===SAP HANA Sizing Report=== |
| Quelle: [https://blogs.sap.com/2021/05/06/how-to-install-run-the-abap-on-hana-sizing-report-sap-note-1872170-a-step-by-step-guide/ HANA Sizing Report] | | Quelle: [https://blogs.sap.com/2021/05/06/how-to-install-run-the-abap-on-hana-sizing-report-sap-note-1872170-a-step-by-step-guide/ HANA Sizing Report] |
Beschreibung
SAP HANA ist eine In-Memory-Datenbank-Plattform, die von SAP entwickelt wurde. Sie ermöglicht es Unternehmen große Datenmengen in Echtzeit zu verarbeiten und zu analysieren. Die Plattform unterstützt sowohl transaktionale als auch analytische Anwendungen und ermöglicht es den Benutzern auf umfassende Echtzeit-Analysen zuzugreifen.
Die In-Memory-Technologie von SAP HANA sorgt dafür, dass Daten in einem schnellen Zugriffsspeicher gespeichert werden, anstatt auf langsameren Festplatten. Dies führt zu schnelleren Datenzugriffszeiten und ermöglicht es Unternehmen Echtzeit-Transaktionen und Analysen durchzuführen.
SAP HANA bietet auch eine Vielzahl von Tools und Anwendungen um Unternehmen bei der Verwaltung von Daten zu unterstützen. Dazu gehören Tools zur Datenintegration, Datenbereinigung, Datenmodellierung und Analyse. Es unterstützt auch eine Vielzahl von Programmiersprachen und Entwicklungsplattformen, einschließlich SAPUI5, Java, Python uvm.
Download
SAP Downloadportal
https://launchpad.support.sap.com/#/softwarecenter SUPPORT PACKAGES & PATCHES By Category SAP IN-MEMORY (SAP HANA ) HANA PLATFORM EDITION SAP HANA PLATFORM EDITION SAP HANA PLATFORM EDITION 2.0 SAP HANA CLIENT 2.0
Installation
hdblcm nach installieren:
https://me.sap.com/notes/2651885
<install_media>/SAP_HANA_DATABASE/hdblcm --sid=<SID> --action=update --components=hdblcm --ignore=check_signature_file --verify_signature=off
Konfiguration
SAP HANA Update
Aktuelle Version als <SID>ADM mit "HDB version" anzeigen lassen
IMDB_CLIENT<VERSION> und IMDB_SERVER<VERSION> von SAP herunterladen und nach /usr/sap/SUM kopieren
sudo su - root
cd /usr/sap/SUM
SAPCAR -xvf IMDB_CLIENT*
./SAPCAR -xvf IMDB_SERVER*
cd /hana/shared/*/hdblcm
./hdblcm --action=update --ignore=check_signature_file --verify_signature=off
Enter directory root to search for components: /usr/sap/SUM/
Mit "1" alles updaten und weiter den Anweisungen folgen.
SAP HANA Sizing Report
Quelle: HANA Sizing Report
- Note updaten. Prüfen, ob 2810633 einbaubar ist, ansonsten 2504480 einbauen. Wenn beide nicht einbaubar sind ist das System zu alt oder bereits aktuell.
- SA38 aufrufen und /SDF/HDB_SIZING ausführen
- "Number of parallel dialog processes" auf 3 setzen
- Ausführen oder als Hintergrundjob einplanen
User Kennwort ändern
ALTER USER <USER> PASSWORD "<new_password>";
Hinweise:
- für System@TENANT und SYSTEM@SYSTEMDB muss der HDBUSERSTORE für das Backupscript aktualisiert werden und für die Anmeldung im HDB Studio
Lösungsschritte:
Prüfen, welche Keys angelegt sind:
Alten Key löschen (Beispiel: BACKUPKEY für SystemDB):
hdbuserstore delete BACKUP
Neuen Key anlegen und dabei das aktualisierte SYSTEM‑Passwort verwenden:
hdbuserstore set BACKUP <FQDN>:30013 SYSTEM "<PW>"
SAPABAP1 Kennwort ändern
2750829 - Ändern des SAPABAP1-Schemakennworts in SAP HANA
Anschließend siehe "SAP HANA HDB Userstore neu setzen"
Encryption root keys backup password setzen
ALTER SYSTEM SET ENCRYPTION ROOT KEYS BACKUP PASSWORD "<PW>";
SAP HANA HDB Userstore neu setzen
hdbuserstore SET DEFAULT <FQDN:30013>@TENANT SAPABAP1 "PASSWORD"
Primary/Secondary Schwenk
ACHTUNG!! NUR CODESCHNIPSEL!!! Anleitung unvollständig
Primary
hdbnsutil -sr_enable --name=S4PDB1
Secondary
hdbnsutil -sr_unregister
hdbnsutil -sr_register --remoteHost=simas4pdb --remoteInstance=00 --replicationMode=sync --operationMode=logreplay --name=S4PDB2 --force_full_replica --online
HDB start
Test
Störungen
Tabelle BALDAT
in der SLG2 je Mandant alles löschen und den Job SBAL_DELETE einplanen
Transparent Huge Pages (THP) are activated or not readable
HANA Cockpit -> SystemDB -> Database Overview -> Alerting and Diagnostics -> Alert Definitions
ID 116 auswählen Transparent Huge Pages status ( ID 116)
Edit und den Schalter "Schedule Active" auf "no" setzen und "save"
Codeschnipsel
SELECT * FROM SYS.M_TABLES where SCHEMA_NAME ='SAPHANADB' AND TABLE_NAME = 'LMSEMAPHORE';
Nützliche Links