읽기 전용 복제본 만들기

읽기 처리량과 가용성을 높이려면 기존 AlloyDB Omni 서버의 AlloyDB Omni 복제 서버를 만들 수 있습니다. 복제 서버는 기본 데이터베이스 서버의 읽기 전용 클론을 제공합니다. 기본 서버의 데이터 변경사항을 반영하도록 자체 데이터를 지속적으로 업데이트합니다.

다음 섹션에서는 복제를 위해 AlloyDB Omni 기본 서버를 구성하고, 복제 서버를 구성하고, 기본 서버에서 복제 상태를 확인하는 단계를 설명합니다.

복제용 기본 서버 구성

  1. TCP 포트 5432를 통해 복제본 서버 호스트의 인그레스 트래픽을 허용하도록 기본 서버 호스트의 네트워크 또는 방화벽 설정을 업데이트합니다.

  2. /var/alloydb/config/pg_hba.conf 파일에 다음 줄을 추가합니다.

    host all                alloydbreplica     IP_RANGE trust
    host replication        alloydbreplica     IP_RANGE trust
    host alloydbmetadata    alloydbmetadata    IP_RANGE trust
    

    IP_RANGE를 복제본 머신이 있는 서브넷의 IP 범위(CIDR 표기법)로 바꿉니다. 예를 들면 203.0.113.0/24입니다.

  3. 기본 서버를 다시 시작합니다.

    sudo alloydb database-server stop
    sudo alloydb database-server start

복제 서버 만들기 및 구성

AlloyDB Omni 복제 서버를 만들고 구성하려면 다음 단계를 완료하세요.

  1. 복제본을 호스팅할 시스템에 AlloyDB Omni를 설치합니다.

    alloydb database-server install 명령어를 실행할 때는 복제본 만들기에 관한 플래그를 포함합니다.

    sudo alloydb database-server install \
      --data-dir=DATA_DIR \
      --pg-port=PORT \
      --replica-source-ip=SOURCE_IP \
      --replica-source-port=SOURCE_PORT

    다음을 바꿉니다.

    • DATA_DIR: 이 복제본이 데이터 디렉터리에 사용하도록 할 파일 시스템 경로입니다.

    • PORT: AlloyDB Omni에서 연결을 수락할 TCP 포트입니다. 이 값을 제공하지 않으면 AlloyDB Omni에서 기본값 5432을 적용합니다.

    • SOURCE_IP: 복제할 기본 AlloyDB Omni 인스턴스의 IP 주소입니다.

    • SOURCE_PORT: 복제할 기본 AlloyDB Omni 인스턴스의 TCP 포트입니다. 이 값을 제공하지 않으면 AlloyDB Omni에서 기본값 5432을 적용합니다.

  2. 복제본이 기본 서버에 네트워크 연결이 있는지 확인합니다.

    ping SOURCE_IP
  3. 복제본을 시작합니다.

    sudo alloydb database-server start

기본 서버에서 복제 상태 확인

복제가 올바르게 구성되었는지 확인하려면 기본 서버의 호스트에서 다음 명령어를 실행합니다.

  docker exec -it pg-service psql -h localhost -U alloydbadmin -c "select * from pg_stat_replication"

출력 테이블에는 기본 데이터베이스 서버에 연결된 모든 복제본에 대해 하나의 행이 포함됩니다.

복제를 설정하면 기본 데이터베이스 서버의 행에 대한 모든 삽입, 업데이트, 삭제가 몇 초 이내에 복제본에서 읽을 수 있게 됩니다.