Usa o RDS Proxy com bancos de dados globais do Aurora - Amazon Aurora

Usa o RDS Proxy com bancos de dados globais do Aurora

Um banco de dados global do Aurora é um banco de dados único que abrange várias Regiões da AWS, permitindo leituras globais de baixa latência e recuperação de desastres de qualquer interrupção de uma região inteira. Ele fornece tolerância a falhas incorporada para sua implantação porque a instância de banco de dados não depende de uma única Região da AWS, mas de várias regiões e zonas de disponibilidade diferentes. Para obter mais informações, consulte Usar bancos de dados globais do Amazon Aurora.

É possível usar o RDS Proxy com qualquer cluster de banco de dados em um banco de dados global do Aurora. Antes de começar a usar esses recursos juntos, leia as informações a seguir.

Importante

Se o cluster de banco de dados fizer parte de um banco de dados global com o encaminhamento de gravação ativado, reduza o valor MaxConnectionsPercent de seu proxy pela cota alocada para o encaminhamento de gravação. A cota de encaminhamento de gravação é definida no parâmetro do cluster de banco de dados aurora_fwd_writer_max_connections_pct. Para obter informações sobre o encaminhamento de gravação, consulte Como usar o encaminhamento de gravação em um banco de dados global Amazon Aurora.

Limitações do RDS Proxy com bancos de dados globais

Quando o cluster de banco de dados do Aurora tem o encaminhamento de gravação ativado, o RDS Proxy não é compatível com o valor SESSION da variável aurora_replica_read_consistency. Definir esse valor pode causar um comportamento inesperado.

Como os endpoints do RDS Proxy funcionam com bancos de dados globais

Quando você entende como os endpoints do RDS Proxy funcionam com bancos de dados globais, você pode gerenciar melhor suas aplicações que usam bancos de dados do Aurora com esses dois recursos.

Para um proxy com o cluster primário de um banco de dados global como destino registrado, os endpoints do proxy funcionam da mesma forma que em qualquer cluster de banco de dados do Aurora. Os endpoints de leitura/gravação do proxy enviam todas as solicitações à instância do gravador do cluster. Os endpoints somente leitura do proxy enviam todas as solicitações às instâncias de leitura. Se um leitor ficar indisponível enquanto a conexão estiver aberta, o RDS Proxy redirecionará as consultas subsequentes na conexão para outra instância do leitor. Para um proxy com um cluster secundário como destino registrado, as solicitações enviadas aos endpoints somente leitura do proxy também são enviadas para as instâncias de leitor. Como o cluster não tem instâncias de gravador, as solicitações enviadas aos endpoints de leitura/gravação falham com o erro "The target group doesn't have any associated read/write instances”.

Uma operação de failover global envolve uma troca de função entre o cluster de banco de dados primário e um dos secundários. Quando o cluster secundário selecionado se torna o novo primário, uma de suas instâncias de leitor é promovida a um gravador. Essa instância de banco de dados agora é a nova instância de gravador para o cluster global. Redirecione as operações de gravação de sua aplicação para o endpoint de leitura/gravação apropriado do proxy associado ao novo cluster primário. Esse endpoint do proxy pode ser o endpoint padrão ou um endpoint de leitura/gravação personalizado.

O RDS Proxy coloca na fila todas as solicitações por meio de endpoints de leitura/gravação e as envia à instância de gravador do novo cluster primário assim que ele estiver disponível. Ele faz isso independentemente de a operação de failover ter sido concluída. Durante o failover, o endpoint padrão do proxy para o antigo cluster primário ainda aceita operações de gravação. No entanto, assim que esse cluster se torna um cluster secundário, todas as operações de gravação falham. Para saber como e quando executar tarefas específicas de failover global, consulte os seguintes tópicos: