RDSProxy Amazon - Amazon Relational Database Service

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à.

RDSProxy Amazon

Utilizzando Amazon RDS Proxy, puoi consentire alle tue applicazioni di raggruppare e condividere connessioni al database per migliorarne la scalabilità. RDS Il proxy rende le applicazioni più resistenti agli errori del database connettendosi automaticamente a un'istanza DB in standby e preservando al contempo le connessioni delle applicazioni. Utilizzando RDS Proxy, puoi anche applicare AWS Identity and Access Management (IAM) l'autenticazione per i database e archiviare in modo sicuro le credenziali in. AWS Secrets Manager

Utilizzando RDS Proxy, è possibile gestire picchi imprevedibili nel traffico del database. In caso contrario, questi picchi potrebbero causare problemi dovuti a connessioni con sottoscrizioni eccessive o alla creazione di nuove connessioni a una velocità elevata. RDS Il proxy stabilisce un pool di connessioni al database e riutilizza le connessioni in questo pool. Questo approccio evita la memoria e il CPU sovraccarico dovuti all'apertura di una nuova connessione al database ogni volta. Per proteggere un database dall'eccesso di sottoscrizioni, è possibile controllare il numero di connessioni al database che vengono create.

RDSIl proxy mette in coda o limita le connessioni alle applicazioni che non possono essere servite immediatamente dal pool di connessioni. Sebbene le latenze possano aumentare, l'applicazione può continuare a dimensionare senza errori improvvisi o senza sovraccaricare il database. Se le richieste di connessione superano i limiti specificati, il RDS proxy rifiuta le connessioni alle applicazioni (ovvero riduce il carico). Allo stesso tempo, mantiene prestazioni prevedibili per il carico che RDS può soddisfare la capacità disponibile.

È possibile ridurre il sovraccarico necessario per elaborare le credenziali e stabilire una connessione sicura per ogni nuova connessione. RDS Il proxy può gestire parte di questo lavoro per conto del database.

RDSIl proxy è completamente compatibile con le versioni del motore supportate. È possibile abilitare RDS Proxy per la maggior parte delle applicazioni senza modifiche al codice.

Disponibilità di regioni e versioni

Il supporto varia a seconda delle versioni specifiche di ciascun motore di database e a seconda delle Regioni AWS. Per ulteriori informazioni sulla disponibilità della versione e della regione di Amazon RDS with RDS Proxy, consultaRegioni e motori DB supportati per Amazon RDS Proxy.

Quote e limitazioni per Proxy RDS

Le seguenti quote e limitazioni si applicano a RDS Proxy:

  • Ogni Account AWS ID è limitato a 20 proxy. Se la tua applicazione richiede più proxy, richiedi un aumento tramite la pagina Service Quotas all'interno di. AWS Management Console Nella pagina Service Quotas, seleziona Amazon Relational Database Service (AmazonRDS) e individua i proxy per richiedere un aumento della quota. AWS puoi aumentare automaticamente la tua quota o, in attesa di una revisione della tua richiesta entro. AWS Support

  • Ogni proxy può avere fino a 200 segreti Secrets Manager associati. Pertanto, ogni proxy può connettersi a un massimo di 200 account utente diversi in qualsiasi momento.

  • Ogni proxy ha un endpoint predefinito. Puoi anche aggiungere fino a 20 endpoint proxy per ogni proxy. È possibile creare, visualizzare, modificare ed eliminare questi endpoint.

  • Per le istanze RDS DB nelle configurazioni di replica, è possibile associare un proxy solo all'istanza DB writer, non una replica di lettura.

  • Il RDS proxy deve trovarsi nello stesso cloud privato virtuale () del database. VPC Sebbene il database non sia accessibile pubblicamente, il proxy può esserlo. Ad esempio, se state prototipando il database su un host locale, non potete connettervi al proxy a meno che non impostiate i requisiti di rete necessari per consentire la connessione al proxy. Questo perché l'host locale è esterno a quello del VPC proxy.

  • Non è possibile utilizzare RDS Proxy con un programma la VPC cui tenancy è impostata su. dedicated

  • Se utilizzi RDS Proxy con un con IAM autenticazione abilitata, controlla l'autenticazione dell'utente. Gli utenti che si connettono tramite un proxy devono eseguire l'autenticazione con le credenziali di accesso. Per informazioni dettagliate su Secrets Manager e IAM il supporto in RDS Proxy, vedere Configurazione delle credenziali del database in AWS Secrets Manager Proxy RDS eConfigurazione dei criteri AWS Identity and Access Management (IAM) per RDS Proxy.

  • Non è possibile utilizzare RDS Proxy con funzionalità personalizzate DNS quando si utilizza la convalida SSL del nome host.

  • Ogni proxy può essere associato a una singola istanza database di destinazione. Tuttavia, è possibile associare più proxy alla stessa istanza .

  • Qualsiasi istruzione con una dimensione del testo maggiore di 16 KB fa sì che il proxy effettui il pinning della sessione nella connessione corrente.

  • Per alcune regioni sono presenti restrizioni relative alla zona di disponibilità (AZ) da considerare durante la creazione del proxy. La regione Stati Uniti orientali (Virginia settentrionale) non supporta il RDS proxy nella zona di disponibilità. use1-az3 La regione Stati Uniti occidentali (California settentrionale) non supporta il RDS proxy nella zona di usw1-az2 disponibilità. Quando selezioni le sottoreti durante la creazione del proxy, assicurati di non scegliere sottoreti nelle zone di disponibilità sopra menzionate.

  • Attualmente, RDS Proxy non supporta alcuna chiave di contesto di condizione globale.

    Per ulteriori informazioni sulle chiavi di contesto della condizione globale, consulta le chiavi di contesto della condizione AWS globale nella Guida per l'IAMutente.

  • Non è possibile utilizzare RDS Proxy con RDS Custom for SQL Server.

  • Per riflettere qualsiasi modifica del gruppo di parametri del database apportata al proxy, è necessario riavviare l'istanza anche se si sceglie di applicare immediatamente le modifiche. Per i parametri a livello di cluster, è necessario un riavvio a livello di cluster.

  • Il proxy crea automaticamente l'utente rdsproxyadmin DB quando si registra una destinazione proxy. L'eliminazione o la modifica dell'rdsproxyadminutente o delle relative autorizzazioni potrebbe influire sulla disponibilità del proxy per l'applicazione.

Per le altre limitazioni di ciascun motore di database, consulta le sezioni riportate di seguito:

Limitazioni aggiuntive RDS per MariaDB

Le seguenti limitazioni aggiuntive si applicano ai database RDS Proxy with RDS for MariadB:

  • Attualmente, tutti i proxy sono in ascolto di MariaDB sulla porta 3306. I proxy si connettono ancora al database utilizzando la porta specificata nelle impostazioni del database.

  • Non puoi usare RDS Proxy con database MariadB autogestiti nelle istanze Amazon. EC2

  • Non è possibile utilizzare RDS Proxy con un'istanza DB RDS for MariaDB il cui parametro read_only nel relativo gruppo di parametri DB è impostato su. 1

  • RDSIl proxy non supporta la modalità compressa MariadB. Ad esempio, non supporta la compressione utilizzata dalle opzioni --compress o -C del comando mysql.

  • Alcune SQL istruzioni e funzioni possono modificare lo stato della connessione senza causare il blocco. Per il comportamento del pinning più aggiornato, consulta Evitare di bloccare un proxy RDS.

  • RDSIl proxy non supporta il plugin MariadBauth_ed25519.

  • RDSIl proxy non supporta la versione 1.3 di Transport Layer Security (TLS) per i database MariaDB.

  • Le connessioni al database che elaborano un GET DIAGNOSTIC comando potrebbero restituire informazioni imprecise quando RDS Proxy riutilizza la stessa connessione al database per eseguire un'altra query. Ciò può accadere quando RDS Proxy multiplexa le connessioni al database. Per ulteriori informazioni, consulta Panoramica dei concetti relativi al proxy RDS.

  • RDSIl proxy attualmente non supporta l'caching_sha2_passwordopzione ClientPasswordAuthType per MariadB.

Importante

Per i proxy associati ai database MariaDB, non impostare il parametro di configurazione sql_auto_is_null su true o un valore diverso da zero nella query di inizializzazione. Ciò potrebbe causare un comportamento non corretto dell'applicazione.

Limitazioni aggiuntive RDS per Microsoft SQL Server

Le seguenti limitazioni aggiuntive si applicano ai database RDS Proxy with RDS for Microsoft SQL Server:

  • Il numero di segreti di Gestione dei segreti da creare per un proxy dipende dal confronto utilizzato dall'istanza database. Supponi, ad esempio, che l'istanza database utilizzi il confronto con distinzione tra lettere maiuscole e minuscole. Se l'applicazione accetta sia "Admin" che "admin", il proxy necessita di due segreti separati. Per ulteriori informazioni sulle regole di confronto in SQL Server, consulta la documentazione di Microsoft SQL Server.

  • RDSIl proxy non supporta le connessioni che utilizzano Active Directory.

  • Non è possibile utilizzare IAM l'autenticazione con client che non supportano le proprietà dei token. Per ulteriori informazioni, consulta Considerazioni per la connessione a un proxy con Microsoft SQL Server.

  • I risultati di @@IDENTITY, @@ROWCOUNT e SCOPE_IDENTITY non sono sempre accurati. Per ovviare al problema, recupera i valori nella stessa istruzione di sessione per assicurarti che restituiscano le informazioni corrette.

  • Se la connessione utilizza più set di risultati attivi (MARS), RDS Proxy non esegue le query di inizializzazione. Per informazioni suMARS, consulta la documentazione di Microsoft SQL Server.

  • Attualmente, RDS Proxy non supporta RDS le istanze DB di SQL Server eseguite sulla versione principale SQLServer 2022.

  • RDSIl proxy non supporta RDS le istanze di SQL Server DB eseguite sulla versione principale SQLServer 2014.

  • RDSIl proxy non supporta le applicazioni client che non sono in grado di gestire più messaggi di risposta in un unico TLS record.

Limitazioni aggiuntive RDS per For My SQL

Le seguenti limitazioni aggiuntive si applicano ai SQL database RDS Proxy with RDS for My:

  • RDSIl supporto proxy per caching_sha2_password l'autenticazione richiede una connessione sicura (TLS).

  • RDScaching_sha2_passwordÈ noto che il supporto proxy per presenta problemi di compatibilità con alcune versioni del driver go-sql.

  • Quando si utilizza il driver My SQL 8.4 C, è mysql_stmt_bind_named_param API possibile che si formino pacchetti non corretti se il numero dei parametri supera il numero dei segnaposto in una dichiarazione preparata. Ciò si traduce in risposte errate. Per ulteriori informazioni, vedi La mia segnalazione di SQL bug.

  • Attualmente, tutti i proxy ascoltano sulla porta 3306 di My. SQL I proxy si connettono ancora al database utilizzando la porta specificata nelle impostazioni del database.

  • In alcune istanze, non è possibile utilizzare RDS Proxy con database My SQL gestiti in modo automatico. EC2

  • Non è possibile utilizzare RDS Proxy con un'istanza RDS for My SQL DB il cui read_only parametro nel relativo gruppo di parametri DB è impostato su. 1

  • RDSIl proxy non supporta la mia modalità SQL compressa. Ad esempio, non supporta la compressione utilizzata dalle opzioni --compress o -C del comando mysql.

  • Le connessioni al database che elaborano un GET DIAGNOSTIC comando potrebbero restituire informazioni imprecise quando RDS Proxy riutilizza la stessa connessione al database per eseguire un'altra query. Ciò può accadere quando RDS Proxy multiplexa le connessioni al database.

  • Alcune SQL istruzioni e funzioni, ad esempio, SET LOCAL possono modificare lo stato della connessione senza causare il blocco. Per il comportamento del pinning più aggiornato, consulta Evitare di bloccare un proxy RDS.

  • L'utilizzo della ROW_COUNT() funzione in una query con più istruzioni non è supportato.

  • RDSIl proxy non supporta le applicazioni client che non sono in grado di gestire più messaggi di risposta in un unico TLS record.

Importante

Per i proxy associati a I miei SQL database, non impostate il parametro di configurazione su true o un valore diverso sql_auto_is_null da zero nella query di inizializzazione. Ciò potrebbe causare un comportamento non corretto dell'applicazione.

Limitazioni aggiuntive per Postgre RDS SQL

Le seguenti limitazioni aggiuntive si applicano ai database RDS Proxy with RDS for SQL Postgre:

  • RDSIl proxy non supporta i filtri di blocco delle sessioni per Postgre. SQL

  • Attualmente, tutti i proxy eseguono l'ascolto sulla porta 5432 per Postgre. SQL

  • Per PostgreSQL, RDS Proxy attualmente non supporta l'annullamento di una query da un client emettendo un. CancelRequest Questo è il caso, ad esempio, di quando si annulla una query a esecuzione prolungata in una sessione psql interattiva utilizzando Ctrl+C.

  • I risultati della funzione Postgre SQL lastval non sono sempre accurati. Come soluzione alternativa, usa l'istruzione con la INSERTclausola. RETURNING

  • RDSIl proxy attualmente non supporta la modalità di replica in streaming.

  • RDSPer Postgre SQL 16, le modifiche al scram_iterations valore influiscono esclusivamente sul processo di autenticazione tra il proxy e il database. In particolare, se si configura ClientPasswordAuthType toscram-sha-256, eventuali personalizzazioni apportate al scram_iterations valore non influiscono sull'autenticazione della password. client-to-proxy Invece, il valore di iterazione per l'autenticazione client-to-proxy tramite password è fissato a 4096.

  • Il default database deve esistere.

  • Se si utilizza ALTER ROLE o si SET ROLE desidera modificare il ruolo dell'utente, le connessioni successive dell'utente al proxy potrebbero non utilizzare questa impostazione del ruolo, se tali connessioni presentano un blocco. Per evitare che ciò si verifichi, quando si utilizza il proxy, è necessario utilizzarlo SET ROLE nella query di inizializzazione del proxy. Per ulteriori informazioni, vedere Interrogazione di inizializzazione in. Creazione di un RDS proxy

Importante

Per i proxy esistenti con database Postgre, se si modifica l'autenticazione del SQL database in modo da utilizzarla SCRAM solo, il proxy diventa non disponibile per un massimo di 60 secondi. Per evitare il problema, procedi in uno dei seguenti modi:

  • Assicurati che il database consenta entrambe le autenticazioni SCRAM e MD5.

  • Per utilizzare solo l'autenticazione SCRAM, crea un nuovo proxy, esegui la migrazione del traffico dell'applicazione sul nuovo proxy, quindi elimina il proxy precedentemente associato al database.