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à.
Prerequisiti
Il tuo cluster Aurora PostgreSQL DB può leggere i dati Iceberg e Parquet da Amazon S3, Amazon S3 Tables e altri per tuo conto. AWS Glue Data Catalog Prima di interrogare tali dati, il cluster ha bisogno di tre elementi: un modo per autenticarsi su tali servizi, una versione del motore che includa l'aurora_analyticsestensione e un percorso di rete dal tuo VPC per raggiungerli. Le seguenti sezioni illustrano come creare una policy e un ruolo IAM che garantiscano l'accesso in lettura ai dati specifici che intendi interrogare, associare tale ruolo al cluster DB, abilitare l'estensione nel gruppo di parametri del cluster DB e configurare il percorso di rete utilizzato dal cluster per raggiungere Amazon S3 e. AWS GlueÈ possibile completare questi passaggi su qualsiasi cluster Aurora PostgreSQL DB esistente che soddisfi i requisiti di versione.
Argomenti
Panoramica delle fasi di configurazione
I passaggi di configurazione di alto livello sono i seguenti:
-
Crea una policy IAM che garantisca l'accesso in lettura ai tuoi dati.
-
Crea un ruolo IAM e allega quella policy.
-
Collega il ruolo IAM al cluster Aurora DB.
-
Configura la rete (endpoint VPC) se il cluster si trova in una sottorete privata.
-
Abilita l'
aurora_analyticsestensione nel gruppo di parametri del cluster DB.
Creazione di policy IAM
Crea una policy IAM che conceda all'estensione l'accesso in lettura ad Amazon S3 e, facoltativamente, alle nostre tabelle AWS Glue Data Catalog Amazon S3, a seconda del formato dei dati e del luogo in cui sono archiviati.
I privilegi minimi dipendono dal modo in cui fai riferimento ai dati: il formato dei dati (Parquet o Iceberg), l'origine (Amazon S3 AWS Glue Data Catalog o Amazon S3 Tables) e se punti a un singolo file o a una directory. La tabella seguente elenca i privilegi minimi dei ruoli IAM per gli scenari comuni relativi allo stesso account:
| Origine | Privilegi minimi |
|---|---|
Amazon S3, file singolo () s3://bucket/path/data.parquet |
s3:GetObject |
Amazon S3, directory o glob () s3://bucket/path/ |
s3:GetObject, s3:ListBucket |
AWS Glue Data Catalog (arn:aws:glue:us-east-1:123456789012:table/mydb/mytable) |
glue:GetTable+ Privilegi Amazon S3 di cui sopra |
Tabelle Amazon S3, ARN diretto () arn:aws:s3tables:us-east-1:123456789012:bucket/mybucket/table/table_id |
s3tables:GetTable, s3tables:GetTableBucket, s3tables:GetTableData, s3tables:GetNamespace |
Tabelle Amazon S3, tramite catalogo AWS Glue ARN () arn:aws:glue:us-east-1:123456789012:table/s3tablescatalog/mybucket/myns/mytable |
glue:GetTable+ s3tables privilegi di cui sopra |
Nota
s3:ListBucketè necessaria solo quando l'estensione elenca un prefisso Amazon S3 per scoprire i file (ad esempio, Parquet directory o glob access). Iceberg risolve i percorsi esatti dei file dai suoi file manifest, il che significa che non è necessario. s3:ListBucket
Nota
Se i tuoi dati sono crittografati con SSE-KMS, aggiungi kms:Decrypt la chiave KMS.
Nota
Sono necessari privilegi aggiuntivi per IMPORT FOREIGN SCHEMA (glue:GetTablesors3tables:ListTables), l'accesso tra più account, l'accesso basato sulle politiche delle risorse e le tabelle Lake. Formation-governed
Per esempi Riferimento alle politiche IAM dettagliati di policy, consulta. Per ulteriori informazioni sulla creazione di policy IAM, consulta Creating IAM policies nella IAM User Guide.
Creazione di un ruolo IAM
Crea un ruolo IAM che Aurora possa assumere per accedere ai tuoi dati Amazon S3 per conto dell'estensione.
Per creare un ruolo IAM utilizzando AWS Console di gestione
-
Aprire la console IAM all'indirizzo https://console.aws.amazon.com/iam/
. -
Nel riquadro di navigazione, scegli Ruoli, quindi scegli Crea ruolo.
-
Per Tipo di entità attendibile, scegli Servizio AWS .
-
Per caso d'uso, scegli RDS dall'elenco dei servizi.
-
Scegli RDS - Aggiungi ruolo al database tra le opzioni dello use case.
-
Scegli Avanti.
-
Seleziona la politica in Creazione di policy IAM cui hai creato. Puoi anche scegliere politiche di autorizzazione predefinite come AmazonS3ReadOnlyAccesse. AWSGlueConsoleFullAccess
-
Scegli Avanti.
-
Per Nome ruolo, inserisci un nome per il ruolo (ad esempio,
AuroraAnalyticsRole). -
Scegliere Crea ruolo.
Per creare un ruolo IAM utilizzando AWS CLI
-
Crea un ruolo denominato
AuroraAnalyticsRole:aws iam create-role \ --role-name AuroraAnalyticsRole \ --assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }' -
Collegare la policy al ruolo:
aws iam attach-role-policy \ --role-name AuroraAnalyticsRole \ --policy-arn arn:aws:iam::123456789012:policy/AuroraAnalyticsReadAccess
Nota l'ARN del ruolo . Ne hai bisogno quando colleghi il ruolo al tuo cluster Aurora DB. Per ulteriori informazioni, consulta Creazione di ruoli IAM nella Guida per l’utente IAM .
Collegamento del ruolo IAM al cluster Aurora DB
Dopo aver creato il cluster DB, associa il ruolo IAM che hai creato per l'estensione.
Per associare il ruolo IAM utilizzando il AWS Console di gestione
-
Aprire la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/
. -
Nel riquadro di navigazione, scegli Database, quindi scegli il nome del cluster Aurora PostgreSQL DB.
-
Sulla scheda Connectivity & security (Connettività e sicurezza), nella sezione Manage IAM roles (Gestisci ruoli IAM, scegliere il ruolo da aggiungere sotto Add IAM roles to this cluster (Aggiungi ruoli IAM a questo cluster).
-
Per Funzionalità, scegli. AuroraAnalytics
-
Scegliere Add role (Aggiungi ruolo).
Per associare il ruolo IAM utilizzando il AWS CLI
-
aws rds add-role-to-db-cluster \ --region us-east-1 \ --db-cluster-identifier my-analytics-cluster \ --feature-name AuroraAnalytics \ --role-arn arn:aws:iam::123456789012:role/AuroraAnalyticsRole
Lo stato del ruolo IAM viene visualizzato come Attivo dopo che è stato collegato correttamente. Per ulteriori informazioni, consulta add-role-to-db-cluster nella CLI Command Reference.AWS
Configurare la rete
Quando il cluster Aurora DB viene distribuito in una sottorete privata, necessita di un percorso di rete per raggiungere Amazon S3 e (facoltativamente). AWS Glue Puoi fornirlo con endpoint VPC (consigliato) o tramite un gateway NAT.
Gli endpoint VPC mantengono il traffico sulla AWS rete senza attraversare la rete Internet pubblica e un endpoint gateway Amazon S3 non ha costi orari aggiuntivi, il che li rende l'approccio consigliato. Un gateway NAT funziona anche se il tuo VPC indirizza già il traffico in uscita attraverso uno di essi, ma invia il traffico su un percorso pubblico e comporta costi di elaborazione dei dati NAT. Il resto di questa sezione descrive la configurazione degli endpoint VPC. Per ulteriori informazioni sui gateway NAT, consulta Gateway NAT.
| Servizio | Tipo di endpoint | Necessario per |
|---|---|---|
Amazon S3 (com.amazonaws.region.s3) |
Gateway | Accesso ai dati di Amazon S3 e Amazon S3 Tables |
AWS Glue (com.amazonaws.region.glue) |
Interfaccia | AWS Glue Data Catalog accesso |
Creazione di un endpoint gateway Amazon S3
Crea un endpoint gateway Amazon S3 e associalo alle tabelle di routing utilizzate dalle sottoreti del cluster Aurora DB.
Per ulteriori informazioni, consulta Creazione di un endpoint gateway per Amazon S3 nella AWS PrivateLink Guida.
Creare un AWS Glue endpoint di interfaccia
Se lo stai utilizzando AWS Glue Data Catalog, crea un endpoint di interfaccia AWS Glue VPC con la seguente configurazione:
-
Esegui la distribuzione nelle stesse sottoreti del cluster Aurora DB.
-
Abilita il DNS privato.
-
Collega un gruppo di sicurezza che consente il traffico in entrata sulla porta TCP 443 dal blocco CIDR VPC o dallo stesso gruppo di sicurezza utilizzato dal cluster Aurora PostgreSQL DB.
Abilitazione della funzionalità nel gruppo di parametri
Per impostazione predefinita, il parametro aurora_analytics.enabled è impostato su false. Dopo aver creato il cluster DB, abilita la funzionalità impostando questo parametro true nel gruppo di parametri del cluster DB.
Per abilitare la funzionalità utilizzando il AWS CLI
-
aws rds modify-db-cluster-parameter-group \ --db-cluster-parameter-group-name my-analytics-params \ --parameters "ParameterName=aurora_analytics.enabled,ParameterValue=true,ApplyMethod=immediate"
Come parametro dinamico, aurora_analytics.enabled si applica immediatamente senza riavvio.
Nota
Ciò si applica quando il cluster DB utilizza un gruppo di parametri del cluster DB personalizzato. Non è possibile modificare il gruppo di parametri predefinito. Se il tuo cluster utilizza ancora il valore predefinito, crea prima un gruppo di parametri del cluster DB personalizzato e associalo al cluster. L'associazione di un gruppo di parametri diverso richiede il riavvio delle istanze DB affinché il nuovo gruppo abbia effetto, anche se di per aurora_analytics.enabled sé è dinamico. Per ulteriori informazioni, consulta Lavorare con i gruppi di parametri del cluster DB nella Guida per l'utente di Aurora.
Per abilitare la funzionalità utilizzando il AWS Console di gestione
-
Aprire la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/
. -
Nel riquadro di navigazione scegliere Parameter groups (Gruppi di parametri).
-
Scegli il gruppo di parametri associato al tuo cluster Aurora DB.
-
Cercare
aurora_analytics.enabled. -
Impostare il valore su
true. -
Scegli Save changes (Salva modifiche).
Fasi successive
Dopo aver completato questi passaggi, sei pronto per iniziare. Per ulteriori informazioni, consulta Nozioni di base.
Per indicazioni sulla scelta della classe e del dimensionamento dell'istanza DB corretti per il tuo carico di lavoro, consulta. Best practice