보고서 저장소 및 Process Scheduler 작업 로그 복제

보고서 저장소 및 프로세스 스케줄러 로그의 콘텐츠는 일반적인 PeopleSoft 애플리케이션 작업 중 생성된 파일 시스템 아티팩트입니다. 보고서 저장소 내용 및 로그는 데이터베이스에서 수행된 작업에 해당하며 가능한 한 데이터베이스와 동기화되어 있어야 합니다. Oracle Data Guard가 데이터베이스를 복제하는 것처럼 이러한 파일 시스템 아티팩트를 DR 사이트에 복제해야 합니다.

PeopleSoft 보고서 저장소는 일반적으로 모든 프로세스 스케줄러 및 PIA 웹 계층 서버가 액세스할 수 있는 공유 파일 시스템 디렉토리입니다. 이 예에서는 OCI File Storage/u02/app/psft/ps/report_repository 디렉토리에 있습니다.

보고서 저장소는 PeopleSoft PIA configuration.properties 파일에 정의되어 있습니다.
PS_CFG_HOME/webserv/<PIA web domain>/applications/peoplesoft/PORTAL.war/WEB-INF/psftdocs/ps/configuration.properties

보고서 저장소 위치는 PIA 웹 서버가 구성될 때 설정되며 configuration.properties 파일의 다음 행에 지정됩니다. ReportRepositoryPath=/u02/app/psft/ps/report_repository

프로세스 스케줄러 로그는 "Configure the PeopleSoft Application and Process Scheduler Domains"에 설명된 대로 컴퓨트 인스턴스와 관련이 있습니다.

다음은 이 예제의 프로세스 스케줄러 로그에 대한 디렉토리입니다.
/u02/app/psft/ps/log_output/node1/HR92U033
/u02/app/psft/ps/log_output/node2/HR92U033

복제 구현

복제 프로세스를 설정하려면 복제를 수행하기 위한 rsync 스크립트와 스크립트가 실행되는 일정 및 빈도를 정의하는 cron 작업이 필요합니다.

다음 스크립트는 이러한 파일을 대기 데이터베이스로 자주 푸시하는 데 사용할 수 있습니다.

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

스크립트는 GitHub의 복제 디렉토리에 있습니다.

rsync_psft.sh 스크립트는 cron 작업으로 실행됩니다. 기본 사이트와 보조 사이트 모두에서 5분마다 한 번씩 실행됩니다. 시작하면 다음 중 하나에 해당하는 경우 세 가지 사항을 확인한 다음 작업을 수행하지 않고 종료됩니다.

  • rsync 스크립트가 사용 안함으로 설정되었습니까? 그러한 경우 종료합니다.
  • 이 사이트의 데이터베이스가 기본 또는 대기 롤입니까? standby site인 경우 종료합니다.
  • 이 스크립트의 이전 Instantiation이 아직 실행되고 있습니까? 그러한 경우 종료합니다.

응용 프로그램 시작 스크립트도 enable_psft_rsync.sh 스크립트를 실행하도록 코딩됩니다. standby가 완전히 구성될 때까지 실패하므로 전달된 것으로 주석 처리됩니다.

응용 프로그램 종료 스크립트는 응용 프로그램 및 일괄 처리 서버를 종료한 후 마지막으로 rsync_psft.sh 스크립트를 호출한 다음 disable_psft_rsync.sh 스크립트를 실행하도록 코딩됩니다. 이러한 변수는 standby가 완전히 구성될 때까지 실패하므로 전달된 것으로 주석 처리됩니다.

보고서 저장소 및 프로세스 스케줄러 작업 로그는 공유 파일 시스템으로 구현되므로 각 사이트의 한 노드에서만 rsync 복제 프로세스를 실행합니다. 다음 단계를 수행하여 rsync 스크립트를 구성합니다.

  1. psadm2 OS 유저에 대해 각 사이트에서 하나씩 프로세스 스케줄러를 호스팅하는 컴퓨팅 인스턴스 쌍 사이에 유저 등가를 구성합니다.
    이 예에서는 보조 사이트 중간 계층 서버를 설정할 때 사용자 등가로 구성된 동일한 쌍을 사용합니다.
  2. 이 세 스크립트를 모두 Oracle Cloud Infrastructure File Storage의 공유 디렉토리에 배치합니다. 사용자 환경에 대한 스크립트를 수정합니다.
  3. 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. 스크립트를 테스트하여 모두 예상대로 작동하는지 확인합니다.
  5. 응용 프로그램 시작 및 종료 스크립트에서 run 명령의 주석 처리를 해제합니다.
  6. 애플리케이션이 기본 컴퓨트 인스턴스에서 실행 중인 경우 enable_psft.sh 스크립트를 실행합니다.
    $ ./enable_psft_rsync.sh
  7. 애플리케이션이 실행 중인 경우 대기 컴퓨트 인스턴스에서 disable_psft.sh 스크립트를 실행합니다.
    $ ./disable_psft_rsync.sh
  8. 각 컴퓨트 인스턴스에서 root으로 rsync_psft.sh 스크립트를 실행할 항목을 /etc/crontab에 추가합니다.
    예를 들어 다음과 같습니다.
    */5 * * * * psadm2 /u01/app/psft/pt/custom_admin_scripts/rsync_psft.sh
    두 사이트 모두에서 로그 파일을 모니터합니다. 각 로그는 5분마다 기록되어야 합니다. 기본 사이트의 로그 파일에 rsync가 실행 중인 것으로 표시되어야 합니다. standby site의 로그 파일에서 rsync가 비활성화되어 있음을 표시합니다.