EMR-Cluster konnte nicht bereitgestellt werden - Amazon EMR

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 den emr-record-server ist fehlgeschlagen! 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 den emr-record-server ist fehlgeschlagen! Journalctl-Protokoll für emr-Record-Server:

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_plugin/Ranger_plugins::Prepare_two_way_tls[configure 2-way TLS in Hive plugin]/Exec[create keystore and truststore for Ranger Hive plugin]/returns (notice): 140408606197664:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:707:Expecting: ANY PRIVATE KEY

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 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 is not authorized to perform: secretsmanager:GetSecretValue on resource: arn:aws:secretsmanager:us-east-1:XXXXXXXXXX:secret:AdminServer-XXXXX

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

Überprüfen Sie die Secret-Agent-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: User: arn:aws:sts::XXXXXXXXXXXX:assumed-role/EMR_EC2_DefaultRole/i-XXXXXXXXXXXXXXX is not authorized to perform: sts:AssumeRole on resource: arn:aws:iam::XXXXXXXXXXXX:role/*RangerPluginDataAccessRole* (Service: AWSSecurityTokenService; Status Code: 403; Error Code: AccessDenied; Request ID: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX; Proxy: null)

Die obige Ausnahme bedeutet, dass die EMR-EC2-Instance-Profilrolle nicht berechtigt ist, die Rolle RangerPluginDataAccessRole anzunehmen. 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)

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

Allgemeine Fehlermeldungen

Fehlermeldung Ursache

InstanceMetadataServiceResourceFetcher:105 – [] Token konnte nicht abgerufen werden. com.amazonaws.SdkClientException: Verbindung zum Serviceendpunkt konnte nicht hergestellt werden

Der EMR SecretAgent konnte nicht aufgerufen werden oder hat ein Problem. Untersuchen Sie die SecretAgent-Protokolle auf Fehler und das Puppet-Skript, um festzustellen, ob Bereitstellungsfehler aufgetreten sind.