Répliquer le référentiel de rapports et le journal des travaux Process Scheduler

Le contenu du référentiel de rapports et les journaux de l'ordonnanceur de traitements sont des artefacts de système de fichiers créés lors des opérations normales de l'application PeopleSoft. Le contenu du référentiel de rapports et les journaux correspondent au travail effectué dans la base de données et doivent être aussi proches que possible de la synchronisation avec la base de données. Ces artefacts de système de fichiers doivent être répliqués sur le site de récupération après sinistre, tout comme Oracle Data Guard réplique la base de données.

Le référentiel de rapports PeopleSoft est généralement un répertoire de système de fichiers partagé auquel tous les serveurs de l'Ordonnanceur de traitements et de niveau Web PIA peuvent accéder. Dans cet exemple, il se trouve sur OCI File Storage dans le répertoire /u02/app/psft/ps/report_repository.

Le référentiel de rapports est défini dans le fichier PeopleSoft PIA configuration.properties :
PS_CFG_HOME/webserv/<PIA web domain>/applications/peoplesoft/PORTAL.war/WEB-INF/psftdocs/ps/configuration.properties

L'emplacement du référentiel de rapports est défini lorsque les serveurs Web PIA sont configurés et est indiqué dans la ligne suivante du fichier configuration.properties : ReportRepositoryPath=/u02/app/psft/ps/report_repository

Les journaux de l'ordonnanceur de traitements sont propres à l'instance de calcul, comme indiqué dans Configuration des domaines d'application et de Process Scheduler PeopleSoft.

Voici les répertoires des journaux de l'Ordonnanceur de traitements dans cet exemple :
/u02/app/psft/ps/log_output/node1/HR92U033
/u02/app/psft/ps/log_output/node2/HR92U033

Implémenter la réplication

L'établissement du processus de réplication requiert des scripts rsync pour effectuer la réplication et un travail cron qui définit la programmation et la fréquence d'exécution des scripts.

Les scripts suivants sont disponibles pour propager fréquemment ces fichiers vers la base de données de secours :

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

Les scripts se trouvent dans le répertoire de réplication dans GitHub.

Le script rsync_psft.sh est exécuté en tant que travail cron. Il fonctionnera à la fois au site principal et au site secondaire toutes les cinq minutes. Lorsqu'il démarre, il vérifie trois choses puis s'arrête sans effectuer de travail si l'une des conditions suivantes est remplie :

  • Le script rsync est-il désactivé ? Si c'est le cas, quittez.
  • La base de données de ce site joue-t-elle le rôle principal ou de secours ? En mode veille, quittez.
  • Une instanciation antérieure de ce script est-elle toujours en cours d'exécution ? Si c'est le cas, quittez.

Les scripts de démarrage de l'application sont également codés pour exécuter le script enable_psft_rsync.sh. Il est mis en commentaire comme livré, car il échouera jusqu'à ce que la base de données de secours soit entièrement configurée.

Le script d'arrêt de l'application est codé pour appeler le script rsync_psft.sh une dernière fois après avoir arrêté l'application et les serveurs batch, puis exécuter le script disable_psft_rsync.sh. Ils sont mis en commentaire comme livrés, car ils échoueront jusqu'à ce que la base de données de secours soit entièrement configurée.

Etant donné que les journaux de travail du référentiel de rapports et de l'ordonnanceur de traitements sont implémentés en tant que systèmes de fichiers partagés, exécutez le processus de réplication de synchronisation sur un seul noeud sur chaque site. Pour configurer les scripts rsync, procédez comme suit :

  1. Configurez l'équivalence utilisateur entre deux instances de calcul hébergeant l'ordonnanceur de traitements, une à partir de chaque site, pour l'utilisateur du système d'exploitation psadm2.
    Cet exemple utilise la même paire configurée avec l'équivalence utilisateur lors de la configuration des serveurs de niveau intermédiaire du site secondaire.
  2. Placez les trois scripts dans un répertoire partagé sur Oracle Cloud Infrastructure File Storage. Modifiez les scripts de votre environnement.
  3. Attribuez les droits d'exécution des scripts à l'utilisateur psadm2.
    $ 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. Testez les scripts pour vous assurer qu'ils fonctionnent tous comme prévu.
  5. Annulez la mise en commentaire de la commande d'exécution dans les scripts de démarrage et d'arrêt de l'application.
  6. Si l'application est en cours d'exécution sur l'instance de calcul principale, exécutez le script enable_psft.sh.
    $ ./enable_psft_rsync.sh
  7. Si l'application est en cours d'exécution sur l'instance de calcul de secours, exécutez le script disable_psft.sh.
    $ ./disable_psft_rsync.sh
  8. Sous root sur chaque instance de calcul, ajoutez une entrée dans /etc/crontab qui exécutera le script rsync_psft.sh.
    Exemple :
    */5 * * * * psadm2 /u01/app/psft/pt/custom_admin_scripts/rsync_psft.sh
    Surveillez le fichier journal sur les deux sites. Chaque journal doit être écrit toutes les cinq minutes. Le fichier journal sur le site principal doit indiquer que rsync est en cours d'exécution. Le fichier journal sur le site de secours doit indiquer que rsync est désactivé.