2017-08-30 2 views
0

Wenn ich einen S3-VPC-Endpunkt für den AWS Glue-Dienst zum Entladen von Daten aus einem Rotverschiebungscluster erstelle, funktioniert der ETL-Auftrag nur, wenn die VPC-Endpunktrichtlinie auf "Vollzugriff" eingestellt ist.AWS Glue S3 VPC-Endpunktrichtlinie Problem

d.h

{ 
    "Statement": [ 
     { 
      "Action": "*", 
      "Effect": "Allow", 
      "Resource": "*", 
      "Principal": "*" 
     } 
    ] 
} 

Es funktioniert nicht, wenn die Politik, wie unten auf „custom“ und modifizierte gesetzt.

{ 
    "Statement": [ 
     { 
      "Action": "*", 
      "Effect": "Allow", 
      "Resource": ["arn:aws:s3:::examplebucket", 
        "arn:aws:s3:::examplebucket/*"], 
      "Principal": "*" 
     } 
    ] 
} 

In ETL-Job habe ich examplebucket als Standort angegeben den ETL-Skript zu speichern und die temporären Dateien, so finde ich es schwierig zu verstehen, warum der ETL-Job nur versagt, wenn die Politik auf Custom festgelegt ist. Versucht Glue, auf eine andere S3-Ressource als den angegebenen Bucket im Job zuzugreifen?

Antwort

0

Klebaufträge müssen auch folgenden Inhalt haben: 1. Temporäres Verzeichnis in S3. 2. Speicherort in S3 zum Speichern des generierten Python-Skripts.

Zum Beispiel, wenn der Ort des Skripts nicht angegeben ist; Leim wählt automatisch den folgenden Speicherort aus "s3: // aws-leim-scripts-YourAccountId-us-east-1 /"

Stellen Sie sicher, dass Ihre IAM-Rollenrichtlinien auch die von Ihnen ausgewählten s3-Standorte widerspiegeln.