View a markdown version of this page

EMR-Cluster konnte nicht bereitgestellt werden - Amazon EMR

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

EMR-Cluster konnte nicht bereitgestellt werden

Es gibt mehrere Gründe, warum ein Amazon-EMR-Cluster möglicherweise nicht gestartet werden kann. Im Folgenden finden Sie einige Möglichkeiten, das Problem zu diagnostizieren.

Überprüfen Sie die EMR-Bereitstellungsprotokolle

Amazon EMR verwendet Puppet, um Anwendungen auf einem Cluster zu installieren und zu konfigurieren. Anhand der Protokolle erhalten Sie Informationen darüber, ob während der Bereitstellungsphase eines Clusters Fehler aufgetreten sind. Auf die Protokolle kann auf dem Cluster oder in S3 zugegriffen werden, wenn die Protokolle so konfiguriert sind, dass sie an S3 übertragen werden.

Die Protokolle werden auf der Festplatte /var/log/provision-node/apps-phase/0/{UUID}/puppet.log und s3://<LOG LOCATION>/<CLUSTER ID>/node/<EC2 INSTANCE ID>/provision-node/apps-phase/0/{UUID}/puppet.log.gz. gespeichert.

Allgemeine Fehlermeldungen

Fehlermeldung Ursache

Puppet (err): Der Systemd-Start für ist fehlgeschlagen! emr-record-server journalctl-Protokoll für: emr-record-server

EMR Record Server konnte nicht gestartet werden. Weitere Informationen finden Sie unten in den EMR-Record-Server-Protokollen.

Puppet (err): Der Systemd-Start für ist fehlgeschlagen! emr-record-server journalctl-Protokoll für emrsecretagent:

EMR Record Server konnte nicht gestartet werden. Weitere Informationen finden Sie weiter unten unter Secret-Agent-Protokolle überprüfen.

/Stage [main] /Ranger_Plugins: :Ranger_Hive_ (Hinweis): 140408606197664:Fehler:0906d06c:PEM-Routinen:PEM_READ_BIO:Keine Startzeile:PEM_LIB.C:707:Erwartet: JEDER PRIVATE SCHLÜSSEL plugin/Ranger_plugins::Prepare_two_way_tls[configure 2-way TLS in Hive plugin]/Exec[create keystore and truststore for Ranger Hive plugin]/returns

Das private TLS-Zertifikat in Secret Manager für das Apache Ranger-Plug-in-Zertifikat hat nicht das richtige Format oder ist kein privates Zertifikat. Informationen zu TLS-Zertifikate für die Apache Ranger-Integration mit Amazon EMR den Zertifikatsformaten finden Sie unter.

/Stage [main] /Ranger_Plugins: :Ranger_S3_ plugin/Ranger_plugins::Prepare_two_way_tls[configure 2-way TLS in Ranger s3 plugin]/Exec[create keystore and truststore for Ranger amazon-emr-s3 plugin]/returns (notice): An error occurred (AccessDeniedException) when calling the GetSecretValue operation: User: arn:aws:sts::XXXXXXXXXXX:assumed-role/EMR_EC2_DefaultRole/i -XXXXXXXXXXXX ist nicht berechtigt, Folgendes auszuführen: secretsmanager: GetSecretValue on resource: arn:aws:secretsmanager:us-east-1:xxxxxxxxxx:secret: -XXXXX AdminServer

Die EC2-Instance-Profilrolle verfügt nicht über die richtigen Berechtigungen, um die TLS-Zertifikate von Secrets Agent abzurufen.

SecretAgent Überprüfen Sie die Protokolle

Secret-Agent-Protokolle befinden sich in /emr/secretagent/log/ auf einem EMR-Knoten oder im s3://<LOG LOCATION>/<CLUSTER ID>/node/<EC2 INSTANCE ID>/daemons/secretagent/-Verzeichnis in S3.

Allgemeine Fehlermeldungen

Fehlermeldung Ursache

Ausnahme im Thread „main“ com.amazonaws.services.securitytoken.model. AWSSecurityTokenServiceException: Benutzer: arn:aws:sts: :XXXXXXXXXXXX:assumed- role/EMR_EC2_DefaultRole/i -XXXXXXXXXXXXXXX ist nicht berechtigt, Folgendes auszuführen: sts: AssumeRole on resource: arn:aws:iam: RangerPluginDataAccessRole :XXXXXXXXXXXX:role/* (Service: AWSSecurityTokenService; Statuscode: 403; Fehlercode:; Fehlercode:; Anforderungs-ID: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX; Proxy: null) AccessDenied

Die obige Ausnahme bedeutet, dass die EMR EC2-Instance-Profilrolle nicht berechtigt ist, die Rolle zu übernehmen. RangerPluginDataAccessRole Siehe IAM-Rollen für die native Integration mit Apache Ranger.

FEHLER qtp54617902-149: Eine Web-App-Ausnahme ist aufgetreten

javax.ws.rs. NotAllowedException: HTTP 405-Methode nicht erlaubt

Diese Fehler können ignoriert werden.

Überprüfen Sie die Record-Serverprotokolle (für SparkSQL)

<EC2 INSTANCE ID>EMR Record Server-Protokolle sind auf einem EMR-Knoten unter/var/log/emr-record-server/ oder im Verzeichnis s3:///<LOG LOCATION>/node/ <CLUSTER ID>/daemons///in S3 verfügbar. emr-record-server

Allgemeine Fehlermeldungen

Fehlermeldung Ursache

InstanceMetadataServiceResourceFetcherEMR Record Server-Protokolle sind unter/-record-server/ auf einem EMR-Knoten verfügbar, oder sie befinden sich im Verzeichnis s3:////node/ /daemons///in S3. ----sep----:105 - [] Token com.amazonaws konnte nicht abgerufen werden. SdkClientException: Es konnte keine Verbindung zum Service-Endpunkt hergestellt werden

Das EMR SecretAgent wurde nicht angezeigt oder es liegt ein Problem vor. Untersuchen Sie die SecretAgent Protokolle auf Fehler und überprüfen Sie das Puppet-Skript, um festzustellen, ob Fehler bei der Bereitstellung aufgetreten sind.