configuração aws rds multi-az

Aug 16 2020

No cluster aws rds postgresql (não aurora), há uma instância de escritor e uma instância de leitor. Algumas perguntas -

  1. Na saída do comando describe-db-cluster, ele mostra "MultiAZ": true, mas describe-db-instances das instâncias deste cluster diz "MultiAZ": false.
  • (a) As instâncias do cluster estão configuradas para ser multi-az?
  • (b) Sempre que a instância do gravador falha, vejo que o leitor se torna gravador, um pouco confuso aqui porque pensei que a diferença entre multi-az e configuração de réplica de leitura é que no caso de failover automático de multi-az e no caso de necessidade de failover de réplica de leitura para ser acionado manualmente. Como é que a réplica de leitura está se tornando primária em caso de failover?
  • (c) Por que multi-az mostra-se verdadeiro no nível do cluster. Está mostrando multi-az porque o leitor e o escritor estão em diferentes az's?
  1. Como posso saber qual classe de armazenamento (iops provisionados, gp2) está sendo usada pelas instâncias do cluster? Não consigo descobrir a partir da saída do comando describe-db-instances ou describe-db-cluster.

Respostas

Marcin Aug 16 2020 at 16:16

Acho que há alguma confusão aqui sobre o que é cluster, aurora, multi-az e assim por diante.

"Cluster" só se aplica a Aurora. Portanto, não existe "cluster postgresql (não aurora)" e o comando describe-db-clusternão funcionará em bancos de dados não-aurora. Se você tentar executá-lo em uma instância db não aurora, você obterá:

DBCluster <name> not found

No Aurora, MultiAZé fornecido por meio de réplicas Aurora (ou seja, leitores), enquanto em bancos de dados RDS, MultiAZé fornecido por meio de uma instância db Stand-by , que é diferente de réplicas de leitura.

Como é que a réplica de leitura está se tornando primária em caso de failover?

Porque isso é exatamente o que acontece quando você executa o Aurora. No RDS, o Stand-by torna-se o novo primário, não a réplica de leitura.

Por que multi-az mostra ser verdadeiro no nível do cluster. Está mostrando multi-az porque o leitor e o escritor estão em diferentes az's?

Sim. Na aurora, o Multi-AZ é ativado por meio de leitores em AZs diferentes do primário.

Como posso saber qual classe de armazenamento (iops provisionados, gp2) está sendo usada pelas instâncias do cluster?

Em Aurora, não existe a noção de classes de armazenamento diferentes. A AWS usa uma solução de armazenamento de desenvolvimento interno e diferente para isso.