Replicate the Report Repository and Process Scheduler Job Log

The contents of the report repository and the process scheduler logs are file system artifacts created during normal PeopleSoft application operations. The report repository contents and the logs correspond to work done in the database, and must be as close to in sync with the database as possible. These file system artifacts must be replicated to the DR site, just as Oracle Data Guard replicates the database.

The PeopleSoft report repository is typically a shared file system directory that all process scheduler and PIA web tier servers can access. In this example, it is located on OCI File Storage in the /u02/app/psft/ps/report_repository directory.

The report repository is defined in the PeopleSoft PIA configuration.properties file:
PS_CFG_HOME/webserv/<PIA web domain>/applications/peoplesoft/PORTAL.war/WEB-INF/psftdocs/ps/configuration.properties

The report repository location is set when the PIA web servers are configured, and is specified in the following line in the configuration.properties file: ReportRepositoryPath=/u02/app/psft/ps/report_repository

The process scheduler logs are specific to the compute instance, as detailed in "Configure the PeopleSoft Application and Process Scheduler Domains".

The following are the directories for the process scheduler logs in this example:
/u02/app/psft/ps/log_output/node1/HR92U033
/u02/app/psft/ps/log_output/node2/HR92U033

Implement Replication

Establishing the replication process requires rsync scripts to perform the replication and a cron job that defines the schedule and frequency the scripts run.

The following scripts are available to frequently push these files to the standby:

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

The scripts are located in the Replication directory in GitHub.

The rsync_psft.sh script is executed as a cron job. It will run at both the primary and the secondary site once every five minutes. When it starts, it checks three things then exits without doing any work if any of the following are true:

  • Is the rsync script disabled? If so, exit.
  • Is the database at this site in primary or standby role? If standby, exit.
  • Is there an earlier instantiation of this script still running? If so, exit.

The application startup scripts are also coded to run the enable_psft_rsync.sh script. It is commented out as delivered, as it will fail until the standby is fully configured.

The application shutdown script is coded to call the rsync_psft.sh script one last time after shutting down the application and batch servers, then run the disable_psft_rsync.sh script. These are commented out as delivered, as they will fail until the standby is fully configured.

Because the report repository and process scheduler job logs are implemented as shared file systems, run the rsync replication process on only one node at each site. Perform the following steps to configure the rsync scripts:

  1. Configure user equivalence between a pair of compute instances hosting the process scheduler, one from each site, for the psadm2 OS user.
    This example uses the same pair that was configured with user equivalence when setting up the secondary site middle tier servers.
  2. Place all three scripts into a shared directory on Oracle Cloud Infrastructure File Storage. Modify the scripts for your environment.
  3. Give the scripts execute permission for the psadm2 user.
    $ 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. Test the scripts to ensure they all work as expected.
  5. Uncomment the run command in the application startup and shutdown scripts.
  6. If the application is running on the primary compute instance, then run the enable_psft.sh script.
    $ ./enable_psft_rsync.sh
  7. If the application is running, on the standby compute instance, then run the disable_psft.sh script.
    $ ./disable_psft_rsync.sh
  8. As root on each compute instance, add an entry into /etc/crontab that will run the rsync_psft.sh script.
    For example,
    */5 * * * * psadm2 /u01/app/psft/pt/custom_admin_scripts/rsync_psft.sh
    Monitor the log file at both sites. Each log should be written to every five minutes. The log file at the primary site should show rsync is running. The log file at the standby site should show that rsync is disabled.