

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Connessioni degli endpoint Amazon Aurora
<a name="Aurora.Overview.Endpoints"></a>

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.

**Topics**
+ [Tipi di endpoint di Aurora](#Aurora.Overview.Endpoints.Types)
+ [Visualizzazione degli endpoint per un cluster Aurora](#Aurora.Endpoints.Viewing)
+ [Come gli endpoint Aurora funzionano con elevata disponibilità](#Aurora.Overview.Endpoints.HA)
+ [Endpoint del cluster per Amazon Aurora](Aurora.Endpoints.Cluster.md)
+ [Endpoint di lettura per Amazon Aurora](Aurora.Endpoints.Reader.md)
+ [Endpoint di istanza per Amazon Aurora](Aurora.Endpoints.Instance.md)
+ [Endpoint personalizzati per Amazon Aurora](Aurora.Endpoints.Custom.md)

## Tipi di endpoint di Aurora
<a name="Aurora.Overview.Endpoints.Types"></a>

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 Console di gestione AWS AWS CLI, o l'API Amazon RDS, come descritto in. [Visualizzazione degli endpoint per un cluster Aurora](#Aurora.Endpoints.Viewing)  
Per ulteriori informazioni sugli endpoint del cluster, consulta [Endpoint del cluster per Amazon Aurora](Aurora.Endpoints.Cluster.md).

**Endpoint di lettura**  
Esegui le query. Aurora esegue automaticamente il bilanciamento delle connessioni tra tutte le repliche Aurora. Trova la posizione dell'endpoint del lettore utilizzando Console di gestione AWS AWS CLI, o l'API Amazon RDS, come descritto in. [Visualizzazione degli endpoint per un cluster Aurora](#Aurora.Endpoints.Viewing)  
Per ulteriori informazioni sugli endpoint di lettura, consulta [Endpoint di lettura per Amazon Aurora](Aurora.Endpoints.Reader.md).

**Endpoint dell'istanza**  
Esamina i dettagli di un’istanza database specifica per la diagnosi o l’ottimizzazione. Puoi trovare la posizione dell'endpoint dell'istanza per ciascuna delle tue istanze Console di gestione AWS solo nella pagina dei dettagli dell'istanza.  
Per ulteriori informazioni sugli endpoint dell’istanza, consulta [Endpoint di istanza per Amazon Aurora](Aurora.Endpoints.Instance.md).

**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 personalizzate utilizzando Console di gestione AWS AWS CLI, o l'API Amazon RDS, come descritto in. [Visualizzazione degli endpoint per un cluster Aurora](#Aurora.Endpoints.Viewing)  
Per ulteriori informazioni sugli endpoint personalizzati, consulta [Endpoint personalizzati per Amazon Aurora](Aurora.Endpoints.Custom.md).

**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 AWS regione nella stringa di connessione dell'applicazione e non è necessario 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 Console di gestione AWS.   
 Per informazioni su come utilizzare questo tipo di endpoint con Database globale Aurora, consulta [Connessione a Database globale Amazon Aurora](aurora-global-database-connecting.md). 

## Visualizzazione degli endpoint per un cluster Aurora
<a name="Aurora.Endpoints.Viewing"></a>

Sebbene sia possibile trovare la posizione dell'endpoint dell'istanza solo nella pagina dei dettagli dell'istanza in Console di gestione AWS, puoi utilizzare la console o l'API Amazon RDS per trovare le posizioni di cluster, lettori e endpoint personalizzati. AWS CLI

------
#### [ Console ]

Nella pagina dei Console di gestione AWS dettagli dell'istanza relativa al cluster, trova l'endpoint del cluster, l'endpoint reader ed eventuali endpoint personalizzati. 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 AWS CLI, puoi trovare lo scrittore, il lettore e tutti gli endpoint personalizzati nell'output del comando. [describe-db-clusters](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-clusters.html) Ad esempio, il comando seguente mostra gli attributi degli endpoint per tutti i cluster nella regione corrente. AWS 

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

------
#### [ Amazon RDS API ]

Con l'API Amazon RDS, recuperi gli endpoint chiamando l'operazione [DBClusterDescrivi](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBClusterEndpoints.html) Endpoints.

------

## Come gli endpoint Aurora funzionano con elevata disponibilità
<a name="Aurora.Overview.Endpoints.HA"></a>

Per i cluster in cui l'elevata disponibilità è importante, utilizza l'endpoint del cluster per connessioni generiche e l'endpoint di read/write lettura per 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](Aurora.Endpoints.Cluster.md) e [Endpoint di lettura per Amazon Aurora](Aurora.Endpoints.Reader.md).

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 [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-clusters.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-clusters.html) AWS CLI comando o l'operazione API [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBClusters.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBClusters.html)RDS per trovare il cluster DB e gli endpoint di lettura, le istanze DB, se le istanze DB sono lettori e 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](Concepts.AuroraHighAvailability.md#Aurora.Managing.FaultTolerance).

Per ulteriori informazioni sulla disponibilità elevata in Amazon Aurora, consulta [Elevata disponibilità di Amazon Aurora](Concepts.AuroraHighAvailability.md).

# Endpoint del cluster per Amazon Aurora
<a name="Aurora.Endpoints.Cluster"></a>

Per *endpoint del cluster* (o *endpoint di scrittura*) si intende un endpoint per un cluster di database Aurora che si connette all'istanza database primaria corrente di quel cluster. Questo endpoint è l'unico in grado di eseguire operazioni di scrittura come le istruzioni DDL. Per questo motivo, l'endpoint del cluster è quello a cui ti connetti quando imposti un cluster per la prima volta o quando il cluster contiene una sola istanza database.

Ciascun cluster database Aurora ha un endpoint del cluster e un'istanza database primaria.

L'endpoint del cluster si usa per tutte le operazioni di scrittura sul cluster database, inclusi aggiornamenti, inserimenti, eliminazioni e modifiche DDL. Puoi anche utilizzare l'endpoint del cluster per le operazioni di lettura, come ad esempio le query.

L'endpoint del cluster fornisce un failover del cluster per connessioni di lettura-scrittura al cluster database. In caso di errore dell'istanza database primaria corrente di un cluster database, Aurora esegue automaticamente il failover su una nuova istanza database primaria. Durante un failover, il cluster database continua a servire le richieste di connessione all'endpoint del cluster dalla nuova istanza database primaria, riducendo al minimo l'interruzione del servizio.

L'esempio seguente mostra un endpoint del cluster per un cluster database Aurora MySQL.

```
mydbcluster.cluster-c7tj4example.us-east-1.rds.amazonaws.com:3306
```

Ogni cluster Aurora ha un singolo endpoint cluster integrato, il cui nome e altri attributi sono gestiti da Aurora. Non puoi creare, eliminare o modificare questo tipo di endpoint.

L'endpoint del cluster viene utilizzato per la gestione del cluster, l'esecuzione di operazioni di estrazione, trasformazione, caricamento (ETL) o di applicazioni di sviluppo e test. L'endpoint del cluster si connette all'istanza primaria del cluster. L'istanza primaria è l'unica istanza database in cui è possibile creare tabelle e indici, eseguire istruzioni `INSERT` e altre operazioni DDL e DML.

L'indirizzo IP fisico indicato dall'endpoint del cluster cambia quando il meccanismo di failover promuove una nuova istanza database come istanza primaria di lettura-scrittura per il cluster. Se utilizzi un pool di connessioni o altro tipo di multiplexing, preparati ad azzerare o ridurre il valore time-to-live per qualsiasi informazione DNS memorizzata nella cache. In tal modo si evita di provare a stabilire una connessione in lettura-scrittura a un'istanza database che non è più disponibile o che ora è di sola lettura a causa di un failover.

# Endpoint di lettura per Amazon Aurora
<a name="Aurora.Endpoints.Reader"></a>

L’*endpoint di lettura* per un cluster di database Aurora fornisce supporto per il bilanciamento delle connessioni di sola lettura al cluster di database Aurora. Puoi utilizzare l'endpoint di lettura per le operazioni di lettura, come ad esempio le query. Elaborando tali istruzioni nelle repliche Aurora di sola lettura, questo endpoint riduce il sovraccarico sull'istanza primaria. Consente inoltre al cluster di ridimensionare la capacità di gestire query `SELECT` simultanee, proporzionale al numero di repliche Aurora nel cluster. Ogni cluster database Aurora ha un endpoint di lettura.

Se il cluster contiene una o più repliche Aurora, l’endpoint di lettura bilancia ogni richiesta di connessione tra le repliche Aurora. In tal caso, è possibile eseguire solo istruzioni di sola lettura come `SELECT` in quella sessione. Se il cluster contiene solo un'istanza primaria e nessuna replica Aurora, l'endpoint di lettura si connette all'istanza primaria. In tal caso, è possibile eseguire operazioni di scrittura attraverso l'endpoint.

L'esempio seguente mostra un endpoint di lettura per un cluster database Aurora MySQL.

```
mydbcluster.cluster-ro-c7tj4example.us-east-1.rds.amazonaws.com:3306
```

Usi l'endpoint di lettura fornisce per le connessioni di sola lettura al cluster Aurora. Questo endpoint utilizza un meccanismo di bilanciamento della connessione per consentire al cluster di gestire un carico di lavoro che implica numerose query. L'endpoint di lettura è quello che fornisci alle applicazioni che eseguono report o altre operazioni di sola lettura sul cluster.

L’endpoint di lettura bilancia le connessioni alle repliche Aurora disponibili in un cluster di database Aurora. Non può bilanciare le singole query. Se desideri bilanciare ogni query per distribuire il carico di lavoro di lettura per un cluster di database, apri una nuova connessione all’endpoint di lettura per ogni query.

Ogni cluster Aurora ha un singolo endpoint di lettura integrato, il cui nome e altri attributi sono gestiti da Aurora. Non puoi creare, eliminare o modificare questo tipo di endpoint.

Se il cluster contiene solo una destinazione primaria (istanza o gruppo di shard del database) e nessuna replica Aurora, l’endpoint di lettura si connette all’istanza primaria. In tal caso, è possibile eseguire operazioni di scrittura tramite questo endpoint.

**Suggerimento**  
Tramite RDS Proxy, è possibile creare ulteriori endpoint di sola lettura per un cluster Aurora. Questi endpoint eseguono lo stesso tipo di bilanciamento della connessione dell’endpoint di lettura Aurora. Le applicazioni possono riconnettersi più rapidamente agli endpoint proxy rispetto all'endpoint di lettura Aurora se le istanze del lettore non sono disponibili. Gli endpoint proxy possono anche sfruttare altre funzionalità proxy come il multiplexing. Per ulteriori informazioni, consulta [Utilizzo degli endpoint di lettura con cluster Aurora](rds-proxy-endpoints.md#rds-proxy-endpoints-reader).

# Endpoint di istanza per Amazon Aurora
<a name="Aurora.Endpoints.Instance"></a>

Un *endpoint dell'istanza* si connette a un'istanza database specifica all'interno di un cluster Aurora. Ogni istanza database in un cluster database dispone del proprio endpoint dell'istanza univoco. Pertanto esiste un endpoint dell'istanza per l'istanza database primaria corrente del cluster database e un endpoint dell'istanza per ciascuna replica di Aurora nel cluster database.

L'endpoint dell'istanza fornisce controllo diretto sulle connessioni al cluster database, per scenari in cui l'utilizzo dell'endpoint del cluster o dell'endpoint di lettura potrebbe non essere appropriato. Ad esempio, l’applicazione client potrebbe richiedere un maggiore bilanciamento della connessione granulare in base al tipo di carico di lavoro. In questo caso, è possibile configurare più client per connettersi alle repliche di Aurora in un cluster database per distribuire i carichi di lavoro in lettura. Per un esempio in cui si usano gli endpoint dell'istanza per migliorare la velocità di connessione dopo un failover per Aurora PostgreSQL, consulta [Failover rapido con Amazon Aurora PostgreSQL](AuroraPostgreSQL.BestPractices.FastFailover.md). Per un esempio in cui vengono utilizzati gli endpoint dell'istanza per migliorare la velocità di connessione dopo un failover per Aurora MySQL, consultare [MariaDB Connector/J failover support – case Amazon Aurora](https://mariadb.org/mariadb-connectorj-failover-support-case-amazon-aurora/).

L'esempio seguente mostra un endpoint dell'istanza per un'istanza database in un cluster database Aurora MySQL.

```
mydbinstance.c7tj4example.us-east-1.rds.amazonaws.com:3306
```

Ogni istanza database in un cluster Aurora ha un proprio endpoint di istanza integrato, il cui nome e altri attributi sono gestiti da Aurora. Non puoi creare, eliminare o modificare questo tipo di endpoint. Potresti avere familiarità con gli endpoint di istanza se usi Amazon RDS. Tuttavia, in genere con Aurora si utilizzano gli endpoint di scrittura e lettura più spesso degli endpoint di istanza.

Nelle operazioni quotidiane di Aurora, il modo principale in cui si utilizzano gli endpoint di istanza consiste nel diagnosticare i problemi di capacità o di prestazioni che interessano una specifica istanza in un cluster Aurora. Durante la connessione a un'istanza specifica, puoi esaminare le variabili di stato, i parametri e così via. Ciò può aiutarti a determinare cosa sta succedendo di diverso per quell'istanza da ciò che accade per le altre istanze nel cluster.

Nei casi di utilizzo avanzati, puoi configurare alcune istanze database in modo diverso rispetto ad altre. In questo caso, utilizza l'endpoint dell'istanza per connetterti direttamente a un'istanza più piccola, più grande o con caratteristiche diverse rispetto alle altre. Inoltre, imposta la priorità di failover in modo che questa istanza database speciale sia l'ultima scelta da assumere come istanza primaria. In tali casi, consigliamo di utilizzare gli endpoint personalizzati anziché l'endpoint di istanza. Ciò semplifica la gestione delle connessioni e l'elevata disponibilità man mano che aggiungi altre istanze database al cluster.

# Endpoint personalizzati per Amazon Aurora
<a name="Aurora.Endpoints.Custom"></a>

L'*endpoint personalizzato* per un cluster Aurora rappresenta un set di istanze database selezionate. Quando ti connetti all’endpoint, Aurora esegue il bilanciamento della connessione e sceglie una delle istanze del gruppo per gestire la connessione. Puoi definire a quali istanze si riferisce questo endpoint e a quale scopo serve l'endpoint.

Un cluster database Aurora non ha endpoint personalizzati finché non ne viene creato uno. Puoi creare fino a cinque endpoint personalizzati per ogni cluster Aurora con provisioning o cluster Aurora Serverless v2. Non puoi utilizzare gli endpoint personalizzati per i cluster Aurora Serverless v1

L’endpoint personalizzato fornisce le connessioni ai database bilanciate sulla base di criteri diversi dalla capacità di sola lettura o di lettura/scrittura delle istanze database. Ad esempio, potresti definire un endpoint personalizzato per connetterti alle istanze che utilizzano una particolare classe di istanza AWS o un particolare gruppo di parametri database. Poi potresti indicare a particolari gruppi di utenti questo endpoint personalizzato. Ad esempio, potresti indirizzare gli utenti interni alle istanze a bassa capacità per la generazione di report o l'esecuzione di query ad hoc (una tantum) e indirizzare il traffico di produzione alle istanze ad alta capacità.

Dal momento che è possibile eseguire la connessione a qualsiasi istanza database associata all'endpoint personalizzato, è consigliabile assicurarsi che tutte le istanze database all'interno del gruppo condividano alcune caratteristiche simili. Ciò garantisce che le prestazioni, la capacità di memoria e altre funzionalità siano coerenti per tutti coloro che si connettono a quell'endpoint.

Questa caratteristica è progettata per gli utenti esperti con tipi specializzati di carichi di lavoro in cui non è pratico mantenere identiche tutte le repliche di Aurora nel cluster. Con gli endpoint personalizzati, puoi prevedere la capacità dell'istanza database utilizzata per ciascuna connessione. Quando usi gli endpoint personalizzati, in genere non utilizzi l'endpoint di lettura per il cluster.

L'esempio seguente mostra un endpoint personalizzato per un'istanza database in un cluster database Aurora MySQL.

```
myendpoint.cluster-custom-c7tj4example.us-east-1.rds.amazonaws.com:3306
```

Gli endpoint personalizzati vengono utilizzati per semplificare la gestione delle connessioni quando il cluster contiene istanze database con capacità e impostazioni di configurazione diverse.

In precedenza, potresti aver utilizzato il meccanismo CNAMES per impostare gli alias DNS (Domain Name Service) dal tuo dominio per ottenere risultati simili. Utilizzando gli endpoint personalizzati, puoi evitare di aggiornare i record CNAME quando il tuo cluster aumenta o si riduce. Gli endpoint personalizzati ti consentono anche di utilizzare connessioni Transport Layer Security/Secure Sockets Layer (TLS/SSL).

Invece di utilizzare un'istanza database per ogni scopo specifico e connetterti al relativo endpoint dell'istanza, puoi creare più gruppi di istanze database specializzate. In questo caso, ciascun gruppo ha il proprio endpoint personalizzato. In questo modo, Aurora può eseguire il bilanciamento della connessione tra tutte le istanze dedicate ad attività come la creazione di report o la gestione di query interne o di produzione. Gli endpoint personalizzati distribuiscono le connessioni tra le istanze in modo passivo, utilizzando il DNS per restituire l’indirizzo IP di una delle istanze in modo casuale. Se una delle istanze database all'interno di un gruppo diventa non disponibile, Aurora indirizza le successive connessioni dell'endpoint personalizzato a una delle altre istanze database associate allo stesso endpoint.

**Topics**
+ [Considerazioni sugli endpoint personalizzati di Amazon Aurora](Aurora.Endpoints.Custom.Considerations.md)
+ [Creazione di un endpoint personalizzato](aurora-custom-endpoint-creating.md)
+ [Visualizzazione degli endpoint personalizzati](aurora-endpoint-viewing.md)
+ [Modifica di un endpoint personalizzato](aurora-endpoint-editing.md)
+ [Eliminazione di un endpoint personalizzato](aurora-endpoints-custom-deleting.md)
+ [AWS CLI esempi di endpoint personalizzati per Amazon Aurora](Aurora.Endpoint.Tutorial.md)

# Considerazioni sugli endpoint personalizzati di Amazon Aurora
<a name="Aurora.Endpoints.Custom.Considerations"></a>

Utilizza le seguenti sezioni per gestire gli endpoint personalizzati, nonché per specificarne le proprietà e utilizzare per essi le regole di appartenenza.

**Topics**
+ [Gestione degli endpoint personalizzati](#Aurora.Endpoints.Custom.Managing)
+ [Configurazione delle proprietà degli endpoint personalizzati](#Aurora.Endpoints.Custom.Properties)
+ [Regole di appartenenza degli endpoint personalizzati](#Aurora.Endpoints.Custom.Membership)

## Gestione degli endpoint personalizzati
<a name="Aurora.Endpoints.Custom.Managing"></a>

Dal momento che i cluster Aurora appena creati non hanno endpoint personalizzati, devi creare e gestire questi oggetti autonomamente. Puoi farlo utilizzando Console di gestione AWS AWS CLI, o l'API Amazon RDS.

**Nota**  
Inoltre, devi creare e gestire gli endpoint personalizzati per i cluster Aurora ripristinati da snapshot. Gli endpoint personalizzati non sono inclusi nello snapshot. Li crei nuovamente dopo il ripristino e scegli nuovi nomi per gli endpoint se il cluster ripristinato si trova nella stessa regione di quello originale.

Per lavorare con endpoint personalizzati da Console di gestione AWS, accedi alla pagina dei dettagli del tuo cluster Aurora e usa i controlli nella sezione Endpoint **personalizzati**.

Per lavorare con endpoint personalizzati da AWS CLI, puoi utilizzare queste operazioni:
+ [create-db-cluster-endpoint](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-cluster-endpoint.html)
+ [describe-db-cluster-endpoints](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-cluster-endpoints.html)
+ [modify-db-cluster-endpoint](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-cluster-endpoint.html)
+ [delete-db-cluster-endpoint](https://docs.aws.amazon.com/cli/latest/reference/rds/delete-db-cluster-endpoint.html)

Per usare gli endpoint personalizzati tramite l'API Amazon RDS, puoi utilizzare le seguenti funzioni:
+ [Crea endpoint DBCluster](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBClusterEndpoint.html)
+ [Descrivi DBCluster gli endpoint](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBClusterEndpoints.html)
+ [Modifica endpoint DBCluster](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBClusterEndpoint.html)
+ [Elimina endpoint DBCluster](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DeleteDBClusterEndpoint.html)

## Configurazione delle proprietà degli endpoint personalizzati
<a name="Aurora.Endpoints.Custom.Properties"></a>

La lunghezza massima di un nome di endpoint personalizzato è 63 caratteri. Il formato del nome è il seguente:

```
endpoint_name.cluster-custom-customer_DNS_identifier.AWS_Region.rds.amazonaws.com
```

Non è possibile riutilizzare lo stesso nome di endpoint personalizzato per più di un cluster nella stessa  Regione AWS. L'identificatore DNS personalizzato è un identificatore univoco associato al tuo Account AWS in un particolare. Regione AWS

A ogni endpoint personalizzato è associato un tipo che determina quali istanze database possono essere associate all'endpoint. Attualmente, il tipo può essere `READER` o `ANY`. Le seguenti considerazioni si applicano ai tipi di endpoint personalizzato:
+ Non puoi selezionare il tipo di endpoint personalizzato nella Console di gestione AWS. Tutti gli endpoint personalizzati che crei tramite Console di gestione AWS hanno un tipo di. `ANY`

  Puoi impostare e modificare il tipo di endpoint personalizzato utilizzando l'API AWS CLI o Amazon RDS.
+ Solo le istanze database di lettura possono far parte di un endpoint personalizzato `READER`.
+ Le istanze database di lettura e di scrittura possono entrambe fare parte di un endpoint personalizzato `ANY`. Aurora dirige le connessioni agli endpoint cluster con tipo `ANY` a qualsiasi istanza database associata con uguale probabilità. Il tipo `ANY` si applica ai cluster che utilizzano qualsiasi topologia di replica.
+  Se tenti di creare un endpoint personalizzato con un tipo non appropriato in base alla configurazione di replica per un cluster, Aurora restituisce un errore.

## Regole di appartenenza degli endpoint personalizzati
<a name="Aurora.Endpoints.Custom.Membership"></a>

 Quando aggiungi un'istanza database a un endpoint personalizzato o la si rimuove da un endpoint personalizzato, tutte le connessioni esistenti all'istanza database rimangono attive. 

 È possibile definire un elenco di istanze database da includere o escludere da un endpoint personalizzato. Ci riferiamo a questi elenchi come elenchi *statici* e *di esclusioni*, rispettivamente. Puoi utilizzare il inclusion/exclusion meccanismo per suddividere ulteriormente i gruppi di istanze DB e assicurarti che il set di endpoint personalizzati copra tutte le istanze DB del cluster. Ogni endpoint personalizzato può contenere solo uno di questi tipi di elenchi.

Nel: Console di gestione AWS
+ La scelta è rappresentata dalla casella di controllo **Attach future instances added to this cluster** (Collega le istanze aggiunte in futuro a questo cluster). Quando lasci deselezionata la casella di controllo, l'endpoint personalizzato utilizza un elenco statico contenente solo le istanze database specificate nella pagina. Quando selezioni la casella di controllo, l'endpoint personalizzato utilizza un elenco di esclusioni. In questo caso, l'endpoint personalizzato rappresenta tutte le istanze database nel cluster (incluse quelle che aggiungi in seguito) tranne quelle lasciate deselezionate nella pagina.
+ La console non consente di specificare il tipo di endpoint. Qualsiasi endpoint personalizzato creato utilizzando la console è di tipo `ANY`.

  Pertanto, Aurora non modifica l'appartenenza all'endpoint personalizzato quando le istanze database cambiano ruolo tra istanza di scrittura e istanza di lettura a causa di un failover o di una promozione.

Nell'API AWS CLI e Amazon RDS:
+ Puoi specificare il tipo di endpoint. Pertanto, quando il tipo di endpoint è impostato su `READER`, l’appartenenza dell’endpoint viene adeguata automaticamente durante i failover e le promozioni.

  Ad esempio, un endpoint personalizzato di tipo `READER` include una replica Aurora che poi viene promossa a istanza database di scrittura. La nuova istanza di scrittura non fa più parte dell'endpoint personalizzato.
+ È possibile aggiungere singoli membri e rimuoverli dagli elenchi dopo che hanno cambiato ruolo. Usa il [modify-db-cluster-endpoint](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/modify-db-cluster-endpoint.html) AWS CLI comando o l'operazione [Modify DBCluster Endpoint](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBClusterEndpoint.html) API.

Puoi associare un'istanza database a più di un endpoint personalizzato. Ad esempio, supponiamo che aggiungi una nuova istanza database a un cluster o che Aurora aggiunga automaticamente un'istanza database tramite il meccanismo di Auto Scaling. In questi casi, l'istanza database viene aggiunta a tutti gli endpoint personalizzati per i quali è idonea. A quali endpoint viene aggiunta l’istanza database dipende dal tipo di endpoint personalizzato, `READER` o `ANY`, oltre che da eventuali elenchi statici o di esclusioni definiti per ciascun endpoint. Ad esempio, se l'endpoint include un elenco statico di istanze database, le repliche di Aurora aggiunte non vengono inserite nell'endpoint. Al contrario, se l'endpoint ha un elenco di esclusioni, le repliche di Aurora aggiunte vengono inserite nell'endpoint, se non sono citate nell'elenco di esclusioni e i ruoli corrispondono al tipo dell'endpoint personalizzato.

Se una replica di Aurora diventa non disponibile, rimane associata agli endpoint personalizzati. Ad esempio, continua a far parte dell'endpoint personalizzato quando non è integra, è stata interrotta, riavviata e così via. Tuttavia, non puoi connetterti alla replica tramite questi endpoint finché non diventa nuovamente disponibile.

# Creazione di un endpoint personalizzato
<a name="aurora-custom-endpoint-creating"></a>

Crea un endpoint personalizzato utilizzando la Console di gestione AWS, AWS CLI o l’API Amazon RDS.

## Console
<a name="aurora-create-endpoint.console"></a>

Per creare un endpoint personalizzato con la Console di gestione AWS, vai alla pagina dei dettagli del cluster e scegli l'operazione `Create custom endpoint` nella sezione **Endpoint**. Scegli un nome per l'endpoint personalizzato, univoco per l'ID utente e la regione. Per selezionare un elenco di istanze database che rimane invariato anche quando il cluster si espande, lascia deselezionata la casella di controllo **Attach future instances added to this cluster (Collega le istanze che in futuro saranno aggiunte a questo cluster)**. Quando selezioni questa casella di controllo, l'endpoint personalizzato aggiunge dinamicamente nuove istanze man mano che le aggiungi al cluster.

![\[Crea una pagina endpoint personalizzata con campi per l’identificatore dell’endpoint, la selezione del tipo di istanza e le opzioni statico/esclusione.\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/AuroraUserGuide/images/AuroraCreateCustomEndpoint.png)


Non puoi selezionare il tipo di endpoint personalizzato nella Console di gestione AWS. Tutti gli endpoint personalizzati creati tramite la Console di gestione AWS sono di tipo `ANY`.

## AWS CLI
<a name="aurora-create-endpoint.cli"></a>

Per creare un endpoint personalizzato con l'AWS CLI, esegui il comando [create-db-cluster-endpoint](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-cluster-endpoint.html).

Il seguente comando crea un endpoint personalizzato collegato a un cluster specifico. Inizialmente, l'endpoint è associato a tutte le istanze di replica di Aurora nel cluster. Un comando successivo lo associa a un set specifico di istanze database del cluster.

Per Linux, macOS o Unix:

```
aws rds create-db-cluster-endpoint --db-cluster-endpoint-identifier custom-endpoint-doc-sample \
  --endpoint-type reader \
  --db-cluster-identifier cluster_id

aws rds modify-db-cluster-endpoint --db-cluster-endpoint-identifier custom-endpoint-doc-sample \
  --static-members instance_name_1 instance_name_2
```

Per Windows:

```
aws rds create-db-cluster-endpoint --db-cluster-endpoint-identifier custom-endpoint-doc-sample ^
  --endpoint-type reader ^
  --db-cluster-identifier cluster_id

aws rds modify-db-cluster-endpoint --db-cluster-endpoint-identifier custom-endpoint-doc-sample ^
  --static-members instance_name_1 instance_name_2
```

## API RDS
<a name="aurora-create-endpoint.api"></a>

Per creare un endpoint personalizzato con l'API RDS, esegui l'operazione [CreateDBClusterEndpoint](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBClusterEndpoint.html).

# Visualizzazione degli endpoint personalizzati
<a name="aurora-endpoint-viewing"></a>

## Console
<a name="aurora-view-endpoint.console"></a>

Per visualizzare gli endpoint personalizzati con la Console di gestione AWS, vai alla pagina dei dettagli del cluster per il cluster e guarda la sezione **Endpoint**. Questa sezione contiene solo informazioni relative agli endpoint personalizzati. I dettagli per gli endpoint integrati sono elencati nella sezione **Dettagli** principale. Per vedere i dettagli di uno specifico endpoint personalizzato, selezionane il nome per visualizzare la relativa pagina dei dettagli.

La seguente schermata mostra l'elenco degli endpoint personalizzati per un cluster Aurora che è inizialmente vuoto.

![\[Pagina degli endpoint senza endpoint personalizzati.\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/AuroraUserGuide/images/AuroraCustomEndpointEmptyList.png)


Una volta creati gli endpoint personalizzati per il cluster, vengono visualizzati nella sezione **Endpoint**.

![\[Pagina degli endpoint con due endpoint personalizzati.\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/AuroraUserGuide/images/AuroraCustomEndpointList.png)


Facendo clic sulla pagina dei dettagli vengono mostrate le istanze database a cui è attualmente associato l'endpoint.

![\[Istanze database associate a un endpoint personalizzato.\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/AuroraUserGuide/images/AuroraCustomEndpointDetail.png)


Per visualizzare altri dettagli sulle nuove istanze database aggiunte al cluster che vengono aggiunte automaticamente anche all'endpoint, apri la pagina **Edit** (Modifica) per l'endpoint.

## AWS CLI
<a name="aurora-view-endpoint.cli"></a>

Per visualizzare gli endpoint personalizzati con l'AWS CLI, esegui il comando [describe-db-cluster-endpoints](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-cluster-endpoints.html).

Il seguente comando mostra gli endpoint personalizzati associati a un cluster specificato in una regione specifica. L'output include gli endpoint integrati e tutti gli endpoint personalizzati.

Per Linux, macOS o Unix:

```
aws rds describe-db-cluster-endpoints --region region_name \
  --db-cluster-identifier cluster_id
```

Per Windows:

```
aws rds describe-db-cluster-endpoints --region region_name ^
  --db-cluster-identifier cluster_id
```

Di seguito è illustrato un esempio di output di un comando `describe-db-cluster-endpoints`. `EndpointType` di `WRITER` o `READER` indica gli endpoint integrati di lettura-scrittura e di sola lettura per il cluster. L'`EndpointType` `CUSTOM` indica gli endpoint creati e scegli le istanze database associate. Il campo `StaticMembers` di uno degli endpoint non è vuoto, a indicare che è associato a un set preciso di istanze database. Il campo `ExcludedMembers` dell'altro endpoint non è vuoto, a indicare che l'endpoint è associato a tutte le istanze database che *non* sono elencate in `ExcludedMembers`. Questo secondo tipo di endpoint personalizzato aumenta per includere le nuove istanze man mano che le aggiungi al cluster.

```
{
	"DBClusterEndpoints": [
		{
			"Endpoint": "custom-endpoint-demo.cluster-c7tj4example.ca-central-1.rds.amazonaws.com",
			"Status": "available",
			"DBClusterIdentifier": "custom-endpoint-demo",
			"EndpointType": "WRITER"
		},
		{
			"Endpoint": "custom-endpoint-demo.cluster-ro-c7tj4example.ca-central-1.rds.amazonaws.com",
			"Status": "available",
			"DBClusterIdentifier": "custom-endpoint-demo",
			"EndpointType": "READER"
		},
		{
			"CustomEndpointType": "ANY",
			"DBClusterEndpointIdentifier": "powers-of-2",
			"ExcludedMembers": [],
			"DBClusterIdentifier": "custom-endpoint-demo",
			"Status": "available",
			"EndpointType": "CUSTOM",
			"Endpoint": "powers-of-2.cluster-custom-c7tj4example.ca-central-1.rds.amazonaws.com",
			"StaticMembers": [
					"custom-endpoint-demo-04",
					"custom-endpoint-demo-08",
					"custom-endpoint-demo-01",
					"custom-endpoint-demo-02"
			],
			"DBClusterEndpointResourceIdentifier": "cluster-endpoint-W7PE3TLLFNSHXQKFU6J6NV5FHU",
			"DBClusterEndpointArn": "arn:aws:rds:ca-central-1:111122223333:cluster-endpoint:powers-of-2"
		},
		{
			"CustomEndpointType": "ANY",
			"DBClusterEndpointIdentifier": "eight-and-higher",
			"ExcludedMembers": [
					"custom-endpoint-demo-04",
					"custom-endpoint-demo-02",
					"custom-endpoint-demo-07",
					"custom-endpoint-demo-05",
					"custom-endpoint-demo-03",
					"custom-endpoint-demo-06",
					"custom-endpoint-demo-01"
			],
			"DBClusterIdentifier": "custom-endpoint-demo",
			"Status": "available",
			"EndpointType": "CUSTOM",
			"Endpoint": "eight-and-higher.cluster-custom-123456789012.ca-central-1.rds.amazonaws.com",
			"StaticMembers": [],
			"DBClusterEndpointResourceIdentifier": "cluster-endpoint-W7PE3TLLFNSHYQKFU6J6NV5FHU",
			"DBClusterEndpointArn": "arn:aws:rds:ca-central-1:111122223333:cluster-endpoint:eight-and-higher"
		}
	]
}
```

## API RDS
<a name="aurora-view-endpoint.api"></a>

Per visualizzare gli endpoint personalizzati con l'API RDS, esegui l'operazione [DescribeDBClusterEndpoints.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBClusterEndpoints.html.html).

# Modifica di un endpoint personalizzato
<a name="aurora-endpoint-editing"></a>

Puoi modificare le proprietà di un endpoint personalizzato per cambiare le istanze database associate all'endpoint. Puoi anche modificare un endpoint tra un elenco statico e un elenco di esclusioni. Per maggiori dettagli su queste proprietà dell'endpoint, vedi [Regole di appartenenza degli endpoint personalizzati](Aurora.Endpoints.Custom.Considerations.md#Aurora.Endpoints.Custom.Membership).

Puoi continuare a connetterti e utilizzare un endpoint personalizzato mentre sono in corso le modifiche di un'operazione di modifica.

## Console
<a name="aurora-edit-endpoint.console"></a>

Per modificare un endpoint personalizzato con la Console di gestione AWS, puoi selezionare l'endpoint nella pagina dei dettagli del cluster o visualizzare la pagina dei dettagli per l'endpoint e scegliere l'operazione **Modifica**.

![\[Modifica di un endpoint personalizzato.\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/AuroraUserGuide/images/AuroraEditCustomEndpoint.png)


## AWS CLI
<a name="aurora-edit-endpoint.cli"></a>

Per modificare un endpoint personalizzato con l'AWS CLI, esegui il comando [modify-db-cluster-endpoint](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-cluster-endpoint.html).

I seguenti comandi modificano il set di istanze database che si applicano a un endpoint personalizzato e opzionalmente alterna il comportamento di elenco statico e di esclusione. I parametri `--static-members` e `--excluded-members` usano un elenco separato da spazi di identificatori istanze database.

Per Linux, macOS o Unix:

```
aws rds modify-db-cluster-endpoint --db-cluster-endpoint-identifier my-custom-endpoint \
  --static-members db-instance-id-1 db-instance-id-2 db-instance-id-3 \
  --region region_name

aws rds modify-db-cluster-endpoint --db-cluster-endpoint-identifier my-custom-endpoint \
  --excluded-members db-instance-id-4 db-instance-id-5 \
  --region region_name
```

Per Windows:

```
aws rds modify-db-cluster-endpoint --db-cluster-endpoint-identifier my-custom-endpoint ^
  --static-members db-instance-id-1 db-instance-id-2 db-instance-id-3 ^
  --region region_name

aws rds modify-db-cluster-endpoint --db-cluster-endpoint-identifier my-custom-endpoint ^
  --excluded-members db-instance-id-4 db-instance-id-5 ^
  --region region_name
```

## API RDS
<a name="aurora-edit-endpoint.api"></a>

Per modificare un endpoint personalizzato con l'API RDS, esegui l'operazione [ModifyDBClusterEndpoint.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBClusterEndpoint.html.html).

# Eliminazione di un endpoint personalizzato
<a name="aurora-endpoints-custom-deleting"></a>

Elimina un endpoint personalizzato utilizzando la Console di gestione AWS, la AWS CLI o l’API Amazon RDS.

## Console
<a name="aurora-delete-endpoint.console"></a>

Per eliminare un endpoint personalizzato con la Console di gestione AWS, vai alla pagina dei dettagli del cluster e seleziona l'endpoint personalizzato appropriato, quindi scegli l'operazione **Elimina**.

![\[Eliminazione di una pagina di endpoint personalizzato.\]](http://docs.aws.amazon.com/it_it/AmazonRDS/latest/AuroraUserGuide/images/AuroraDeleteCustomEndpoint.png)


## AWS CLI
<a name="aurora-delete-endpoint.cli"></a>

Per eliminare un endpoint personalizzato con la AWS CLI, esegui il comando [delete-db-cluster-endpoint](https://docs.aws.amazon.com/cli/latest/reference/rds/delete-db-cluster-endpoint.html).

Il seguente comando elimina un endpoint personalizzato. Non è necessario specificare il cluster associato, ma devi specificare la regione.

Per Linux, macOS o Unix:

```
aws rds delete-db-cluster-endpoint --db-cluster-endpoint-identifier custom-end-point-id \
  --region region_name
```

Per Windows:

```
aws rds delete-db-cluster-endpoint --db-cluster-endpoint-identifier custom-end-point-id ^
  --region region_name
```

## API RDS
<a name="aurora-delete-endpoint.api"></a>

Per eliminare un endpoint personalizzato con l'API RDS, esegui l'operazione [DeleteDBClusterEndpoint](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DeleteDBClusterEndpoint.html).

# AWS CLI esempi di endpoint personalizzati per Amazon Aurora
<a name="Aurora.Endpoint.Tutorial"></a>

Il seguente tutorial utilizza AWS CLI esempi con sintassi della shell Unix per mostrare come definire un cluster con diverse istanze DB «piccole» e alcune istanze DB «grandi» e creare endpoint personalizzati per connettersi a ciascun set di istanze DB. Per eseguire comandi simili sul proprio sistema, è necessario avere sufficiente dimestichezza con le nozioni di base sull'utilizzo dei cluster Aurora AWS CLI e sull'utilizzo per fornire valori propri per parametri quali regione, gruppo di sottorete e gruppo di sicurezza VPC.

Questo esempio dimostra le fasi della configurazione iniziale: la creazione di un cluster Aurora e l'aggiunta delle istanze database. Questo è un cluster eterogeneo, il che significa che non tutte le istanze database hanno la stessa capacità. La maggior parte delle istanze utilizza la classe di AWS istanza`db.r4.4xlarge`, ma le ultime due istanze DB la utilizzano. `db.r4.16xlarge` Ognuno di questi comandi `create-db-instance` di esempio invia l'output sullo schermo e salva una copia del JSON in un file per un'ispezione successiva.

```
aws rds create-db-cluster --db-cluster-identifier custom-endpoint-demo --engine aurora-mysql \
     --engine-version 8.0.mysql_aurora.3.04.0 --master-username $MASTER_USER --manage-master-user-password \
     --db-subnet-group-name $SUBNET_GROUP  --vpc-security-group-ids $VPC_SECURITY_GROUP \
     --region $REGION

for i in 01 02 03 04 05 06 07 08
do
  aws rds create-db-instance --db-instance-identifier custom-endpoint-demo-${i} \
     --engine aurora --db-cluster-identifier custom-endpoint-demo --db-instance-class db.r4.4xlarge \
     --region $REGION \
     | tee custom-endpoint-demo-${i}.json
done

for i in 09 10
do
  aws rds create-db-instance --db-instance-identifier custom-endpoint-demo-${i} \
     --engine aurora --db-cluster-identifier custom-endpoint-demo --db-instance-class db.r4.16xlarge \
     --region $REGION \
     | tee custom-endpoint-demo-${i}.json
done
```

Le istanze più grandi sono riservate a tipi specializzati di query per la creazione di report. Per rendere improbabile che vengano promosse all'istanza primaria, l'esempio seguente imposta il livello di promozione sulla priorità più bassa. In questo esempio è specificata l'opzione `--manage-master-user-password` per generare la password dell'utente master e gestirla in Secrets Manager. Per ulteriori informazioni, consulta [Gestione delle password con Amazon Aurora e Gestione dei segreti AWS](rds-secrets-manager.md). In alternativa, puoi utilizzare l'opzione `--master-password` per specificare e gestire personalmente la password.

```
for i in 09 10
do
  aws rds modify-db-instance --db-instance-identifier custom-endpoint-demo-${i} \
    --region $REGION --promotion-tier 15
done
```

Supponiamo di voler utilizzare le due istanze "più grandi" solo per le query che richiedono più risorse. A tale scopo, puoi innanzitutto creare un endpoint di sola lettura personalizzato. Quindi puoi aggiungere un elenco statico di membri in modo che l'endpoint si connetta solo a tali istanze database. Queste istanze sono già nel livello di promozione più basso, rendendo improbabile che una di esse venga promossa a istanza primaria. Se una di esse venisse promossa a istanza primaria, diventerebbe irraggiungibile tramite questo endpoint perché abbiamo specificato il tipo `READER` anziché `ANY`.

Nell'esempio seguente viene illustrato il comando di creazione e modifica di endpoint e l'output JSON di esempio che mostra lo stato iniziale e modificato dell'endpoint personalizzato.

```
$ aws rds create-db-cluster-endpoint --region $REGION \
    --db-cluster-identifier custom-endpoint-demo \
    --db-cluster-endpoint-identifier big-instances --endpoint-type reader
{
    "EndpointType": "CUSTOM",
    "Endpoint": "big-instances.cluster-custom-c7tj4example.ca-central-1.rds.amazonaws.com",
    "DBClusterEndpointIdentifier": "big-instances",
    "DBClusterIdentifier": "custom-endpoint-demo",
    "StaticMembers": [],
    "DBClusterEndpointResourceIdentifier": "cluster-endpoint-W7PE3TLLFNSHXQKFU6J6NV5FHU",
    "ExcludedMembers": [],
    "CustomEndpointType": "READER",
    "Status": "creating",
    "DBClusterEndpointArn": "arn:aws:rds:ca-central-1:111122223333:cluster-endpoint:big-instances"
}

$ aws rds modify-db-cluster-endpoint --db-cluster-endpoint-identifier big-instances \
    --static-members custom-endpoint-demo-09 custom-endpoint-demo-10 --region $REGION
{
    "EndpointType": "CUSTOM",
    "ExcludedMembers": [],
    "DBClusterEndpointIdentifier": "big-instances",
    "DBClusterEndpointResourceIdentifier": "cluster-endpoint-W7PE3TLLFNSHXQKFU6J6NV5FHU",
    "CustomEndpointType": "READER",
    "DBClusterEndpointArn": "arn:aws:rds:ca-central-1:111122223333:cluster-endpoint:big-instances",
    "StaticMembers": [
        "custom-endpoint-demo-10",
        "custom-endpoint-demo-09"
    ],
    "Status": "modifying",
    "Endpoint": "big-instances.cluster-custom-c7tj4example.ca-central-1.rds.amazonaws.com",
    "DBClusterIdentifier": "custom-endpoint-demo"
}
```

L'endpoint `READER` predefinito per il cluster può connettersi alle istanze database piccole o grandi, rendendo poco pratico prevedere le prestazioni e la scalabilità delle query quando il cluster diventa occupato. Per dividere in modo pulito il carico di lavoro tra i gruppi di istanze database, puoi ignorare l'endpoint `READER` predefinito e creare un secondo endpoint personalizzato che si connette a tutte le altre istanze database. L'esempio seguente effettua ciò creando un endpoint personalizzato e quindi aggiungendo un elenco di esclusioni. Qualsiasi altra istanza database aggiunta al cluster successivamente verrà inserita automaticamente in questo endpoint. Il tipo `ANY` indica che questo endpoint è associato a otto istanze in totale: l'istanza primaria e altre sette repliche di Aurora. Se l'esempio avesse specificato il tipo `READER`, l'endpoint personalizzato sarebbe associato solo alle sette repliche di Aurora.

```
$ aws rds create-db-cluster-endpoint --region $REGION --db-cluster-identifier custom-endpoint-demo \
    --db-cluster-endpoint-identifier small-instances --endpoint-type any
{
    "Status": "creating",
    "DBClusterEndpointIdentifier": "small-instances",
    "CustomEndpointType": "ANY",
    "EndpointType": "CUSTOM",
    "Endpoint": "small-instances.cluster-custom-c7tj4example.ca-central-1.rds.amazonaws.com",
    "StaticMembers": [],
    "ExcludedMembers": [],
    "DBClusterIdentifier": "custom-endpoint-demo",
    "DBClusterEndpointArn": "arn:aws:rds:ca-central-1:111122223333:cluster-endpoint:small-instances",
    "DBClusterEndpointResourceIdentifier": "cluster-endpoint-6RDDXQOC3AKKZT2PRD7ST37BMY"
}

$ aws rds modify-db-cluster-endpoint --db-cluster-endpoint-identifier small-instances \
    --excluded-members custom-endpoint-demo-09 custom-endpoint-demo-10 --region $REGION
{
    "DBClusterEndpointIdentifier": "small-instances",
    "DBClusterEndpointArn": "arn:aws:rds:ca-central-1:c7tj4example:cluster-endpoint:small-instances",
    "DBClusterEndpointResourceIdentifier": "cluster-endpoint-6RDDXQOC3AKKZT2PRD7ST37BMY",
    "CustomEndpointType": "ANY",
    "Endpoint": "small-instances.cluster-custom-c7tj4example.ca-central-1.rds.amazonaws.com",
    "EndpointType": "CUSTOM",
    "ExcludedMembers": [
        "custom-endpoint-demo-09",
        "custom-endpoint-demo-10"
    ],
    "StaticMembers": [],
    "DBClusterIdentifier": "custom-endpoint-demo",
    "Status": "modifying"
}
```

L'esempio seguente controlla lo stato degli endpoint per questo cluster. Il cluster ha ancora il suo endpoint del cluster originale, con `EndPointType` `WRITER`, che sarà comunque utilizzato per l'amministrazione, l'ETL e altre operazioni di scrittura. Ha ancora il suo endpoint `READER` originale, che non usi perché ogni connessione verrebbe diretta a una istanza database piccola o grande. Gli endpoint personalizzati rendono questo comportamento prevedibile, con connessioni garantite per l'utilizzo di una delle istanze database piccole o grandi in base all'endpoint specificato.

```
$ aws rds describe-db-cluster-endpoints --region $REGION
{
    "DBClusterEndpoints": [
        {
            "EndpointType": "WRITER",
            "Endpoint": "custom-endpoint-demo.cluster-c7tj4example.ca-central-1.rds.amazonaws.com",
            "Status": "available",
            "DBClusterIdentifier": "custom-endpoint-demo"
        },
        {
            "EndpointType": "READER",
            "Endpoint": "custom-endpoint-demo.cluster-ro-c7tj4example.ca-central-1.rds.amazonaws.com",
            "Status": "available",
            "DBClusterIdentifier": "custom-endpoint-demo"
        },
        {
            "Endpoint": "small-instances.cluster-custom-c7tj4example.ca-central-1.rds.amazonaws.com",
            "CustomEndpointType": "ANY",
            "DBClusterEndpointArn": "arn:aws:rds:ca-central-1:111122223333:cluster-endpoint:small-instances",
            "ExcludedMembers": [
                "custom-endpoint-demo-09",
                "custom-endpoint-demo-10"
            ],
            "DBClusterEndpointResourceIdentifier": "cluster-endpoint-6RDDXQOC3AKKZT2PRD7ST37BMY",
            "DBClusterIdentifier": "custom-endpoint-demo",
            "StaticMembers": [],
            "EndpointType": "CUSTOM",
            "DBClusterEndpointIdentifier": "small-instances",
            "Status": "modifying"
        },
        {
            "Endpoint": "big-instances.cluster-custom-c7tj4example.ca-central-1.rds.amazonaws.com",
            "CustomEndpointType": "READER",
            "DBClusterEndpointArn": "arn:aws:rds:ca-central-1:111122223333:cluster-endpoint:big-instances",
            "ExcludedMembers": [],
            "DBClusterEndpointResourceIdentifier": "cluster-endpoint-W7PE3TLLFNSHXQKFU6J6NV5FHU",
            "DBClusterIdentifier": "custom-endpoint-demo",
            "StaticMembers": [
                "custom-endpoint-demo-10",
                "custom-endpoint-demo-09"
            ],
            "EndpointType": "CUSTOM",
            "DBClusterEndpointIdentifier": "big-instances",
            "Status": "available"
        }
    ]
}
```

Gli esempi finali dimostrano come le successive connessioni del database agli endpoint personalizzati avvengono alle varie istanze database nel cluster Aurora. L'endpoint `small-instances` si connette sempre alle istanze database `db.r4.4xlarge` che sono gli host con un numero inferiore in questo cluster.

```
$ mysql -h small-instances.cluster-custom-c7tj4example.ca-central-1.rds.amazonaws.com -u $MYUSER -p
mysql> select @@aurora_server_id;
+-------------------------+
| @@aurora_server_id      |
+-------------------------+
| custom-endpoint-demo-02 |
+-------------------------+

$ mysql -h small-instances.cluster-custom-c7tj4example.ca-central-1.rds.amazonaws.com -u $MYUSER -p
mysql> select @@aurora_server_id;
+-------------------------+
| @@aurora_server_id      |
+-------------------------+
| custom-endpoint-demo-07 |
+-------------------------+

$ mysql -h small-instances.cluster-custom-c7tj4example.ca-central-1.rds.amazonaws.com -u $MYUSER -p
mysql> select @@aurora_server_id;
+-------------------------+
| @@aurora_server_id      |
+-------------------------+
| custom-endpoint-demo-01 |
+-------------------------+
```

L'endpoint `big-instances` si connette sempre alle istanze database `db.r4.16xlarge` che sono i due host con il numero più alto in questo cluster.

```
$ mysql -h big-instances.cluster-custom-c7tj4example.ca-central-1.rds.amazonaws.com -u $MYUSER -p
mysql> select @@aurora_server_id;
+-------------------------+
| @@aurora_server_id      |
+-------------------------+
| custom-endpoint-demo-10 |
+-------------------------+

$ mysql -h big-instances.cluster-custom-c7tj4example.ca-central-1.rds.amazonaws.com -u $MYUSER -p
mysql> select @@aurora_server_id;
+-------------------------+
| @@aurora_server_id      |
+-------------------------+
| custom-endpoint-demo-09 |
+-------------------------+
```