In che modo è possibile risolvere l'errore di AWS Glue "VPC S3 endpoint validation failed for SubnetId"?
Il processo AWS Glue ha esito negativo e viene visualizzato l'errore "JobRunId:jr_xx failed to execute with exception VPC S3 endpoint validation failed for SubnetId. Reason: Could not find S3 endpoint or NAT gateway for subnetId". -oppure- il crawler di AWS Glue ha esito negativo e viene visualizzato l'errore "VPC S3 endpoint validation failed for SubnetId. Reason: Could not find S3 endpoint or NAT gateway for subnetId".
Breve descrizione
Questo errore viene visualizzato quando sono soddisfatte entrambe le condizioni seguenti:
- Stai utilizzando una connessione AWS Glue con il processo AWS Glue o il crawler AWS Glue.
- La sottorete configurata per la tua connessione AWS Glue non ha un endpoint Amazon Simple Storage Service (Amazon S3) Virtual Private Cloud (VPC) o un gateway NAT configurato.
AWS Glue crea interfacce di rete elastiche nella sottorete specificata nella connessione AWS Glue. Queste interfacce di rete elastiche vengono utilizzate per connettersi alle tue fonti di dati e ad Amazon S3. Alle interfacce di rete elastiche viene assegnato un indirizzo IP privato dall'intervallo di indirizzi IP all'interno della sottorete specificata. Poiché non vengono utilizzati indirizzi IP pubblici, AWS Glue non può utilizzare direttamente Internet per connettersi alle tue origini dati o ad Amazon S3 all'interno del tuo VPC. Per ulteriori informazioni, consulta Configurazione dell'accesso di rete agli archivi dati.
Risoluzione
Assicurati che la sottorete configurata per la tua connessione AWS Glue abbia un endpoint gateway Amazon S3 VPC o un percorso verso un gateway NAT nella tabella di routing della sottorete. Per ulteriori informazioni, consultaErrore: Could Not Find S3 Endpoint or NAT Gateway for subnetId in VPC. Se il processo AWS Glue deve accedere a Internet pubblico, controlla e conferma che la sottorete sia configurata con un gateway NAT.
Configurazione di un endpoint gateway S3 VPC
Per configurare un endpoint gateway S3 VPC, segui questi passaggi:
- Apri la console Amazon VPC.
- Nel riquadro di navigazione, scegli Endpoint.
- Scegli Crea endpoint.
- Per Nome del servizio, seleziona com.amazonaws.us-east-1.s3. Assicurati che la colonna Tipo indichi Gateway.
Nota: assicurati di sostituire us-east-1 con la regione AWS di tua scelta. - In VPC, seleziona il VPC in cui desideri creare l'endpoint.
- Per Configura tabelle di routing, viene aggiunto automaticamente un percorso verso l'endpoint S3 VPC.
- Per Policy, lascia l'opzione predefinita Accesso completo.
- Scegli Crea endpoint.
Per ulteriori informazioni, consulta Endpoint del gateway.
Se stai impostando una policy più restrittiva, assicurati di consentire al processo AWS Glue o al ruolo AWS Identity and Access Management (IAM) del crawler AWS Glue di accedere ai bucket e agli oggetti S3 richiesti.
Configurazione di un gateway NAT
Nota: la creazione di un indirizzo IP elastico è un prerequisito per configurare un gateway NAT. Per ulteriori informazioni sull'allocazione, consulta Allocare un indirizzo IP elastico.
Per configurare un gateway NAT, procedi come segue:
Nota: assicurati che il VPC utilizzato per la connessione AWS Glue abbia almeno una sottorete pubblica. Per ulteriori informazioni, consulta VPC con sottoreti pubbliche e private (NAT).
- Apri la console Amazon VPC.
- Nel pannello di navigazione, scegli Gateway NAT.
- Scegli Crea gateway NAT.
- In Nome, inserisci il nome del gateway che desideri creare.
- Per Sottorete, seleziona una sottorete pubblica nel VPC specificato nella connessione AWS Glue.
- Per ilTipo di connettività, puoi lasciare l'opzione predefinita Pubblico per creare un gateway NAT pubblico.
- Scegli Crea gateway NAT.
Dopo aver configurato il gateway, è necessario effettuare le seguenti operazioni:
- Modifica la tabella di routing associata alla sottorete specificata nella connessione AWS Glue.
- Aggiungi un percorso al gateway NAT creato.
Per modificare la tabella di routing e aggiungere una route al gateway NAT, procedi come segue:
- Nel riquadro di navigazione, scegli Tabelle di routing.
- Seleziona la tabella di routing associata alla sottorete che desideri modificare.
- Scegli Azioni, quindi scegli Modifica percorsi.
- Nella pagina Modifica percorsi, scegli Aggiungi percorso.
- Nel nuovo percorso che appare, procedi come segue:
In Destinazione inserisci 0.0.0.0/0.
Per Target, seleziona Gateway NAT, quindi seleziona il gateway NAT che hai creato. Nota: è necessario selezionare queste opzioni per assicurarsi che tutto il traffico della sottorete, ad esempio il traffico collegato a Internet, venga inviato al gateway NAT. - Scegli Salva modifiche.
Dopo aver configurato l'endpoint VPC S3 o il gateway NAT nella tua sottorete, testa la tua rispettiva connessione AWS Glue. Esegui nuovamente il job AWS Glue o il crawler AWS Glue una volta completata la connessione di prova.
Informazioni correlate
Contenuto pertinente
- AWS UFFICIALEAggiornata 2 anni fa
- AWS UFFICIALEAggiornata 8 mesi fa
- Come posso risolvere gli errori di connessione di Marketplace AWS nei miei processi ETL in AWS Glue?AWS UFFICIALEAggiornata 8 mesi fa