Connessioni degli endpoint Amazon Aurora - Amazon Aurora

Connessioni degli endpoint Amazon Aurora

Amazon Aurora in genere utilizza un cluster di istanze database anziché una singola istanza. Ogni connessione viene gestita da un'istanza database specifica. Quando ti connetti a un cluster Aurora, il nome host e la porta specificati puntano a un handler intermedio chiamato endpoint. Aurora utilizza il meccanismo endpoint per astrarre queste connessioni. Pertanto, non è necessario codificare tutti i nomi host o scrivere una propria logica per il bilanciamento e il reindirizzamento delle connessioni quando alcune istanze database non sono disponibili.

Per determinate attività di Aurora, le diverse istanze o i gruppi di istanze svolgono ruoli differenti. Ad esempio, l'istanza primaria gestisce tutte le istruzioni DDL (Data Definition Language) e DML (Data Manipulation Language) e fino a 15 repliche di Aurora gestiscono il traffico di query di sola lettura.

Tipi di endpoint di Aurora

Usando gli endpoint puoi associare ogni connessione all'istanza o al gruppo di istanze appropriato in base al caso d'uso. Ad esempio, per eseguire le istruzioni DDL puoi connetterti a qualsiasi istanza sia l'istanza primaria. Per eseguire le query, puoi connetterti all’endpoint di lettura mentre Aurora esegue automaticamente il bilanciamento delle connessioni tra tutte le repliche Aurora. Per i cluster con istanze database con capacità o configurazioni diverse, puoi connetterti agli endpoint personalizzati associati a diversi sottoinsiemi di istanze database. Per la diagnosi o l'ottimizzazione, puoi connetterti a un endpoint di istanza specifico per esaminare i dettagli su una determinata istanza database.

Un endpoint è rappresentato da un URL specifico di Aurora contenente un indirizzo host e una porta. Di seguito sono riportati i tipi di endpoint disponibili da un cluster database Aurora.

Endpoint del cluster

Connettiti all’istanza primaria del cluster per sviluppare e testare le applicazioni, nonché per eseguire trasformazioni come istruzioni INSERT e operazioni DDL, DML ed ETL. Trova la posizione dell’endpoint del cluster utilizzando la AWS Management Console, l’interfaccia AWS CLI o l’API Amazon RDS, come descritto in Visualizzazione degli endpoint per un cluster Aurora.

Per ulteriori informazioni sugli endpoint del cluster, consulta Endpoint del cluster per Amazon Aurora.

Endpoint di lettura

Esegui le query. Aurora esegue automaticamente il bilanciamento delle connessioni tra tutte le repliche Aurora. Trova la posizione dell’endpoint di lettura utilizzando la AWS Management Console, l’interfaccia AWS CLI o l’API Amazon RDS, come descritto in Visualizzazione degli endpoint per un cluster Aurora.

Per ulteriori informazioni sugli endpoint di lettura, consulta Endpoint di lettura per Amazon Aurora.

Endpoint dell'istanza

Esamina i dettagli di un’istanza database specifica per la diagnosi o l’ottimizzazione. Puoi trovare la posizione dell’endpoint per ciascuna istanza solo nella AWS Management Console, nella pagina dei dettagli dell’istanza in uso.

Per ulteriori informazioni sugli endpoint dell’istanza, consulta Endpoint di istanza per Amazon Aurora.

Endpoint personalizzato

Connettiti a diversi sottoinsiemi di istanze database sul cluster di database. Questo è utile quando si hanno diverse capacità e configurazioni di istanze all’interno del cluster di database. Trova le posizioni degli endpoint personalizzati utilizzando la AWS Management Console, l’interfaccia AWS CLI o l’API Amazon RDS, come descritto in Visualizzazione degli endpoint per un cluster Aurora.

Per ulteriori informazioni sugli endpoint personalizzati, consulta Endpoint personalizzati per Amazon Aurora.

Endpoint di scrittura per Database globali Aurora

Database globale Aurora dispone di un tipo speciale di endpoint che ha lo stesso scopo dell’endpoint di un cluster Aurora autonomo. Gestisce sia le richieste di scrittura che quelle di lettura. Quando un cluster secondario diventa il nuovo cluster primario a causa di uno switchover o di un failover, Aurora modifica automaticamente questo endpoint in modo che punti all’endpoint del nuovo cluster primario, nell’altra Regione AWS. In questo modo, non è necessario codificare la Regione AWS nella stringa di connessione dell’applicazione e neppure modificare la stringa di connessione quando cambia il layout del database globale. Aurora crea questo endpoint quando si configura un Database globale Aurora, ad esempio scegliendo Aggiungi Regione per un cluster Aurora nella AWS Management Console.

Per informazioni su come utilizzare questo tipo di endpoint con Database globale Aurora, consulta Connessione a Database globale Amazon Aurora.

Visualizzazione degli endpoint per un cluster Aurora

Sebbene sia possibile trovare la posizione dell’endpoint dell’istanza solo nella pagina dei dettagli dell’istanza nella AWS Management Console, puoi utilizzare la console, l’interfaccia AWS CLI o l’API Amazon RDS per trovare le posizioni di cluster, endpoint di lettura ed endpoint personalizzati.

Console

Nella AWS Management Console, l’endpoint del cluster, l’endpoint di lettura e gli eventuali endpoint personalizzati sono visualizzati nella pagina dei dettagli dell’istanza di ciascun cluster. L'endpoint dell'istanza viene visualizzato nella pagina dei dettagli di ogni istanza. Quando ti connetti, devi aggiungere al nome dell’endpoint, mostrato in questa pagina dei dettagli, il numero di porta associato seguito dai due punti.

AWS CLI

Con il comando AWS CLI, puoi trovare gli endpoint di scrittura, di lettura e personalizzati nell’output del comando describe-db-clusters. Ad esempio, il comando seguente mostra gli attributi dell'endpoint per tutti i cluster nella regione AWS corrente.

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

Con l’API Amazon RDS, puoi recuperare gli endpoint chiamando l’operazione DescribeDBClusterEndpoints.

Come gli endpoint Aurora funzionano con elevata disponibilità

Per i cluster in cui è importante la disponibilità elevata, utilizza l’endpoint del cluster per le connessioni di lettura-scrittura o a scopo generale e l’endpoint di lettura per le connessioni di sola lettura. Gli endpoint di scrittura e lettura gestiscono il failover delle istanze DB meglio degli endpoint di istanza. A differenza degli endpoint istanza, gli endpoint di scrittura e lettura modificano automaticamente l'istanza database a cui si connettono se un'istanza database nel cluster diventa non disponibile. Per maggiori informazioni sugli endpoint del cluster e di lettura, consulta Endpoint del cluster per Amazon Aurora e Endpoint di lettura per Amazon Aurora.

In caso di errore dell'istanza database primaria di un cluster database, Aurora esegue automaticamente il failover su una nuova istanza database primaria. Questa operazione viene eseguita promuovendo una replica Aurora esistente in una nuova istanza database primaria oppure creando una nuova istanza database primaria. Se si verifica un failover, è possibile utilizzare l’endpoint del cluster per la riconnessione all’istanza database primaria appena creata o promossa oppure ricorrere all’endpoint di lettura per riconnettersi a una delle repliche Aurora nel cluster di database. Durante un failover, l'endpoint di lettura potrebbe dirigere le connessioni alla nuova istanza database primaria di un cluster database per un breve periodo di tempo dopo che una replica di Aurora viene promossa a nuova istanza database primaria.

Se progetti la tua logica applicativa per gestire le connessioni agli endpoint di istanza, puoi rilevare a livello di codice o manualmente il set risultante di istanze database disponibili nel cluster database. Utilizza il comando describe-db-clusters AWS CLI o l’operazione API RDS DescribeDBClusters per individuare il cluster di database e gli endpoint di lettura e le istanze database, oltre che per capire se le istanze database sono istanze di lettura e per scoprire i relativi livelli di promozione. Puoi quindi confermare le classi di istanza dopo il failover e collegarti a un endpoint di istanza appropriato.

Per ulteriori informazioni sui failover, consulta Tolleranza ai guasti di un cluster DB Aurora.

Per ulteriori informazioni sulla disponibilità elevata in Amazon Aurora, consulta Elevata disponibilità di Amazon Aurora.