장애 조치 설정
- 이 항목에서 설명하는 절차는 PostgreSQL DBA가 수행해야 합니다.
- Data Movement gateway 2024.11.14 이상 필요
이 항목에서는 장애 조치 시나리오를 지원하도록 PostgreSQL 및 Data Movement gateway를 설정하는 방법을 설명합니다. 수행해야 하는 절차는 특정 PostgreSQL 장애 조치 설정에 따라 다릅니다.
장애 조치 후에도 기본 및 보조 데이터베이스의 데이터베이스 개체 ID가 동일하게 유지되는 경우(일반적으로 이와 같은 경우), 보조 데이터베이스 서버의 IP 주소로 Data Movement gateway 컴퓨터의 호스트 파일만 업데이트하면 됩니다. 그러나 장애 조치 후에 보조 데이터베이스의 데이터베이스 개체 ID가 기본 데이터베이스와 동일하지 않으면 추가 구성이 필요합니다. 개체 ID가 변경될지 미리 알 수 없는 경우가 많지만, 알고 있다면 아래에 설명된 기본 및 보조 데이터베이스의 개체 ID가 다른 경우 장애 조치 설정 절차를 수행합니다. 개체 ID가 변경될지 여부를 모르는 경우, 장애 조치 후에도 개체 ID는 일반적으로 동일하게 유지되므로 기본 및 보조 데이터베이스의 개체 ID가 동일한 경우 장애 조치 설정에 설명된 간단한 절차를 수행하는 것이 좋습니다.
더 간단한 설정을 수행했고 장애 조치 중에 Data Movement gateway가 복구되지 않으면 기본 및 보조 데이터베이스의 개체 ID가 다른 경우 장애 조치 설정 절차를 수행해야 합니다.
1차 및 2차 데이터베이스의 개체 ID가 동일한 경우 장애 조치 설정
장애 조치가 발생하면 데이터 작업에서 복구 가능한 오류가 발생하고 기본 데이터베이스 서버의 IP 주소에 다시 연결을 시도합니다. 그러나 2차 데이터베이스 서버는 (거의 항상) 다른 IP 주소를 가지므로 일반적으로 성공하지 못합니다.
IP 주소 전환이 DNS 장애 조치 서비스에서 처리되지 않는 경우 Data Movement gateway 컴퓨터의 호스트 파일에 새 IP 주소를 지정해야 합니다. 호스트 파일의 경로는 /etc/hosts입니다. 호스트 파일이 업데이트되면 데이터 작업이 자동으로 재개됩니다.
1차 및 2차 데이터베이스의 개체 ID가 다른 경우 장애 조치 설정
표준 작업에서 데이터 작업은 PostgreSQL 소스에서 데이터를 이동할 때 자동으로 슬롯을 만듭니다. 슬롯 이름에는 데이터베이스의 개체 ID가 포함됩니다. 드물지만 기본 데이터베이스와 보조 데이터베이스의 개체 ID가 다른 경우가 있습니다. 이러한 경우, 데이터 작업은 보조 데이터베이스에서 기본 데이터베이스에 대해 만든 슬롯을 찾을 수 없으므로 장애 조치 중에 실패합니다. 이 경우 다음과 같은 오류가 발생합니다.
[SOURCE_CAPTURE ]E: Can't resume task after replication slot was dropped. [1020101] (postgres_endpoint_capture.c:445)
이러한 오류가 발생하면 다음을 수행합니다.
-
커넥터 설정 내부 속성 섹션에서 내부 속성 slotName을 추가하고 슬롯 이름 값을 설정합니다.
지정된 slotName은 이미 기본 PostgreSQL Server에 존재해야 합니다. 새 슬롯을 만들거나 기존 슬롯을 사용할 수 있습니다.
새 슬롯을 만들고 LSN을 검색하려면 다음 쿼리를 실행합니다.
SELECT lsn FROM pg_create_logical_replication_slot ('user_provided_slot_name', 'test_decoding');
사용할 수 있는 슬롯과 해당 LSN 목록을 보려면 다음 쿼리를 실행합니다.
SELECT slot_name, restart_lsn FROM pg_replication_slots WHERE slot_type = 'logical';
-
고급 실행 옵션 대화 상자의 소스 변경 위치 필드에 지정된 slotName에 대한 LSN을 입력한 다음 데이터 작업을 준비하고 시작합니다.
장애 조치가 발생하면 보조 서버가 거의 즉시 역할을 넘겨받아 기본 서버가 됩니다. 장애 조치는 pg_failover_slots 확장을 통해 처리되어야 합니다.
-
장애 조치가 발생하면 데이터 작업에서 복구 가능한 오류가 발생하고 기본 데이터베이스 서버의 IP 주소에 다시 연결을 시도합니다. 그러나 이 방법은 보조 데이터베이스 서버가 (거의 항상) 다른 IP 주소를 가지므로 일반적으로 성공하지 못합니다. IP 주소 전환이 DNS 장애 조치 서비스에서 처리되지 않는 경우 Data Movement gateway 컴퓨터의 호스트 파일에 새 IP 주소를 지정해야 합니다. 호스트 파일의 경로는 /etc/hosts입니다. 호스트 파일이 업데이트되면 데이터 작업이 자동으로 재개됩니다.