Criar uma réplica somente leitura

Para aumentar a capacidade de leitura e a disponibilidade, crie um servidor de réplica do AlloyDB Omni para um servidor AlloyDB Omni existente. Um servidor de réplica fornece um clone de leitura somente do servidor de banco de dados principal. Ele atualiza continuamente os próprios dados para refletir as mudanças nos dados do servidor principal.

As seções a seguir fornecem etapas para configurar o servidor principal do AlloyDB Omni para replicação, configurar o servidor de réplica e verificar o status da replicação no servidor principal.

Configurar o servidor principal para replicação

  1. Atualize as configurações de rede ou firewall do host do servidor principal para permitir o tráfego de entrada do host do servidor de réplica pela porta TCP 5432.

  2. Adicione as seguintes linhas ao arquivo /var/alloydb/config/pg_hba.conf:

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

    Substitua IP_RANGE pelo intervalo de IP, na notação CIDR, da sub-rede em que a máquina de réplica está localizada. Por exemplo, 203.0.113.0/24.

  3. Reinicie o servidor principal:

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

Criar e configurar o servidor de réplica

Para criar e configurar um servidor de réplica do AlloyDB Omni, siga estas etapas:

  1. Instale o AlloyDB Omni no sistema em que você quer hospedar a réplica.

    Ao executar o comando alloydb database-server install, inclua as flags específicas para criar uma réplica:

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

    Substitua:

    • DATA_DIR: o caminho do sistema de arquivos que você quer que essa réplica use para o diretório de dados.

    • PORT: a porta TCP em que você quer que o AlloyDB Omni aceite conexões. Se você não informar esse valor, o AlloyDB Omni vai aplicar um valor padrão de 5432.

    • SOURCE_IP: o endereço IP da instância principal do AlloyDB Omni a ser replicada.

    • SOURCE_PORT: a porta TCP da instância principal do AlloyDB Omni a ser replicada. Se você não informar esse valor, o AlloyDB Omni vai aplicar um valor padrão de 5432.

  2. Verifique se a réplica tem conectividade de rede com o servidor principal:

    ping SOURCE_IP
  3. Inicie a réplica:

    sudo alloydb database-server start

Verificar o status da replicação no servidor principal

Para verificar se a replicação está configurada corretamente, execute o seguinte comando no host do servidor principal:

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

A tabela de saída contém uma linha para cada réplica conectada ao servidor de banco de dados principal.

Depois de configurar a replicação, todas as inserções, atualizações e exclusões em linhas no servidor de banco de dados principal vão ficar legíveis na réplica em segundos.