Connessione automatica di una funzione Lambda e di un'istanza database - 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à.

Connessione automatica di una funzione Lambda e di un'istanza database

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

Per istruzioni sulla configurazione di una connessione tra una funzione Lambda e un cluster database Multi-AZ, consulta Connessione automatica di una funzione Lambda e di un cluster database Multi-AZ.

L'immagine seguente mostra una connessione diretta tra l'istanza database e la funzione Lambda.

Connessione automatica di un'istanza database a una funzione Lambda

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

Quando usi la console per connetterti a un proxy esistente, Amazon RDS aggiorna il gruppo di sicurezza del proxy per consentire le connessioni dal e dalla funzione Lambda dell'istanza DB.

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

Connetti automaticamente con una funzione Lambda tramite Proxy RDS
Suggerimento

Per connettere rapidamente una funzione Lambda a un'istanza DB, un , puoi anche utilizzare la procedura guidata integrata nella console. Per aprire la procedura guidata, procedi come segue:

  1. Aprire la pagina Funzioni della console Lambda.

  2. Seleziona la funzione a cui vuoi connettere un database.

  3. Nella scheda Configurazione, seleziona RDSdatabase.

  4. Scegli Connect to RDS database.

Dopo aver collegato la funzione a un database, puoi creare un proxy scegliendo Aggiungi proxy.

Panoramica della connettività automatica a una funzione Lambda

Di seguito sono riportati i requisiti per connettere una funzione Lambda con un cluster DB di istanze DB:

  • La funzione Lambda deve esistere nello VPC stesso cluster DB dell'istanza .

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

    • Amazon RDS

      • rds:CreateDBProxies

      • rds:DescribeDBInstances

      • rds:DescribeDBProxies

      • rds:ModifyDBInstance

      • 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 l'istanza database e la funzione Lambda si trovano in zone di disponibilità diverse, potrebbero essere addebitati costi tra zone di disponibilità all'account.

Se utilizzi RDS Proxy, Amazon configura RDS anche il gruppo VPC di sicurezza per il proxy. Amazon RDS agisce in base alla configurazione corrente dei gruppi di sicurezza associati al , alla funzione Lambda e al proxy, come descritto nella tabella seguente.

Configurazione attuale del gruppo RDS di sicurezza 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 con un nome che corrisponde allo schema rds-lambda-n o, se un proxy è già connesso al TargetHealth dell'istanza DB, RDS verifica se il proxy associato lo èAVAILABLE.

Un gruppo di sicurezza che corrisponde al modello non è stato modificato. Questo gruppo di sicurezza ha una sola regola in entrata con il gruppo di VPC sicurezza della funzione o del proxy Lambda come 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 ha una sola regola in uscita con il gruppo di VPC sicurezza del di database o il proxy come 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.

Amazon non RDS intraprende alcuna azione.

Una connessione era già stata configurata automaticamente tra la funzione Lambda, il proxy (opzionale) e l'istanza 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 all'istanza 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 all'istanza 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 non RDS può utilizzare un gruppo di sicurezza che non ha una regola in entrata con il gruppo di VPC sicurezza della funzione o del proxy Lambda come origine. Amazon RDS inoltre 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 non RDS può utilizzare nessuno di questi gruppi di sicurezza per la connessione con il .

Amazon non RDS può utilizzare un gruppo di sicurezza che non ha una regola in uscita con il gruppo di VPC sicurezza del dell'istanza DB come destinazione. Amazon RDS inoltre 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 non RDS può utilizzare nessuno di questi gruppi di sicurezza per la connessione con il o la funzione Lambda.

Amazon non RDS può utilizzare un gruppo di sicurezza che non ha regole in entrata e in uscita con il gruppo di VPC sicurezza del e la funzione Lambda. Amazon RDS inoltre non può utilizzare un gruppo di sicurezza che è stato modificato.
RDS action: create new security groups

Esiste almeno un gruppo di sicurezza associato all'istanza 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 ha una sola regola in entrata con il gruppo di VPC sicurezza della funzione o del proxy Lambda come 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 non RDS può utilizzare nessuno di questi gruppi di sicurezza per la connessione con il . Amazon non RDS può utilizzare un gruppo di sicurezza che non ha una regola in uscita con il gruppo di VPC sicurezza del dell'istanza DB come destinazione. Amazon RDS inoltre 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 non RDS può utilizzare nessuno di questi gruppi di sicurezza per la connessione con il o la funzione Lambda. Amazon non RDS può utilizzare un gruppo di sicurezza che non ha regole in entrata e in uscita con il gruppo di VPC sicurezza del e la funzione Lambda. Amazon RDS inoltre non può utilizzare un gruppo di sicurezza che è stato modificato.

RDS action: create new security groups

Esiste almeno un gruppo di sicurezza associato all'istanza 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 ha una sola regola in entrata con il gruppo di VPC sicurezza della funzione o del proxy Lambda come 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. Ha una sola regola in uscita con il gruppo di VPC sicurezza del come 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 il gruppo di VPC sicurezza del e la funzione Lambda.

RDS action: associate Lambda security group

Si applica una delle due condizioni seguenti:

  • Non esiste alcun gruppo di sicurezza associato all'istanza 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 all'istanza database con un nome che corrisponde al modello rds-lambda-n o se TargetHealth di un proxy associato è AVAILABLE. Tuttavia, Amazon non RDS può utilizzare nessuno di questi gruppi di sicurezza per la connessione con la funzione o il proxy Lambda.

Amazon non RDS può utilizzare un gruppo di sicurezza che non ha una regola in entrata con il gruppo di VPC sicurezza della funzione o del proxy Lambda come origine. Amazon RDS inoltre 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 ha una sola regola in uscita con il gruppo di VPC sicurezza dell'istanza DB come 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 ha regole in entrata e in uscita con il gruppo di VPC sicurezza del e la funzione Lambda.

RDS action: create new security groups

Si applica una delle due condizioni seguenti:

  • Non esiste alcun gruppo di sicurezza associato all'istanza 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 all'istanza database con un nome che corrisponde al modello rds-lambda-n o se TargetHealth di un proxy associato è AVAILABLE. Tuttavia, Amazon non RDS può utilizzare nessuno di questi gruppi di sicurezza per la connessione con la funzione o il proxy Lambda.

Amazon non RDS può utilizzare un gruppo di sicurezza che non ha una regola in entrata con il gruppo di VPC sicurezza della funzione o del proxy Lambda come origine. Amazon RDS inoltre 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 non RDS può utilizzare nessuno di questi gruppi di sicurezza per la connessione con il .

Amazon non RDS può utilizzare un gruppo di sicurezza che non ha una regola in uscita con il gruppo di VPC sicurezza del dell'istanza di database come origine. Amazon RDS inoltre 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 non RDS può utilizzare nessuno di questi gruppi di sicurezza per la connessione con il o la funzione Lambda.

Amazon non RDS può utilizzare un gruppo di sicurezza che non ha regole in entrata e in uscita con il gruppo di VPC sicurezza del e la funzione Lambda. Amazon RDS inoltre non può utilizzare un gruppo di sicurezza che è stato modificato.
RDS action: create new security groups
RDSazione: creare nuovi gruppi di sicurezza

Amazon RDS intraprende le seguenti azioni:

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

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

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

RDSazione: associare il gruppo di sicurezza Lambda

Amazon RDS associa il gruppo di sicurezza Lambda valido ed esistente alla funzione Lambda. Questo gruppo di sicurezza consente alla funzione di inviare traffico all'istanza database o inviare traffico tramite un proxy.

Puoi utilizzare la RDS console Amazon per connettere automaticamente una funzione Lambda al cluster DB dell'istanza . Ciò semplifica il processo di configurazione di una connessione tra queste risorse.

Puoi anche usare RDS Proxy per includere un proxy nella tua connessione. Le funzioni Lambda effettuano connessioni brevi e frequenti al database che traggono vantaggio dal pool di connessioni offerto da Proxy. RDS Puoi anche utilizzare qualsiasi IAM autenticazione che hai già configurato per la tua funzione Lambda, invece di gestire le credenziali del database nel codice dell'applicazione Lambda.

È possibile connettere un'istanza 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'istanza 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 l'istanza database.

Nota

È possibile configurare automaticamente una connessione tra un e una funzione Lambda solo in. AWS Management Console Per connettere una funzione Lambda, l'istanza database deve essere nello stato Disponibile.

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

  2. Nel riquadro di navigazione, scegli Database, quindi seleziona l'istanza 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 VPC stesso , scegli Scegli funzione esistente, quindi scegli la funzione.

    • Se non hai una funzione Lambda nella stessa funzioneVPC, scegli Crea nuova funzione, quindi inserisci il nome di una 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 RDSProxy, seleziona Connetti 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 Amazon ne RDS crei uno automaticamente per te, scegli 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 l'istanza database.

      2. Seleziona Segreti Secrets Manager. Quindi, per Seleziona segreto, scegli un AWS Secrets Manager segreto. 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 utilizzare il AWS Management Console per visualizzare le funzioni Lambda connesse al cluster DB dell'istanza . Le risorse mostrate includono connessioni alle risorse di calcolo che Amazon RDS configura automaticamente.

Le risorse di elaborazione elencate non includono quelle connesse manualmente all'istanza database. Ad esempio, puoi consentire a una risorsa di calcolo di accedere manualmente al aggiungendo una regola al gruppo VPC di sicurezza 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 dell'istanza database o un proxy associato. La destinazione della regola in uscita deve essere impostata su un gruppo di sicurezza associato all'istanza 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 dall'istanza database o da un proxy associato. La destinazione deve essere impostata su un gruppo di sicurezza associato all'istanza database o a un proxy associato.

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

  2. Nel pannello di navigazione, scegli Database e seleziona l'istanza database.

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