Connessione automatica di una funzione Lambda e di un cluster database Aurora - Amazon Aurora

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

Connessione automatica di una funzione Lambda e di un cluster database Aurora

È possibile utilizzare la console Amazon RDS per semplificare la configurazione di una connessione tra una funzione Lambda e un cluster database Aurora. Spesso, il cluster database si trova in una sottorete privata all'interno di un VPC. La funzione Lambda può essere utilizzata dalle applicazioni per accedere al cluster database privato.

L'immagine seguente mostra una connessione diretta tra il cluster database e la funzione Lambda.

Connessione automatica di un cluster database Aurora a una funzione Lambda

È possibile configurare la connessione tra la funzione Lambda e il cluster database tramite RDS Proxy per migliorare le prestazioni e la resilienza del database. Spesso, le funzioni Lambda effettuano connessioni database brevi e frequenti che traggono vantaggio dal pool di connessioni offerto da RDS Proxy. È possibile sfruttare qualsiasi autenticazione AWS Identity and Access Management (IAM) già disponibile per le funzioni Lambda, anziché gestire le credenziali del database nel codice dell'applicazione Lambda. Per ulteriori informazioni, consulta Utilizzo di Server proxy per Amazon RDS per Aurora.

Quando si utilizza la console per connettersi a un proxy esistente, Amazon RDS aggiorna il gruppo di sicurezza proxy per consentire le connessioni dal cluster database e la funzione Lambda.

È anche possibile creare un nuovo proxy dalla stessa pagina della console. Quando si crea un proxy nella console, per accedere al cluster database, occorre inserire le credenziali del database o selezionare un segreto AWS Secrets Manager.

Connessione automatica di un cluster database Aurora a una funzione Lambda tramite RDS Proxy

Panoramica della connettività automatica a una funzione Lambda

Di seguito sono riportati i requisiti per connettere una funzione Lambda a un cluster database Aurora:

  • La funzione Lambda deve esistere nello stesso VPC del cluster database.

  • Attualmente, il cluster database non può essere un cluster database Aurora Serverless o parte di un database globale Aurora.

  • L'utente che configura la connettività deve disporre delle autorizzazioni per eseguire le seguenti operazioni Amazon RDS, Amazon EC2, Lambda, Secrets Manager e IAM:

    • Amazon RDS

      • rds:CreateDBProxies

      • rds:DescribeDBClusters

      • rds:DescribeDBProxies

      • rds:ModifyDBCluster

      • rds:ModifyDBProxy

      • rds:RegisterProxyTargets

    • Amazon EC2

      • ec2:AuthorizeSecurityGroupEgress

      • ec2:AuthorizeSecurityGroupIngress

      • ec2:CreateSecurityGroup

      • ec2:DeleteSecurityGroup

      • ec2:DescribeSecurityGroups

      • ec2:RevokeSecurityGroupEgress

      • ec2:RevokeSecurityGroupIngress

    • Lambda

      • lambda:CreateFunctions

      • lambda:ListFunctions

      • lambda:UpdateFunctionConfiguration

    • Secrets Manager

      • secretsmanager:CreateSecret

      • secretsmanager:DescribeSecret

    • IAM

      • iam:AttachPolicy

      • iam:CreateRole

      • iam:CreatePolicy

    • AWS KMS

      • kms:describeKey

Nota

Se il cluster database e la funzione Lambda si trovano in zone di disponibilità diverse, potrebbero essere addebitati costi tra zone di disponibilità all'account.

Quando si configura una connessione tra una funzione Lambda e un cluster database Aurora, Amazon RDS configura il gruppo di sicurezza VPC per la funzione e per il cluster database. Se si utilizza il proxy RDS, Amazon RDS configura anche il gruppo di sicurezza VPC per il proxy. Amazon RDS opera in base alla configurazione corrente dei gruppi di sicurezza associati al cluster database, alla funzione Lambda e al proxy, come descritto nella tabella seguente.

Configurazione del gruppo di sicurezza RDS corrente Configurazione del gruppo di sicurezza Lambda corrente Configurazione del gruppo di sicurezza proxy corrente Operazione RDS

Esistono uno o più gruppi di sicurezza associati al cluster database con un nome che corrisponde al modello rds-lambda-n o se un proxy è già connesso al cluster database, RDS verifica se il parametro TargetHealth di un proxy associato è AVAILABLE.

Un gruppo di sicurezza che corrisponde al modello non è stato modificato. Questo gruppo di sicurezza include una sola regola in entrata con il gruppo di sicurezza VPC della funzione Lambda o del proxy come l'origine.

Esistono uno o più gruppi di sicurezza associati alla funzione Lambda con un nome che corrisponde al modello lambda-rds-n o lambda-rdsproxy-n (dove n è un numero).

Un gruppo di sicurezza che corrisponde al modello non è stato modificato. Questo gruppo di sicurezza dispone di una sola regola in uscita con il gruppo di sicurezza VPC del cluster database o il proxy come la destinazione.

Esistono uno o più gruppi di sicurezza associati al proxy con un nome che corrisponde al modello rdsproxy-lambda-n (dove n è un numero).

Un gruppo di sicurezza che corrisponde al modello non è stato modificato. Questo gruppo di sicurezza dispone di regole in entrata e in uscita con i gruppi di sicurezza VPC della funzione Lambda e il cluster database.

Amazon RDS non esegue alcuna azione.

Una connessione era già stata configurata automaticamente tra la funzione Lambda, il proxy (opzionale) e il cluster database. Poiché esiste già una connessione tra la funzione, il proxy e il database, i gruppi di sicurezza non vengono modificati.

Si applica una delle due condizioni seguenti:

  • Non esiste alcun gruppo di sicurezza associato al cluster database con un nome che corrisponde al modello rds-lambda-n o se TargetHealth di un proxy associato è AVAILABLE.

  • Esiste almeno un gruppo di sicurezza associato al cluster database con un nome che corrisponde al modello rds-lambda-n o se TargetHealth di un proxy associato è AVAILABLE. Tuttavia, nessuno di questi gruppi di sicurezza può essere utilizzato per la connessione alla funzione Lambda.

Amazon RDS non può utilizzare un gruppo di sicurezza che non dispone di una regola in entrata con il gruppo di sicurezza VPC della funzione Lambda o del proxy come l'origine. Inoltre, Amazon RDS non può utilizzare un gruppo di sicurezza che è stato modificato. Esempi di modifiche sono l'aggiunta di una regola o la modifica della porta di una regola esistente.

Si applica una delle due condizioni seguenti:

  • Non esiste un gruppo di sicurezza associato alla funzione Lambda con un nome che corrisponde al modello lambda-rds-n o lambda-rdsproxy-n.

  • Esistono uno o più gruppi di sicurezza associati alla funzione Lambda con un nome che corrisponde al modello lambda-rds-n o lambda-rdsproxy-n. Tuttavia, Amazon RDS non può utilizzare nessuno di questi gruppi di sicurezza per la connessione al cluster database.

Amazon RDS non può utilizzare un gruppo di sicurezza che non dispone di una regola in uscita con il gruppo di sicurezza VPC del cluster database o del proxy come destinazione. Inoltre, Amazon RDS non può utilizzare un gruppo di sicurezza che è stato modificato.

Si applica una delle due condizioni seguenti:

  • Non esiste un gruppo di sicurezza associato al proxy con un nome che corrisponde al modello rdsproxy-lambda-n.

  • Esistono uno o più gruppi di sicurezza associati al proxy con un nome che corrisponde al modello rdsproxy-lambda-n. Tuttavia, Amazon RDS non può utilizzare nessuno di questi gruppi di sicurezza per la connessione al cluster database o alla funzione Lambda.

Amazon RDS non può utilizzare un gruppo di sicurezza che non dispone di una regola in entrata e in uscita con il gruppo di sicurezza VPC del cluster database e la funzione Lambda. Inoltre, Amazon RDS non può utilizzare un gruppo di sicurezza che è stato modificato.
RDS action: create new security groups

Esiste almeno un gruppo di sicurezza associato al cluster database con un nome che corrisponde al modello rds-lambda-n o se TargetHealth di un proxy associato è AVAILABLE.

Un gruppo di sicurezza che corrisponde al modello non è stato modificato. Questo gruppo di sicurezza include una sola regola in entrata con il gruppo di sicurezza VPC della funzione Lambda o del proxy come l'origine.

Esistono uno o più gruppi di sicurezza associati alla funzione Lambda con un nome che corrisponde al modello lambda-rds-n o lambda-rdsproxy-n.

Tuttavia, Amazon RDS non può utilizzare nessuno di questi gruppi di sicurezza per la connessione al cluster database. Amazon RDS non può utilizzare un gruppo di sicurezza che non dispone di una regola in uscita con il gruppo di sicurezza VPC del cluster database o del proxy come destinazione. Inoltre, Amazon RDS non può utilizzare un gruppo di sicurezza che è stato modificato.

Esistono uno o più gruppi di sicurezza associati al proxy con un nome che corrisponde al modello rdsproxy-lambda-n.

Tuttavia, Amazon RDS non può utilizzare nessuno di questi gruppi di sicurezza per la connessione al cluster database o alla funzione Lambda. Amazon RDS non può utilizzare un gruppo di sicurezza che non dispone di una regola in entrata e in uscita con il gruppo di sicurezza VPC del cluster database e la funzione Lambda. Inoltre, Amazon RDS non può utilizzare un gruppo di sicurezza che è stato modificato.

RDS action: create new security groups

Esiste almeno un gruppo di sicurezza associato al cluster database con un nome che corrisponde al modello rds-lambda-n o se TargetHealth di un proxy associato è AVAILABLE.

Un gruppo di sicurezza che corrisponde al modello non è stato modificato. Questo gruppo di sicurezza include una sola regola in entrata con il gruppo di sicurezza VPC della funzione Lambda o del proxy come l'origine.

Esiste un gruppo di sicurezza Lambda valido per la connessione, ma non è associato alla funzione Lambda. Questo gruppo di sicurezza ha un nome che corrisponde al modello lambda-rds-n o lambda-rdsproxy-n. Non è stato modificato. Dispone di una sola regola in uscita con il gruppo di sicurezza VPC del cluster database o del proxy come la destinazione.

Esiste un gruppo di sicurezza proxy valido per la connessione, ma non è associato al proxy. Questo gruppo di sicurezza ha un nome che corrisponde al modello rdsproxy-lambda-n. Non è stato modificato. Dispone di regole in entrata e in uscita con i gruppi di sicurezza VPC del cluster database e la funzione Lambda.

RDS action: associate Lambda security group

Si applica una delle due condizioni seguenti:

  • Non esiste alcun gruppo di sicurezza associato al cluster database con un nome che corrisponde al modello rds-lambda-n o se TargetHealth di un proxy associato è AVAILABLE.

  • Esiste almeno un gruppo di sicurezza associato al cluster database con un nome che corrisponde al modello rds-lambda-n o se TargetHealth di un proxy associato è AVAILABLE. Tuttavia, Amazon RDS non può utilizzare nessuno di questi gruppi di sicurezza per la connessione alla funzione Lambda o al proxy.

Amazon RDS non può utilizzare un gruppo di sicurezza che non dispone di una regola in entrata con il gruppo di sicurezza VPC della funzione Lambda o del proxy come l'origine. Inoltre, Amazon RDS non può utilizzare un gruppo di sicurezza che è stato modificato.

Esistono uno o più gruppi di sicurezza associati alla funzione Lambda con un nome che corrisponde al modello lambda-rds-n o lambda-rdsproxy-n.

Un gruppo di sicurezza che corrisponde al modello non è stato modificato. Questo gruppo di sicurezza dispone di una sola regola in uscita con il gruppo di sicurezza VPC dell'istanza database o del proxy come la destinazione.

Esistono uno o più gruppi di sicurezza associati al proxy con un nome che corrisponde al modello rdsproxy-lambda-n.

Un gruppo di sicurezza che corrisponde al modello non è stato modificato. Questo gruppo di sicurezza dispone di regole in entrata e in uscita con il gruppo di sicurezza VPC del cluster database e la funzione Lambda.

RDS action: create new security groups

Si applica una delle due condizioni seguenti:

  • Non esiste alcun gruppo di sicurezza associato al cluster database con un nome che corrisponde al modello rds-lambda-n o se TargetHealth di un proxy associato è AVAILABLE.

  • Esiste almeno un gruppo di sicurezza associato al cluster database con un nome che corrisponde al modello rds-lambda-n o se TargetHealth di un proxy associato è AVAILABLE. Tuttavia, Amazon RDS non può utilizzare nessuno di questi gruppi di sicurezza per la connessione alla funzione Lambda o al proxy.

Amazon RDS non può utilizzare un gruppo di sicurezza che non dispone di una regola in entrata con il gruppo di sicurezza VPC della funzione Lambda o del proxy come l'origine. Inoltre, Amazon RDS non può utilizzare un gruppo di sicurezza che è stato modificato.

Si applica una delle due condizioni seguenti:

  • Non esiste un gruppo di sicurezza associato alla funzione Lambda con un nome che corrisponde al modello lambda-rds-n o lambda-rdsproxy-n.

  • Esistono uno o più gruppi di sicurezza associati alla funzione Lambda con un nome che corrisponde al modello lambda-rds-n o lambda-rdsproxy-n. Tuttavia, Amazon RDS non può utilizzare nessuno di questi gruppi di sicurezza per la connessione al cluster database.

Amazon RDS non può utilizzare un gruppo di sicurezza che non dispone di una regola in uscita con il gruppo di sicurezza VPC cluster database o del proxy come l'origine. Inoltre, Amazon RDS non può utilizzare un gruppo di sicurezza che è stato modificato.

Si applica una delle due condizioni seguenti:

  • Non esiste un gruppo di sicurezza associato al proxy con un nome che corrisponde al modello rdsproxy-lambda-n.

  • Esistono uno o più gruppi di sicurezza associati al proxy con un nome che corrisponde al modello rdsproxy-lambda-n. Tuttavia, Amazon RDS non può utilizzare nessuno di questi gruppi di sicurezza per la connessione  al cluster database o alla funzione Lambda.

Amazon RDS non può utilizzare un gruppo di sicurezza che non dispone di una regola in entrata e in uscita con il gruppo di sicurezza VPC del cluster database e la funzione Lambda. Inoltre, Amazon RDS non può utilizzare un gruppo di sicurezza che è stato modificato.
RDS action: create new security groups
 RDS: creazione di nuovi gruppi di sicurezza

Amazon RDS esegue le seguenti operazioni:

  • Crea un nuovo gruppo di sicurezza che corrisponde al modello rds-lambda-n o rds-rdsproxy-n (se si sceglie di utilizzare RDS Proxy). Questo gruppo di sicurezza dispone di una regola in entrata con il gruppo di sicurezza VPC della funzione Lambda o proxy come l'origine. Questo gruppo di sicurezza è associato al cluster database e consente alla funzione o al proxy di accedere al cluster database.

  • Crea un nuovo gruppo di sicurezza che corrisponde al modello lambda-rds-n o lambda-rdsproxy-n. Questo gruppo di sicurezza dispone di una regola in uscita con il gruppo di sicurezza VPC del cluster database o del proxy come la destinazione. Questo gruppo di sicurezza è associato alla funzione Lambda e consente alla funzione di inviare traffico al cluster database o inviare traffico tramite un proxy.

  • Crea un nuovo gruppo di sicurezza che corrisponde al modello rdsproxy-lambda-n. Questo gruppo di sicurezza dispone di regole in entrata e in uscita con il gruppo di sicurezza VPC del cluster database e la funzione Lambda.

Azione 
 RDS: associazione del gruppo di sicurezza Lambda

Amazon RDS associa il gruppo di sicurezza Lambda valido, esistente alla funzione Lambda. Questo gruppo di sicurezza consente alla funzione di inviare traffico al cluster database o inviare traffico tramite un proxy.

Connessione automatica di un funzione Lambda e di un cluster database Aurora

È possibile usare la console Amazon RDS per connettere automaticamente una funzione Lambda al cluster database. Ciò semplifica il processo di configurazione di una connessione tra queste risorse.

È anche possibile usare RDS Proxy per includere un proxy nella connessione. Funzioni Lambda effettuano connessioni database brevi e frequenti che traggono vantaggio dal pool di connessioni offerto da RDS Proxy. È anche possibile utilizzare qualsiasi autenticazione IAM che è già stata configurata per le funzioni Lambda, anziché gestire le credenziali del database nel codice dell'applicazione Lambda.

È possibile connettere un cluster database esistente a funzioni Lambda nuove ed esistenti utilizzando la pagina Configurazione della connessione Lambda. Il processo di configurazione consente di impostare automaticamente i gruppi di sicurezza richiesti.

Prima di configurare una connessione tra una funzione Lambda e un cluster database, assicurati che:

Se si modificano i gruppi di sicurezza dopo la configurazione della connettività, le modifiche potrebbero influenzare la connessione tra la funzione Lambda e il cluster database.

Nota

È possibile configurare automaticamente una connessione tra un cluster database e una funzione Lambda solo nella AWS Management Console. Per connettere una funzione Lambda, tutte le istanze nel cluster database devono essere nello stato Disponibile.

Per connettere automaticamente una funzione Lambda e un cluster database
  1. Accedi alla AWS Management Console e apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/.

  2. Nel riquadro di navigazione, scegli Database, quindi seleziona il cluster database che desideri connettere a una funzione Lambda.

  3. Per Operazioni, scegli Configura connessione Lambda.

  4. Nella pagina Configurazione della connessione Lambda, in Seleziona la funzione Lambda, effettua una delle seguenti operazioni:

    • Se disponi di una funzione Lambda esistente nello stesso VPC del cluster database, seleziona Scegli una funzione esistente, quindi seleziona la funzione.

    • Se non disponi di una funzione Lambda nello stesso VPC, seleziona Crea una nuova funzione, quindi inserisci un Nome della funzione. Il runtime predefinito è impostato su Nodejs.18. Puoi modificare le impostazioni per la nuova funzione Lambda nella console Lambda dopo aver completato la configurazione della connessione.

  5. (Facoltativo) In RDS Proxy, seleziona Connessione tramite RDS Proxy, quindi esegui una delle seguenti operazioni:

    • Se disponi di un proxy esistente che desideri utilizzare, seleziona Scegli un proxy esistente, quindi seleziona il proxy.

    • Se non disponi di un proxy e desideri che uno venga creato automaticamente da Amazon RDS, seleziona Crea nuovo proxy. Quindi, per Credenziali del database, esegui una delle seguenti operazioni:

      1. Seleziona Nome utente e password del database, quindi inserisci Nome utente e Password  per il cluster database.

      2. Seleziona Segreti Secrets Manager. Quindi, per Seleziona segreto, scegli un segreto AWS Secrets Manager. Se non disponi di un segreto di Secrets Manager, seleziona Crea nuovo segreto di Secrets Manager per creare un nuovo segreto. Dopo aver creato il segreto, per Seleziona segreto, scegli il nuovo segreto.

      Dopo aver creato il nuovo proxy, seleziona Scegli un proxy esistente, quindi seleziona il proxy. Tieni presente che prima che il proxy sia disponibile per la connessione, potrebbe trascorrere del tempo.

  6. (Facoltativo) Espandi Riepilogo della connessione e verifica gli aggiornamenti evidenziati per le risorse.

  7. Scegliere Set up (Configura).

Visualizzazione delle risorse di calcolo connesse

È possibile usare la AWS Management Console per visualizzare le funzioni Lambda collegate al cluster database. Le risorse mostrate includono le connessioni delle risorse di calcolo configurate automaticamente da Amazon RDS.

Le risorse di elaborazione elencate non includono quelle connesse manualmente al cluster database. Ad esempio, è possibile autorizzare manualmente una risorsa di calcolo ad accedere al cluster database aggiungendo una regola al gruppo di sicurezza VPC associato al database.

Affinché la console elenchi una funzione Lambda, devono essere soddisfatte le seguenti condizioni:

  • Il nome del gruppo di sicurezza associato alla risorsa di calcolo corrisponde al modello lambda-rds-n o lambda-rdsproxy-n (dove n è un numero).

  • Il gruppo di sicurezza associato alla risorsa di calcolo dispone di una regola in uscita con l'intervallo di porte impostato sulla porta del cluster database o un proxy associato. La destinazione della regola in uscita deve essere impostata su un gruppo di sicurezza associato al cluster database o a un proxy associato.

  • Se la configurazione include un proxy, il nome del gruppo di sicurezza collegato al proxy associato al database corrisponde al modello rdsproxy-lambda-n (dove n è un numero).

  • Il gruppo di sicurezza associato alla funzione dispone di una regola in uscita con l'intervallo di porte impostato sulla porta utilizzata dal cluster database o da un proxy associato. La destinazione deve essere impostata su un gruppo di sicurezza associato al cluster database o a un proxy associato.

Per visualizzare le risorse di elaborazione connesse automaticamente a un cluster database
  1. Accedi alla AWS Management Console e apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/.

  2. Nel pannello di navigazione, scegli Database e seleziona il cluster database.

  3. Nella scheda Connettività e sicurezza, visualizza le risorse di calcolo in Risorse di calcolo connesse.