PostgreSQL 데이터베이스 장애 조치 처리

Private Cloud용 에지 v. 4.16.05

PostgreSQL 데이터베이스 장애 조치 중에 다음을 수행합니다.

  1. 현재 마스터가 아직 실행 중이면 apigee-postgresql을 중지합니다.
    > /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
  2. 대기 노드로 이동하고 다음 명령어를 호출하여 마스터로 지정합니다.
    > /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-postgresql promotion-standby-to-master IPorDNSofOldMaster

향후에 이전 마스터가 복원될 경우 이를 대기 노드로 만듭니다.

  1. 현재 마스터에서 설정할 구성 파일을 수정합니다.
    PG_MASTER=IPorDNSofNewMaster
    PG_STANDBY=IPorDNSofOldMaster
  2. 새 마스터에서 복제를 사용 설정합니다.
    > /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFIle
  3. 이전 마스터에서 구성 파일을 수정하여 다음과 같이 설정합니다.
    PG_MASTER=IPorDNSofNewMaster
    PG_STANDBY=IPorDNSofOldMaster
  4. 이전 마스터에서 apigee-postgresql을 중지합니다.
    > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql 중지
  5. 이전 마스터에서 이전 Postgres 데이터를 삭제합니다.
    > rm -rf /<inst_root>/apigee/data/apigee-postgresql/

    참고: 필요한 경우 이 데이터를 삭제하기 전에 백업하세요.
  6. 이전 마스터를 대기로 구성합니다.
    > /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
  7. 복제가 완료되면 두 서버에서 다음 스크립트를 실행하여 복제 상태를 확인합니다. 시스템이 성공적인 복제를 위해 두 서버에 동일한 결과를 표시해야 합니다.
    1. 마스터 노드에서 다음을 실행합니다.
      > /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master

      마스터라고 되어 있는지 확인합니다.
    2. 대기 노드:
      > /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby

      대기 상태임을 검증합니다.