Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

Prerequisiti per l'impostazione di un'integrazione zero ETL

Modalità Focus
Prerequisiti per l'impostazione di un'integrazione zero ETL - AWS Glue

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

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

L'impostazione di un'integrazione tra l'origine e la destinazione richiede alcuni prerequisiti, come la configurazione dei IAM ruoli che AWS Glue consentono l'accesso ai dati dall'origine e la scrittura sulla destinazione e l'uso di KMS chiavi per crittografare i dati nella posizione intermedia o di destinazione.

Configurazione delle risorse di origine

Eseguite le seguenti attività di configurazione in base alle esigenze della fonte.

Impostazione del ruolo di origine

Questa sezione descrive come assegnare un ruolo di origine per consentire all'ETLintegrazione zero di accedere alla connessione. Ciò è applicabile anche solo per le fonti SaaS.

Nota

Per limitare l'accesso solo a poche connessioni, puoi prima creare la connessione per ottenere la connessioneARN. Per informazioni, consulta Configurazione di una fonte per un'integrazione zero ETL.

Crea un ruolo con le autorizzazioni per l'integrazione per accedere alla connessione:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "GlueConnections", "Effect": "Allow", "Action": [ "glue:GetConnections", "glue:GetConnection" ], "Resource": [ "arn:aws:glue:*:<accountId>:catalog", "arn:aws:glue:us-east-1:<accountId>:connection/*" ] }, { "Sid": "GlueActionBasedPermissions", "Effect": "Allow", "Action": [ // Fetch entities: "glue:ListEntities", // Refresh connection credentials: "glue:RefreshOAuth2Tokens" ], "Resource": [ "*" ] } ] }

Policy di trust:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "glue.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }

Impostazione delle risorse target

Esegui le seguenti attività di configurazione come richiesto per l'obiettivo di integrazione del AWS Glue data warehouse di Data Catalog o Amazon Redshift.

Per le integrazioni con un target di AWS Glue database:

Per le integrazioni con un target di datawarehouse Amazon Redshift:

Configurazione di AWS Glue un database

Per le integrazioni che utilizzano un AWS Glue database:

Per configurare un database di destinazione nel AWS Glue Data Catalog con una posizione Amazon S3:

  1. Nella home page della AWS Glue console, seleziona Database in Data Catalog.

  2. Scegli Aggiungi database nell'angolo in alto a destra. Se hai già creato un database, assicurati che la posizione con Amazon S3 URI sia impostata per il database.

  3. Inserisci un nome e una posizione (S3URI). Tieni presente che la posizione è necessaria per l'ETLintegrazione zero. Al termine, fai clic su Crea database.

    Nota

    Il bucket Amazon S3 deve trovarsi nella stessa regione del database. AWS Glue

Per informazioni sulla creazione di un nuovo database in AWS Glue, consulta Guida introduttiva al AWS Glue Data Catalog.

Puoi anche usare il create-databaseCLIper creare il database in AWS Glue. Nota che il LocationUri login --database-input è obbligatorio.

Ottimizzazione delle tabelle Iceberg

Una volta creata una tabella AWS Glue nel database di destinazione, puoi abilitare la compattazione per velocizzare le query in Amazon Athena. Per informazioni sulla configurazione delle risorse (IAMruolo) per la compattazione, consulta Prerequisiti per l'ottimizzazione delle tabelle.

Per ulteriori informazioni sull'impostazione della compattazione sulla AWS Glue tabella creata dall'integrazione, vedi Ottimizzazione delle tabelle Iceberg.

Fornire una politica di accesso basato sulle risorse () del catalogo RBAC

Per le integrazioni che utilizzano un AWS Glue database, aggiungi le seguenti autorizzazioni alla RBAC politica del catalogo per consentire le integrazioni tra origine e destinazione.

Nota

Per le integrazioni tra account, sia la politica relativa ai ruoli di Alice (utente che crea l'integrazione) che la politica delle risorse del catalogo devono consentire l'accesso alla risorsa. glue:CreateInboundIntegration Per lo stesso account, è sufficiente una politica in materia di risorse o una politica di ruolo che consenta l'utilizzo della glue:CreateInboundIntegration risorsa. Entrambi gli scenari devono comunque glue.amazonaws.com consentirlo. glue:AuthorizeInboundIntegration

È possibile accedere alle impostazioni del catalogo in Data Catalog. Fornisci quindi le seguenti autorizzazioni e inserisci le informazioni mancanti.

{ "Version": "2012-10-17", "Statement": [ { // Allow Alice to create Integration on Target Database "Principal": { "AWS": [ "arn:aws:iam::<source-account-id>:user/Alice" ] }, "Effect": "Allow", "Action": [ "glue:CreateInboundIntegration" ], "Resource": [ "arn:aws:glue:<region>:<Target-Account-Id>:catalog", "arn:aws:glue:<region>:<Target-Account-Id>:database/DatabaseName" ], "Condition": { "StringLike": { "aws:SourceArn": "arn:aws:dynamodb:<region>:<Account>:table/<table-name>" } } }, { // Allow Glue to Authorize the Inbound Integration on behalf of Bob "Principal": { "Service": [ "glue.amazonaws.com" ] }, "Effect": "Allow", "Action": [ "glue:AuthorizeInboundIntegration" ], "Resource": [ "arn:aws:glue:<region>:<Target-Account-Id>:catalog", "arn:aws:glue:<region>:<Target-Account-Id>:database/DatabaseName" ], "Condition": { "StringEquals": { "aws:SourceArn": "arn:aws:dynamodb:<region>:<account-id>:table/<table-name>" } } } ] }

Creazione di un ruolo target IAM

Crea un IAM ruolo target con le seguenti autorizzazioni e relazioni di fiducia:

{ "Version": "2012-10-17", "Statement": [ { "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::<target iceberg table s3 bucket>", "Effect": "Allow" }, { "Action": [ "s3:GetObject", "s3:PutObject", "s3:DeleteObject" ], "Resource": "arn:aws:s3:::<target iceberg table s3 bucket>/prefix/*", "Effect": "Allow" }, { "Action": [ "glue:GetDatabase" ], "Resource": [ "arn:aws:glue:<region>:<account-id>:catalog", "arn:aws:glue:<region>:<account-id>:database/DatabaseName" ], "Effect": "Allow" }, { "Action": [ "glue:CreateTable", "glue:GetTable", "glue:UpdateTable", "glue:GetTableVersion", "glue:GetTableVersions", "glue:GetResourcePolicy" ], "Resource": [ "arn:aws:glue:<region>:<account-id>:catalog", "arn:aws:glue:<region>:<account-id>:database/<DatabaseName>", "arn:aws:glue:<region>:<account-id>:table/<DatabaseName>/*" ], "Effect": "Allow" }, { "Action": [ "cloudwatch:PutMetricData" ], "Resource": "*", "Condition": { "StringEquals": { "cloudwatch:namespace": "AWS/Glue/ZeroETL" } }, "Effect": "Allow" }, { "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": "*", "Effect": "Allow" } ] }

Aggiungi la seguente politica di fiducia per consentire al AWS Glue servizio di assumere il ruolo:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "glue.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Creazione di un data warehouse Amazon Redshift

Se il tuo obiettivo di ETL integrazione zero è un data warehouse Amazon Redshift, crea il data warehouse se non ne hai già uno. Per creare un gruppo di lavoro Serverless Amazon Redshift, consulta Creazione di un gruppo di lavoro con uno spazio dei nomi. Per creare un cluster Amazon Redshift, consulta Creazione di un cluster.

Il gruppo di lavoro o cluster Amazon Redshift di destinazione deve avere il enable_case_sensitive_identifier parametro attivato affinché l'integrazione abbia successo. Per ulteriori informazioni sull'attivazione della distinzione tra maiuscole e minuscole, consulta Attiva la distinzione tra maiuscole e minuscole per il tuo data warehouse nella guida alla gestione di Amazon Redshift.

Una volta completata la configurazione del gruppo di lavoro o del cluster Amazon Redshift, devi configurare il tuo data warehouse. Per ulteriori informazioni, consulta la sezione Guida ETLintroduttiva alle integrazioni zero nella Amazon Redshift Management Guide.

Configurazione di un programma VPC per la tua integrazione zero ETL

Per configurare un programma VPC per la tua ETL integrazione zero:

  1. Vai a VPC> Tuo VPCs e scegli Crea VPC.

    1. Seleziona VPCe altro ancora.

    2. Imposta il tuo VPC nome.

    3. Imposta IPv4CIDR: 10.0.0.0/16.

    4. Imposta il numero di AZ su 1.

    5. Imposta il numero di sottoreti pubbliche e private su 1.

    6. Imposta i NATgateway su Nessuno.

    7. Imposta VPCgli endpoint su S3 Gateway.

    8. Abilita i DNS nomi host e la risoluzione. DNS

  2. Vai su Endpoints e scegli Crea endpoint.

  3. Crea endpoint per questi servizi nella sottorete privata del tuo VPC (usa il gruppo di sicurezza predefinito):

    1. com.amazonaws.us-east-1.lambda

    2. com.amazonaws.us-east-1.glue

    3. com.amazonaws.us-east-1.sts

Crea la connessione: AWS Glue

  1. Vai a AWS Glue> Connessioni dati e scegli Crea connessione.

  2. Seleziona Rete.

  3. Seleziona la VPC sottorete (privata) e il gruppo di sicurezza predefinito che hai creato.

Impostazione del ruolo di destinazione per VPC

Il ruolo di destinazione deve disporre delle seguenti autorizzazioni (oltre alle altre autorizzazioni richieste da Zero- ETl integrations):

{ "Version": "2012-10-17", "Statement": [ { "Sid": "CustomerVpc", "Effect": "Allow", "Action": [ "ec2:CreateTags", "ec2:DeleteTags", "ec2:DescribeRouteTables", "ec2:DescribeVpcEndpoints", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:CreateNetworkInterface", "ec2:DeleteNetworkInterface", "glue:GetConnection" ], "Resource": [ "*" ] } ] }

Impostazione delle proprietà delle risorse della gamba di destinazione

Se utilizzi ilCLI, imposta le proprietà delle risorse della gamba di destinazione sul AWS Glue database di destinazione che hai creato. Passa il ruolo ARN di destinazione e il nome della AWS Glue connessione.

aws glue create-integration-resource-property \ --resource-arn arn:aws:glue:us-east-1:<account-id>:database/exampletarget \ --target-processing-properties '{"RoleArn" : "arn:aws:iam::<account-id>:role/example-role", "ConnectionName":"example-vpc-3"}' \ --endpoint-url https://example.amazonaws.com --region us-east-1

Possibili errori del client

Di seguito sono riportati i possibili errori del client per un'integrazione configurata con unVPC.

Messaggio di errore Azione richiesta
Il ruolo fornito non è autorizzato a eseguire colla: GetConnection in connessione. Aggiungi questa autorizzazione alla politica del ruolo, quindi attendi il ripristino dell'integrazione. Aggiorna la politica dei ruoli
Il ruolo fornito non è autorizzato a eseguire ec2:DescribeSubnets. Aggiungi questa autorizzazione alla politica del ruolo, quindi attendi il ripristino dell'integrazione. Aggiorna la politica dei ruoli
Il ruolo fornito non è autorizzato a eseguire ec2:DescribeSecurityGroups. Aggiungi questa autorizzazione alla politica del ruolo, quindi attendi il ripristino dell'integrazione. Aggiorna la politica dei ruoli
Il ruolo fornito non è autorizzato a eseguire ec2:DescribeVpcEndpoints. Aggiungi questa autorizzazione alla politica del ruolo, quindi attendi il ripristino dell'integrazione. Aggiorna la politica dei ruoli
Il ruolo fornito non è autorizzato a eseguire ec2:DescribeRouteTables. Aggiungi questa autorizzazione alla politica del ruolo, quindi attendi il ripristino dell'integrazione. Aggiorna la politica dei ruoli
Il ruolo fornito non è autorizzato a eseguire ec2:CreateTags. Aggiungi questa autorizzazione alla politica del ruolo, quindi attendi il ripristino dell'integrazione. Aggiorna la politica dei ruoli
Il ruolo fornito non è autorizzato a eseguire ec2:CreateNetworkInterface. Aggiungi questa autorizzazione alla politica del ruolo, quindi attendi il ripristino dell'integrazione. Aggiorna la politica dei ruoli
La sottorete di connessione fornita non contiene un endpoint o un gateway S3 valido. NAT Aggiorna la sottorete, quindi attendi il ripristino dell'integrazione. Aggiorna gli endpoint VPC della sottorete
La sottorete di connessione non è stata trovata. Aggiorna la sottorete di connessione, quindi attendi il ripristino dell'integrazione. Aggiorna la connessione &GLU;
Gruppo di sicurezza della connessione non trovato. Aggiorna il gruppo di sicurezza della connessione, quindi attendi il ripristino dell'integrazione. Aggiorna la connessione &GLU;
Impossibile connettersi a S3 tramite la VPC connessione fornita. Aggiorna le configurazioni delle sottoreti, quindi attendi il ripristino dell'integrazione. Aggiorna VPC gli endpoint della sottorete
Impossibile connettersi a Lambda tramite la connessione fornitaVPC. Aggiorna le configurazioni delle sottoreti, quindi attendi il ripristino dell'integrazione. Aggiorna VPC gli endpoint della sottorete

Configurazione di un'integrazione zero tra account ETL

Per configurare un'integrazione zero ETL tra account:

  1. Configurare una politica delle risorse di destinazione come descritto inFornire una politica di accesso basato sulle risorse () del catalogo RBAC. Assicurati che il ruolo dell'account di origine sia esplicitamente consentito sulla risorsa di destinazione.

  2. Verifica che il ruolo dell'account di origine (il ruolo utilizzato per creare l'integrazione) sia il seguente:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt123456789012", "Action": [ "glue:CreateInboundIntegration" ], "Effect": "Allow", "Resource": [ "arn:aws:glue:<region>:<target-account-id>:catalog", "arn:aws:glue:<region>:<target-account-id>:database/DatabaseName" ] }] }
  3. Crea l'integrazione come descritto inCreazione di un'integrazione.

PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.