Conexões de endpoints do Amazon Aurora - Amazon Aurora

Conexões de endpoints do Amazon Aurora

O Amazon Aurora normalmente envolve um cluster de instâncias de banco de dados, em vez de uma única instância. Cada conexão é processada por uma instância de banco de dados específica. Quando você se conecta a um cluster do Aurora, o nome do host e a porta especificados apontam para um processador intermediário chamado endpoint. O Aurora usa o mecanismo de endpoint para abstrair essas conexões. Por isso, você não precisa codificar todos os nomes de host ou escrever a própria lógica para balancear e reorganizar conexões quando algumas instâncias de banco de dados não estão disponíveis.

Em determinadas tarefas do Aurora, as instâncias ou os grupos diferentes de instâncias realizam funções diferentes. Por exemplo, a instância primária processa todas as instruções Data Definition Language (DDL) e Data Manipulation Language (DML). Até 15 réplicas do Aurora processam tráfego de consulta somente leitura.

Tipos de endpoints do Aurora

Usando endpoints, mapeie todas as conexões para a instância apropriada ou o grupo de instâncias baseado no caso de uso. Por exemplo, para realizar instruções DDL, conecte-se à instância que seja a primária. Para realizar consultas, conecte-se ao endpoint do leitor. O Aurora realizará automaticamente o balanceamento de conexão entre todas as respectivas réplicas. Em clusters com instâncias de banco de dados de capacidades ou configurações diferentes, conecte-se a endpoints personalizados associados a subconjuntos diferentes de instâncias de banco de dados. Para diagnóstico ou ajuste, conecte-se a um endpoint de instância específico para examinar detalhes sobre uma instância de banco de dados específica.

Um endpoint é representado como um URL específico do Aurora que contém um endereço de host e uma porta. Os tipos a seguir de endpoints estão disponíveis em um cluster de banco de dados do Aurora.

Endpoint do cluster

Conecte-se à instância primária do cluster para desenvolver e testar aplicações e realizar determinadas transformações, como declarações INSERT e operações de DDL, DML e ETL. Encontre a localização do endpoint do cluster usando o AWS Management Console, a AWS CLI ou a API do Amazon RDS, conforme descrito em Visualizar os endpoints de um cluster do Aurora.

Para ter mais informações sobre endpoints do cluster, consulte Endpoints de cluster para Amazon Aurora.

Endpoint de leitor

Realize consultas. O Aurora executa automaticamente o balanceamento de conexão entre todas as réplicas do Aurora. Encontre a localização do endpoint do leitor usando o AWS Management Console, a AWS CLI ou a API do Amazon RDS, conforme descrito em Visualizar os endpoints de um cluster do Aurora.

Para ter mais informações sobre os endpoints do leitor, consulte Endpoints de leitor para Amazon Aurora.

Endpoint da instância

Examine os detalhes sobre uma instância de banco de dados específica para diagnóstico ou ajuste. É possível encontrar a localização do endpoint da instância para cada uma de suas instâncias somente no AWS Management Console, na página de detalhes da instância.

Para ter mais informações sobre os endpoints de instâncias, consulte Endpoints de instância para Amazon Aurora.

Endpoint personalizado

Conecte-se a diferentes subconjuntos de instâncias de banco de dados no cluster de banco de dados. Isso é útil quando você tem diferentes recursos e configurações de instância no cluster de banco de dados. Encontre as localizações de endpoints personalizados usando o AWS Management Console, a AWS CLI ou a API do Amazon RDS, conforme descrito em Visualizar os endpoints de um cluster do Aurora.

Para ter mais informações sobre os endpoints personalizados, consulte Endpoints personalizados para o Amazon Aurora.

Visualizar os endpoints de um cluster do Aurora

Embora você só possa encontrar a localização do endpoint da instância na página de detalhes da instância no AWS Management Console, é possível usar o console, a AWS CLI ou a API do Amazon RDS para encontrar a localização do cluster, do leitor e dos endpoints personalizados.

Console

No AWS Management Console, encontre o endpoint do cluster, o endpoint do leitor e todos os endpoints personalizados na página de detalhes da instância do cluster. Você vê o endpoint de instância na página de detalhes de cada instância. Ao se conectar, acrescente o número da porta associada, seguido de dois-pontos, ao nome do endpoint mostrado na página de detalhes.

AWS CLI

Com a AWS CLI, você encontra o endpoint do gravador e do leitor e qualquer outro endpoint personalizado na saída do comando describe-db-clusters. Por exemplo, o comando a seguir mostra os atributos de endpoint para todos os clusters na região atual da AWS.

aws rds describe-db-clusters --query '*[].{Endpoint:Endpoint,ReaderEndpoint:ReaderEndpoint,CustomEndpoints:CustomEndpoints}'
Amazon RDS API

Com a API do Amazon RDS, você recupera os endpoints chamando a operação DescribeDBClusterEndpoints.

Como os endpoints do Aurora funcionam com alta disponibilidade

Para clusters em que a alta disponibilidade é importante, use o endpoint do cluster para conexões de leitura/gravação ou de uso geral e o endpoint do leitor para conexões somente leitura. Os endpoints de leitor e de gravador gerenciam o failover da instância de banco de dados melhor do que os endpoints de instância. Ao contrário dos endpoints de instância, os endpoints de leitor e de gravador alteram automaticamente a qual instância de banco de dados eles se conectam caso uma instância de banco de dados no cluster fique indisponível. Para ter mais informações sobre endpoints do cluster e do leitor, consulte Endpoints de cluster para Amazon Aurora e Endpoints de leitor para Amazon Aurora.

Se a instância de banco de dados primária de um cluster de banco de dados falhar, o Aurora fará failover automático para uma nova instância de banco de dados primária. Ela faz isso promovendo uma réplica do Aurora existente para uma nova instância de banco de dados primária ou criando uma nova instância de banco de dados primária. Se ocorrer failover, você poderá usar o endpoint do cluster para se reconectar à instância de banco de dados primária recém-promovida ou criada ou usar o endpoint do leitor para se reconectar a uma das réplicas do Aurora no cluster de banco de dados. Durante um failover, o endpoint de leitor pode direcionar conexões para a nova instância de banco de dados primária de um cluster de banco de dados por um curto período depois que uma réplica do Aurora é promovida para a nova instância de banco de dados primária.

Caso projete a própria lógica de aplicativo para gerenciar conexões com endpoints de instância, descubra de maneira manual ou programática o conjunto resultante de instâncias de banco de dados disponíveis no cluster de banco de dados. Use o comando describe-db-clusters da AWS CLI ou a operação DescribeDBClusters da API do RDS para encontrar o cluster de banco de dados, os endpoints leitores e as instâncias de banco de dados, e identificar se as instâncias de banco de dados são leitoras e quais seus níveis de promoção. Em seguida, confirme as classes de instância após o failover e se conecte a um endpoint de instância apropriado.

Para obter mais informações sobre failovers, consulte Tolerância a falhas para um cluster de banco de dados do Aurora.

Para ter mais informações sobre alta disponibilidade no Amazon Aurora, consulte Alta disponibilidade do Amazon Aurora.