Criar e gerenciar réplicas de leitura no Banco de Dados do Azure para PostgreSQL - Servidor flexível a partir do portal do Azure, CLI ou API REST

APLICA-SE A: Banco de Dados do Azure para PostgreSQL - Servidor Flexível

Neste artigo, você aprenderá a criar e gerenciar réplicas de leitura no Banco de Dados do Azure para servidor flexível PostgreSQL a partir do portal do Azure, CLI e API REST. Para saber mais sobre réplicas de leitura, consulte a visão geral.

Pré-requisitos

Uma instância de servidor flexível do Banco de Dados do Azure para PostgreSQL para ser o servidor primário.

Nota

Ao implantar réplicas de leitura para cargas de trabalho primárias persistentes e pesadas de gravação, o atraso de replicação pode continuar a crescer e pode nunca alcançar o principal. Isso também pode aumentar o uso de armazenamento no primário, já que os arquivos WAL só são excluídos uma vez recebidos na réplica.

Rever as definições primárias

Antes de configurar uma réplica de leitura para o Banco de Dados do Azure para servidor flexível PostgreSQL, verifique se o servidor primário está configurado para atender aos pré-requisitos necessários. Configurações específicas no servidor primário podem afetar a capacidade de criar réplicas.

Crescimento automático do armazenamento: as configurações de crescimento automático do armazenamento no servidor primário e suas réplicas de leitura devem seguir diretrizes específicas para garantir a consistência e evitar interrupções na replicação. Consulte o crescimento automático de armazenamento para obter regras e configurações detalhadas.

SSD Premium v2: A versão atual não suporta a criação de réplicas de leitura para servidores primários usando armazenamento SSD Premium v2. Se sua carga de trabalho exigir réplicas de leitura, escolha uma opção de armazenamento diferente para o servidor primário.

  1. No portal do Azure, escolha a instância de servidor flexível do Banco de Dados do Azure para PostgreSQL que você deseja para a réplica.

  2. Na caixa de diálogo Visão geral, observe a versão do PostgreSQL (ex15.4). Além disso, observe a região na qual seu principal está implantado (por exemplo, East US).

    Captura de ecrã da revisão das definições principais.

  3. Na barra lateral do servidor, em Configurações, selecione Computação + armazenamento.

  4. Revise e observe as seguintes configurações:

    • Camada de computação, processador, tamanho (ex Standard_D4ads_v5).

    • Armazenamento

      • Tamanho de armazenamento (ex 128GB)
      • Crescimento automático
    • Elevada Disponibilidade

      • Ativado / Desativado
      • Configurações da zona de disponibilidade
    • Configurações de backup

      • Período de retenção
      • Opções de redundância
  5. Em Configurações, selecione Rede.

  6. Revise as configurações de rede.

    Captura de tela das configurações do servidor.

Criar uma réplica de leitura

Para criar uma réplica de leitura, siga estes passos:

  1. Selecione uma instância de servidor flexível existente do Banco de Dados do Azure para PostgreSQL para usar como servidor primário.

  2. Na barra lateral do servidor, em Configurações, selecione Replicação.

  3. Selecione Criar réplica.

    Captura de ecrã a mostrar a criação de uma ação de réplica.

  4. Insira o formulário Noções básicas com as seguintes informações.

    Captura de tela mostrando a inserção das informações básicas.

  5. Selecione Rever + criar para confirmar a criação da réplica ou Seguinte: Rede se pretender adicionar, eliminar ou modificar quaisquer regras de firewall.

    Captura de ecrã da ação modificar regras de firewall.

  6. Deixe os padrões restantes e selecione o botão Revisar + criar na parte inferior da página ou prossiga para os próximos formulários para adicionar tags ou alterar o método de criptografia de dados.

  7. Reveja as informações na janela de confirmação final. Quando estiver pronto, selecione Criar. Uma nova implantação é criada.

    Captura de ecrã a mostrar a revisão das informações na janela de confirmação final.

  8. Durante a implantação, você verá o principal no Updating estado.

    Captura de tela do principal entrando no status de atualização. Depois que a réplica de leitura é criada, ela pode ser visualizada na janela Replicação .

    Captura de ecrã da visualização da nova réplica na janela de replicação.

  • Defina o nome do servidor de réplica.

    Gorjeta

    É uma prática recomendada do Cloud Adoption Framework (CAF) usar uma convenção de nomenclatura de recursos que permitirá determinar facilmente a qual instância você está se conectando ou gerenciando e onde ela reside.

  • Selecione um local diferente do principal, mas observe que você pode selecionar a mesma região.

    Gorjeta

    Para saber mais sobre em quais regiões você pode criar uma réplica, visite o artigo ler conceitos de réplica.

  • Defina a computação e o armazenamento de acordo com o que você gravou do seu primário. Se a computação exibida não corresponder, selecione Configurar servidor e selecione o apropriado.

    Nota

    Se você selecionar um tamanho de computação menor que o principal, a implantação falhará. Lembre-se também de que o tamanho da computação pode não estar disponível em uma região diferente.

    Captura de tela da escolha do tamanho do computador.

Importante

Analise a seção de considerações da visão geral da réplica de leitura.

Para evitar problemas durante a promoção de réplicas, altere constantemente os seguintes parâmetros de servidor nas réplicas primeiro, antes de aplicá-los na principal: max_connections, max_prepared_transactions, max_locks_per_transaction, max_wal_senders, max_worker_processes.

Criar pontos de extremidade virtuais

Nota

Todas as operações que envolvem pontos de extremidade virtuais - como adicionar, editar ou remover - são executadas no contexto do servidor primário.

  1. No portal do Azure, selecione o servidor primário.

  2. Na barra lateral do servidor, em Configurações, selecione Replicação.

  3. Selecione Criar ponto de extremidade.

  4. Na caixa de diálogo, digite um nome significativo para seu ponto de extremidade. Observe o ponto de extremidade DNS que está sendo gerado.

    Captura de tela da criação de um novo ponto de extremidade virtual com nome personalizado.

  5. Selecione Criar.

    Nota

    Se você não criar um ponto de extremidade virtual, receberá um erro na tentativa de réplica de promoção.

    Captura de tela do erro de promoção ao faltar o ponto de extremidade virtual.

Listar pontos de extremidade virtuais

Para listar pontos de extremidade virtuais, use as seguintes etapas:

  1. No portal do Azure, selecione o servidor primário .

  2. Na barra lateral do servidor, em Configurações, selecione Replicação.

  3. Na parte superior da página, você vê os pontos de extremidade do leitor e do gravador exibidos, juntamente com os nomes dos servidores para os quais eles estão apontando.

    Captura de ecrã da lista de pontos finais virtuais.

Modificar o aplicativo para apontar para o ponto de extremidade virtual

Modifique todos os aplicativos que estão usando sua instância de servidor flexível do Banco de Dados do Azure para PostgreSQL para usar os novos pontos de extremidade virtuais (por exemplo, corp-pg-001.writer.postgres.database.azure.com e corp-pg-001.reader.postgres.database.azure.com).

Promover réplicas

Com todos os componentes necessários instalados, você está pronto para executar uma réplica promocional para a operação principal.

Para promover a réplica a partir do portal do Azure, siga estes passos:

  1. No portal do Azure, selecione sua instância de servidor flexível do Banco de Dados do Azure principal para PostgreSQL.

  2. No menu do servidor, em Configurações, selecione Replicação.

  3. Em Servidores, selecione o ícone Promover para a réplica.

    Captura de ecrã a mostrar a seleção para promover uma réplica.

  4. Na caixa de diálogo, verifique se a ação é Promover para o servidor primário.

  5. Para Sincronização de dados, verifique se Planejado - sincronizar dados antes de promover está selecionado.

    Captura de tela de como selecionar promover para uma réplica.

  6. Selecione Promover para iniciar o processo. Uma vez concluída, as funções se invertem: a réplica se torna a principal e a primária assume o papel da réplica.

Nota

A réplica que você está promovendo deve ter o ponto de extremidade virtual do leitor atribuído, ou você receberá um erro na promoção.

Aplicações de teste

Para executar algumas operações, reinicie os aplicativos e, em seguida, tente essas operações. Seus aplicativos devem funcionar perfeitamente sem modificar a cadeia de conexão de ponto de extremidade virtual ou entradas DNS. Deixe seus aplicativos em execução desta vez.

Failback para o servidor e região originais

Repita as mesmas operações para promover o servidor original para o principal.

  1. No portal do Azure, selecione a réplica.

  2. Na barra lateral do servidor, em Configurações, selecione Replicação

  3. Em Servidores, selecione o ícone Promover para a réplica.

  4. Na caixa de diálogo, verifique se a ação é Promover para o servidor primário.

  5. Para Sincronização de dados, verifique se Planejado - sincronizar dados antes de promover está selecionado.

  6. Selecione Promover, o processo começa. Uma vez concluída, as funções se invertem: a réplica se torna a principal e a primária assume o papel da réplica.

Aplicações de teste

Novamente, mude para um dos aplicativos de consumo. Aguarde até que o status principal e a réplica sejam alterados e, em Updating seguida, tente executar algumas operações. Durante a promoção de réplica, seu aplicativo pode encontrar problemas temporários de conectividade com o ponto de extremidade:

Captura de tela de possíveis erros de conectividade de promoção.

Adicionar réplica de leitura secundária

Crie uma réplica de leitura secundária em uma região separada para modificar o ponto de extremidade virtual do leitor e permitir a criação de um servidor independente a partir da primeira réplica.

  1. No portal do Azure, escolha a instância de servidor flexível do Banco de Dados do Azure principal para PostgreSQL.

  2. Na barra lateral do servidor, em Configurações, selecione Replicação.

  3. Selecione Criar réplica.

  4. Insira o formulário Noções básicas com informações em uma terceira região (ex westus e corp-pg-westus-001)

  5. Selecione Rever + criar para confirmar a criação da réplica ou Seguinte: Rede se pretender adicionar, eliminar ou modificar quaisquer regras de firewall.

  6. Verifique as definições da firewall. Observe como as configurações primárias são copiadas automaticamente.

  7. Deixe os padrões restantes e selecione o botão Revisar + criar na parte inferior da página ou prossiga para os seguintes formulários para configurar a segurança ou adicionar tags.

  8. Reveja as informações na janela de confirmação final. Quando estiver pronto, selecione Criar. Uma nova implantação é criada.

  9. Durante a implantação, você verá o principal no Updating estado.

    Captura de tela do principal entrando no status de atualização.

Modificar ponto de extremidade virtual

  1. No portal do Azure, escolha a instância de servidor flexível do Banco de Dados do Azure principal para PostgreSQL.

  2. Na barra lateral do servidor, em Configurações, selecione Replicação.

  3. Selecione as reticências e, em seguida, selecione Editar.

    Captura de tela da edição do ponto de extremidade virtual.

  4. Na caixa de diálogo, selecione a nova réplica secundária.

    Captura de tela mostrando a seleção da réplica secundária.

  5. Selecione Guardar. O ponto de extremidade do leitor agora está apontado para a réplica secundária e a operação de promoção agora está vinculada a essa réplica.

Promover réplica para servidor independente

Em vez de alternar para uma réplica, também é possível interromper a replicação de uma réplica para que ela se torne seu servidor autônomo.

  1. No portal do Azure, escolha o Banco de Dados do Azure para servidor primário flexível PostgreSQL.

  2. Na barra lateral do servidor, no menu do servidor, em Configurações, selecione Replicação.

  3. Em Servidores, selecione o ícone Promover para a réplica que você deseja promover para um servidor independente.

    Captura de tela de como selecionar para promover uma réplica 2.

  4. Na caixa de diálogo, verifique se a ação é Promover para servidor independente e remover da replicação. Isso não afetará o servidor primário.

  5. Para Sincronização de dados, verifique se Planejado - sincronizar dados antes de promover está selecionado.

    Captura de tela da promoção da réplica para servidor independente.

  6. Selecione Promover, o processo começa. Uma vez concluído, o servidor não é mais uma réplica do primário.

Nota

Depois que uma réplica é promovida para um servidor independente, ela não pode ser adicionada novamente ao conjunto de replicação.

Excluir ponto de extremidade virtual

  1. No portal do Azure, selecione o servidor primário .

  2. Na barra lateral do servidor, em Configurações, selecione Replicação.

  3. Na parte superior da página, localize a Virtual endpoints seção. Navegue até os três pontos (opções de menu) ao lado do nome do ponto final, expanda-o e escolha Delete.

  4. Uma caixa de diálogo de confirmação de exclusão é exibida. Ele avisa: "Esta ação exclui o ponto de extremidade virtualendpointNamevirtual. Qualquer cliente conectado usando esses domínios pode perder o acesso." Reconheça as implicações e confirme clicando em Excluir.

Eliminar réplicas

Você pode excluir uma réplica de leitura semelhante a como você exclui um Banco de Dados do Azure autônomo para instância de servidor flexível PostgreSQL.

  1. No portal do Azure, abra a página Visão geral da réplica de leitura. Selecione Eliminar.

    Captura de tela da página Visão geral da réplica, selecione para excluir a réplica.

Você também pode excluir a réplica de leitura da janela Replicação seguindo estas etapas:

  1. No portal do Azure, selecione sua instância de servidor flexível do Banco de Dados do Azure principal para PostgreSQL.

  2. No menu do servidor, em Configurações, selecione Replicação.

  3. Selecione a réplica de leitura a ser excluída e, em seguida, selecione as reticências. Selecione Eliminar.

    Captura de tela da seleção da réplica a ser excluída.

  4. Reconhecer operação Excluir .

Excluir um servidor primário

Você só pode excluir o servidor primário depois de excluir todas as réplicas de leitura. Para excluir réplicas, siga as instruções na seção Excluir uma réplica e prossiga com as etapas fornecidas.

Para excluir um servidor do portal do Azure, siga estas etapas:

  1. No portal do Azure, selecione sua instância de servidor flexível do Banco de Dados do Azure principal para PostgreSQL.

  2. Abra a página Visão geral do servidor e selecione Excluir.

    Captura de tela da página Visão geral do servidor, selecione para excluir o servidor primário.

  3. Digite o nome do servidor primário a ser excluído. Selecione Excluir para confirmar a exclusão do servidor primário.

    Captura de tela da confirmação para excluir o servidor primário.

Monitorar uma réplica

Duas métricas estão disponíveis para monitorar réplicas de leitura.

Atraso máximo de replicação física

Disponível apenas no primário.

A métrica Max Physical Replication Lag mostra o atraso de bytes entre o servidor primário e a réplica com maior atraso.

  1. No portal do Azure, selecione o servidor primário.

  2. Selecione Métricas. Na janela Métricas, selecione Atraso máximo de replicação física.

    Captura de tela da página Métricas mostrando a métrica Max Physical Replication Lag.

  3. Para sua Agregação, selecione Máximo.

Ler métrica de atraso da réplica

A métrica Read Replica Lag mostra o tempo desde a última transação repetida em uma réplica. Se nenhuma transação ocorrer no seu principal, a métrica refletirá esse intervalo de tempo. Por exemplo, se nenhuma transação ocorrer no servidor primário e a última transação tiver sido repetida há 5 segundos, o atraso da réplica de leitura mostrará um atraso de 5 segundos.

  1. No portal do Azure, selecione réplica de leitura.

  2. Selecione Métricas. Na janela Métricas, selecione Atraso da réplica de leitura.

    Captura de tela da página Métricas mostrando a métrica de atraso da réplica de leitura.

  3. Para sua Agregação, selecione Máximo.