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à.
Creazione di un proxy RDS
Per gestire le connessioni per un cluster DB, crea un proxy. Puoi associare un proxy a un cluster database Aurora MySQL o Aurora PostgreSQL.
Per creare un proxy
-
Accedi a AWS Management Console e apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/
. -
Nel riquadro di navigazione scegli Proxies (Proxy).
-
Scegli Create proxy (Crea proxy).
-
Scegli tutte le impostazioni per il tuo proxy.
Per la configurazione del proxy, fornire informazioni per quanto segue:
-
Famiglia di motori. Questa impostazione determina il protocollo di rete del database riconosciuto dal proxy quando interpreta il traffico di rete verso e dal database. Per Aurora MySQL, scegli MariaDB and MySQL (MariaDB e MySQL). Per Aurora PostgreSQL, scegli PostgreSQL.
-
Identificatore proxy. Specificane un nome univoco all'interno dell'ID AWS dell'account e AWS della regione corrente.
-
Timeout della connessione client per inattività. Scegli un periodo di tempo in cui una connessione client può rimanere inattiva prima che il proxy la chiuda. Il valore predefinito è 1.800 secondi (30 minuti). Una connessione client è considerata inattiva quando l'applicazione non invia una nuova richiesta entro il tempo specificato dopo il completamento della richiesta precedente. La connessione al database sottostante rimane aperta e viene restituita al pool di connessioni. Pertanto, è disponibile per essere riutilizzata per nuove connessioni client.
Per fare in modo che il proxy rimuova in modo proattivo le connessioni obsolete, riducete il timeout della connessione del client inattivo. Quando il carico di lavoro aumenta, per risparmiare sui costi di creazione delle connessioni, aumenta il timeout della connessione dei client inattivi».
Per la configurazione del gruppo di destinazione, fornire informazioni per quanto segue:
-
Database. Scegli un' cluster Aurora DB a cui accedere tramite questo proxy. L'elenco include solo istanze DB e cluster con motori di database compatibili, versioni del motore e altre impostazioni. Se l'elenco è vuoto, crea una nuova istanza database o un cluster compatibile con RDS Proxy. A tale scopo, segui la procedura in Creazione di un cluster database Amazon Aurora. Quindi prova a creare nuovamente il proxy.
-
Connessioni massime del pool di connessioni. Specificare un valore compreso tra 1 e 100. Questa impostazione rappresenta la percentuale del valore
max_connections
che RDS Proxy può utilizzare per le relative connessioni. Se intendi utilizzare un solo proxy con questa istanza database o cluster, puoi impostarlo su 100. Per informazioni dettagliate su come RDS Proxy utilizza questa impostazione, consulta MaxConnectionsPercent. -
Filtri di pinning della sessione. (Facoltativo) Questa opzione consente di forzare Server proxy per Amazon RDS a non eseguire il pin per determinati tipi di stati di sessione rilevati. Ciò elude le misure di sicurezza predefinite per il multiplexing delle connessioni al database tra connessioni client. Attualmente, l'impostazione non è supportata per PostgreSQL. L'unica scelta è.
EXCLUDE_VARIABLE_SETS
L'attivazione di questa impostazione può far sì che le variabili di sessione di una connessione influiscano sulle altre connessioni. Ciò può causare errori o problemi di correttezza se le query dipendono dai valori delle variabili di sessione impostati al di fuori della transazione corrente. Valuta l'utilizzo di questa opzione dopo aver verificato che sia sicuro per le applicazioni condividere le connessioni al database tra connessioni client.
I seguenti modelli possono essere considerati sicuri:
-
Istruzioni
SET
in cui non viene apportata alcuna modifica al valore della variabile di sessione effettiva, ovvero non viene apportata alcuna modifica alla variabile di sessione. -
Modifichi il valore della variabile di sessione ed esegui un'istruzione nella stessa transazione.
Per ulteriori informazioni, consulta Evitare il blocco di un proxy RDS.
-
-
Timeout del prestito di connessione. In alcuni casi, è possibile che il proxy utilizzi talvolta tutte le connessioni di database disponibili. In questi casi, è possibile specificare per quanto tempo il proxy attende che una connessione di database diventi disponibile prima di restituire un errore di timeout. È possibile specificare un periodo fino a un massimo di cinque minuti. Questa impostazione si applica solo quando il proxy ha il numero massimo di connessioni aperte e tutte le connessioni sono già in uso.
-
Query di inizializzazione. (Facoltativo) Aggiungi una query di inizializzazione o modifica quella corrente. Puoi specificare una o più istruzioni SQL per l'esecuzione del proxy all'apertura di ogni nuova connessione al database. L'impostazione viene in genere utilizzata con
SET
le istruzioni per assicurarsi che ogni connessione abbia impostazioni identiche. Assicurati che la query che aggiungi sia valida. Per includere più variabili in una singolaSET
istruzione, utilizzate i separatori di virgole. Per esempio:SET
variable1
=value1
,variable2
=value2
Per più istruzioni, utilizzare il punto e virgola come separatore.
Per l'autenticazione, fornisci informazioni per quanto segue:
-
Ruolo IAM. Scegli un ruolo IAM che disponga dell'autorizzazione per accedere ai segreti Secrets Manager scelti in precedenza. In alternativa, puoi creare un nuovo ruolo IAM da. AWS Management Console
-
Segreti di Secrets Manager. Scegli almeno un segreto di Secrets Manager che contenga le credenziali utente del database che consentano al proxy di accedere al cluster .
-
Tipo di autenticazione client. Scegli il tipo di autenticazione utilizzato dal proxy per le connessioni dei client. La tua scelta si applica a tutti i segreti di Secrets Manager che associ a questo proxy. Se devi specificare un tipo di autenticazione client diverso per ogni segreto, crea il proxy utilizzando invece l'API AWS CLI o l'API.
-
Autenticazione IAM. Scegli se richiedere o non consentire l'autenticazione IAM per le connessioni al proxy. La tua scelta si applica a tutti i segreti di Secrets Manager che associ a questo proxy. Se devi specificare un'autenticazione IAM diversa per ogni segreto, crea il proxy utilizzando invece l'API AWS CLI o l'API.
Per Connettività, fornire informazioni per quanto segue:
-
Richiedi Transport Layer Security. Scegli questa impostazione se desideri che il proxy applichi TLS/SSL per tutte le connessioni client. Per una connessione crittografata o non crittografata a un proxy, il proxy utilizza la stessa impostazione di crittografia quando effettua la connessione al database sottostante.
-
Sottoreti. Questo campo è precompilato con tutte le sottoreti associate al VPC. Rimuovere le sottoreti non necessarie per questo proxy. Devi lasciare almeno due sottoreti.
Configurazione di connettività aggiuntiva:
-
Gruppo di sicurezza VPC. Scegli un gruppo di sicurezza VPC esistente. In alternativa, puoi creare un nuovo gruppo di sicurezza da AWS Management Console. È necessario configurare le regole in entrata per consentire alle applicazioni di accedere al proxy. È inoltre necessario configurare le regole in uscita per consentire il traffico proveniente dalle destinazioni del database.
Nota
Questo gruppo di sicurezza deve consentire le connessioni dal proxy al database. Lo stesso gruppo di protezione viene utilizzato per l'ingresso dalle applicazioni al proxy e per l'uscita dal proxy al database. Si supponga, ad esempio, di utilizzare lo stesso gruppo di protezione per il database e il proxy. In questo caso, assicurarsi di specificare che le risorse di tale gruppo di protezione possono comunicare con altre risorse dello stesso gruppo di protezione.
Quando si utilizza un VPC condiviso, non è possibile utilizzare il gruppo di sicurezza predefinito per il VPC o uno appartenente a un altro account. Scegli un gruppo di sicurezza appartenente all'account. Se non esiste, creane uno. Per ulteriori informazioni su questa limitazione, consulta Work with shared VPCs.
RDS implementa un proxy su più zone di disponibilità per garantire una disponibilità elevata. Per abilitare la comunicazione tra zone di disponibilità per un proxy di questo tipo, la lista di controllo degli accessi (ACL) alla rete della sottorete proxy deve consentire l'uscita specifica della porta del motore e l'ingresso di tutte le porte. Per ulteriori informazioni sulla rete ACLs, consulta Controllare il traffico verso le sottoreti utilizzando la rete. ACLs Se l'ACL di rete per il proxy e la destinazione sono identici, devi aggiungere una regola di ingresso del protocollo TCP in cui Origine è impostata sul VPC CIDR. È inoltre necessario aggiungere una regola di uscita del protocollo TCP specifica per la porta del motore in cui la destinazione è impostata sul VPC CIDR.
(Facoltativo) Fornire una configurazione avanzata:
-
Enable enhanced logging (Abilita registrazione avanzata. Puoi attivare questa impostazione per risolvere problemi di compatibilità o prestazioni del proxy.
Quando questa impostazione è abilitata, RDS Proxy include informazioni dettagliate sulle prestazioni del proxy nei suoi registri. Queste informazioni consentono di eseguire il debug di problemi relativi al comportamento SQL o alle prestazioni e alla scalabilità delle connessioni proxy. Pertanto, abilita questa impostazione solo per il debug e quando sono state adottate misure di sicurezza per salvaguardare le informazioni sensibili che appaiono nei registri.
Per ridurre al minimo il sovraccarico associato al proxy, RDS Proxy disattiva automaticamente questa impostazione 24 ore dopo l'attivazione. Abilitare temporaneamente la risoluzione di un problema specifico.
-
-
Scegli Create Proxy (Crea Proxy).
Per creare un proxy utilizzando il AWS CLI, chiamate il create-db-proxycomando con i seguenti parametri obbligatori:
--db-proxy-name
--engine-family
--role-arn
--auth
--vpc-subnet-ids
Il valore --engine-family
prevede la distinzione tra lettere maiuscole e minuscole.
Esempio
In Linux, macOS, oppure Unix:
aws rds create-db-proxy \ --db-proxy-name
proxy_name
\ --engine-family { MYSQL | POSTGRESQL | SQLSERVER } \ --authProxyAuthenticationConfig_JSON_string
\ --role-arniam_role
\ --vpc-subnet-idsspace_separated_list
\ [--vpc-security-group-idsspace_separated_list
] \ [--require-tls | --no-require-tls] \ [--idle-client-timeoutvalue
] \ [--debug-logging | --no-debug-logging] \ [--tagscomma_separated_list
]
In Windows:
aws rds create-db-proxy ^ --db-proxy-name
proxy_name
^ --engine-family { MYSQL | POSTGRESQL | SQLSERVER } ^ --authProxyAuthenticationConfig_JSON_string
^ --role-arniam_role
^ --vpc-subnet-idsspace_separated_list
^ [--vpc-security-group-idsspace_separated_list
] ^ [--require-tls | --no-require-tls] ^ [--idle-client-timeoutvalue
] ^ [--debug-logging | --no-debug-logging] ^ [--tagscomma_separated_list
]
Di seguito è riportato un esempio di valore JSON per l'opzione --auth
. Questo esempio
applica un tipo di autenticazione client diverso a ciascun segreto.
[ { "Description": "proxy description 1", "AuthScheme": "SECRETS", "SecretArn": "arn:aws:secretsmanager:us-west-2:123456789123:secret/1234abcd-12ab-34cd-56ef-1234567890ab", "IAMAuth": "DISABLED", "ClientPasswordAuthType": "POSTGRES_SCRAM_SHA_256" }, { "Description": "proxy description 2", "AuthScheme": "SECRETS", "SecretArn": "arn:aws:secretsmanager:us-west-2:111122223333:secret/1234abcd-12ab-34cd-56ef-1234567890cd", "IAMAuth": "DISABLED", "ClientPasswordAuthType": "POSTGRES_MD5" }, { "Description": "proxy description 3", "AuthScheme": "SECRETS", "SecretArn": "arn:aws:secretsmanager:us-west-2:111122221111:secret/1234abcd-12ab-34cd-56ef-1234567890ef", "IAMAuth": "REQUIRED" } ]
Suggerimento
Se non conosci già la sottorete IDs da utilizzare per il --vpc-subnet-ids
parametro, consulta Configurazione dei prerequisiti di rete per RDS Proxy alcuni esempi su come trovarli.
Nota
Il gruppo di protezione deve consentire l'accesso al database a cui si connette il proxy. Lo stesso gruppo di protezione viene utilizzato per l'ingresso dalle applicazioni al proxy e per l'uscita dal proxy al database. Si supponga, ad esempio, di utilizzare lo stesso gruppo di protezione per il database e il proxy. In questo caso, assicurarsi di specificare che le risorse di tale gruppo di protezione possono comunicare con altre risorse dello stesso gruppo di protezione.
Quando si utilizza un VPC condiviso, non è possibile utilizzare il gruppo di sicurezza predefinito per il VPC o uno appartenente a un altro account. Scegli un gruppo di sicurezza appartenente all'account. Se non esiste, creane uno. Per ulteriori informazioni su questa limitazione, consulta Work with shared VPCs.
Per creare le associazioni corrette per il proxy, si usa anche il register-db-proxy-targetscomando. Specificare il tipo di gruppo di destinazione default
RDS Proxy crea automaticamente un gruppo di destinazione con questo nome quando si crea ogni proxy.
aws rds register-db-proxy-targets --db-proxy-name
value
[--target-group-nametarget_group_name
] [--db-instance-identifiersspace_separated_list
] # rds db instances, or [--db-cluster-identifierscluster_id
] # rds db cluster (all instances)
Per creare un proxy RDS, chiama l'operazione API Amazon RDS Create. DBProxy Passi un parametro con la struttura dei AuthConfigdati.
RDS Proxy crea automaticamente un gruppo di destinazione denominato default
quando si crea ogni proxy. È possibile associare un cluster Aurora al gruppo di destinazione chiamando la funzione DBProxy Register Targets.