Berichts-Repository und Joblog des Process Scheduler replizieren

Der Inhalt des Berichts-Repositorys und der Prozessplanerlogs sind Dateisystemartefakte, die bei normalen PeopleSoft-Anwendungsvorgängen erstellt werden. Der Inhalt des Berichts-Repositorys und die Logs entsprechen der in der Datenbank ausgeführten Arbeit und müssen so nah wie möglich mit der Datenbank synchronisiert sein. Diese Dateisystemartefakte müssen auf der DR-Site repliziert werden, genau wie Oracle Data Guard die Datenbank repliziert.

Das PeopleSoft-Berichts-Repository ist in der Regel ein freigegebenes Dateisystemverzeichnis, auf das alle Prozessplaner- und PIA-Web-Tier-Server zugreifen können. In diesem Beispiel befindet er sich im OCI File Storage im Verzeichnis /u02/app/psft/ps/report_repository.

Das Berichts-Repository ist in der Datei PeopleSoft PIA configuration.properties definiert:
PS_CFG_HOME/webserv/<PIA web domain>/applications/peoplesoft/PORTAL.war/WEB-INF/psftdocs/ps/configuration.properties

Der Speicherort des Berichts-Repositorys wird bei der Konfiguration der PIA-Webserver festgelegt und in der folgenden Zeile in der Datei configuration.properties angegeben: ReportRepositoryPath=/u02/app/psft/ps/report_repository

Die Prozessplanerlogs sind für die Compute-Instanz spezifisch, wie unter "Anwendungs- und Process Scheduler-Domains PeopleSoft konfigurieren" beschrieben.

In diesem Beispiel sind die Verzeichnisse für die Prozessplaner-Logs:
/u02/app/psft/ps/log_output/node1/HR92U033
/u02/app/psft/ps/log_output/node2/HR92U033

Replikation implementieren

Zum Einrichten des Replikationsprozesses sind rsync-Skripte zur Ausführung der Replikation und ein cron-Job erforderlich, der den Zeitplan und die Häufigkeit der Ausführung der Skripte definiert.

Die folgenden Skripte sind verfügbar, um diese Dateien häufig in die Standbydatenbank zu übertragen:

  • rsync_psft.sh
  • get_site_role.sh
  • enable_psft_rsync.sh
  • disable_psft_rsync.sh

Die Skripte befinden sich im Replikationsverzeichnis in GitHub.

Das Skript rsync_psft.sh wird als cron-Job ausgeführt. Sie wird alle fünf Minuten sowohl am primären als auch am sekundären Standort ausgeführt. Wenn es anfängt, überprüft es drei Dinge und beendet dann ohne Arbeit, wenn eines der folgenden zutrifft:

  • Ist das Skript rsync deaktiviert? Wenn ja, beenden Sie den Vorgang.
  • Ist die Datenbank an diesem Standort in der Primär- oder Standby-Rolle? Bei Standby beenden.
  • Wird eine frühere Instanziierung dieses Skripts noch ausgeführt? Wenn ja, beenden Sie den Vorgang.

Die Startskripte der Anwendung sind auch zur Ausführung des Skripts enable_psft_rsync.sh codiert. Es wird als zugestellt kommentiert, da es erst dann fehlschlägt, wenn die Standbydatenbank vollständig konfiguriert ist.

Das Skript zum Herunterfahren der Anwendung ist so codiert, dass das Skript rsync_psft.sh ein letztes Mal aufgerufen wird, nachdem die Anwendungs- und Batchserver heruntergefahren wurden. Führen Sie dann das Skript disable_psft_rsync.sh aus. Diese werden als zugestellt kommentiert, da sie ausfallen, bis die Standby-Datenbank vollständig konfiguriert ist.

Da das Berichts-Repository und die Joblogs des Prozessplaners als gemeinsam verwendete Dateisysteme implementiert sind, führen Sie den rsync-Replikationsprozess nur auf einem Knoten an jedem Standort aus. Führen Sie die folgenden Schritte aus, um die rsync-Skripte zu konfigurieren:

  1. Konfigurieren Sie die Benutzeräquivalenz zwischen einem Paar Compute-Instanzen, die den Prozessplaner hosten, eine von jeder Site für den BS-Benutzer psadm2.
    In diesem Beispiel wird dasselbe Paar verwendet, das bei der Einrichtung der Middle Tier-Server der sekundären Site mit Benutzeräquivalenz konfiguriert wurde.
  2. Legen Sie alle drei Skripte in ein gemeinsam verwendetes Verzeichnis in Oracle Cloud Infrastructure File Storage auf. Ändern Sie die Skripte für Ihre Umgebung.
  3. Weisen Sie den Skripten die Ausführungsberechtigung für den Benutzer psadm2 zu.
    $ chmod u+x rsync_psft.sh
    $ chmod u+x get_site_role.sh
    $ chmod u+x enable_psft_rsync.sh
    $ chmod u+x disable_osft_rsync.sh
  4. Testen Sie die Skripte, um sicherzustellen, dass sie alle wie erwartet funktionieren.
  5. Entfernen Sie die Kommentarzeichen des Ausführungsbefehls in den Skripten zum Hoch- und Herunterfahren der Anwendung.
  6. Wenn die Anwendung auf der primären Compute-Instanz ausgeführt wird, führen Sie das Skript enable_psft.sh aus.
    $ ./enable_psft_rsync.sh
  7. Wenn die Anwendung ausgeführt wird, führen Sie auf der Standby-Compute-Instanz das Skript disable_psft.sh aus.
    $ ./disable_psft_rsync.sh
  8. Fügen Sie als root auf jeder Compute-Instanz einen Eintrag in /etc/crontab hinzu, der das Skript rsync_psft.sh ausführt.
    Beispiel:
    */5 * * * * psadm2 /u01/app/psft/pt/custom_admin_scripts/rsync_psft.sh
    Überwachen Sie die Logdatei an beiden Standorten. Jedes Log sollte alle fünf Minuten geschrieben werden. In der Logdatei auf der primären Site muss angegeben werden, dass rsync ausgeführt wird. In der Logdatei auf der Standbysite muss angegeben werden, dass rsync deaktiviert ist.