Wie erhalte ich Zugriff auf die Spark-Benutzeroberfläche in Amazon EMR?

Lesedauer: 3 Minute
0

Ich möchte Apache Spark-Web-Schnittstellen einsehen, die auf Amazon EMR-Clustern gehostet werden.

Lösung

Spark History Server ist eine Web-Benutzeroberfläche, auf der Sie den Status der laufenden und abgeschlossenen Spark-Aufträge auf Ihrem EMR-Cluster anzeigen können.

Im Folgenden werden die üblichen Möglichkeiten für den Zugriff auf die Spark-Benutzeroberfläche, die in einem öffentlichen und privaten Subnetz gehostet wird, beschrieben:

  • Dauerhafte Anwendungsbenutzeroberflächen
  • Anwendungsbenutzeroberflächen auf dem Cluster

Dauerhafte Anwendungsbenutzeroberflächen

Im EMR-Cluster sendet der apppusher-Daemon in regelmäßigen Abständen Spark-Ereignisprotokolle an Amazon EMR-Produktions-Buckets. Die dauerhafte Spark-Benutzeroberfläche verwendet die Ereignisprotokolle, um Spark-Anwendungen anzuzeigen.

Diese Funktion ist möglich, wenn sich das Ereignisprotokollverzeichnis für die Anwendung im HDFS befindet. Amazon EMR speichert Ereignisprotokolle standardmäßig im Verzeichnis /var/log/spark/apps des HDFS. Sollten Sie das Standardverzeichnis in ein anderes Dateisystem ändern, z. B. Amazon Simple Storage Service (Amazon S3), wird diese Funktion nicht verfügbar sein. Weitere Informationen finden Sie unter Überlegungen und Einschränkungen.

Sie können auf den Anwendungsverlauf und die entsprechenden Protokolldateien für aktive und beendete Cluster zugreifen. Die Protokolle werden für 30 Tage nach Beendigung der Anwendung verfügbar sein. Weitere Informationen finden Sie unter Dauerhafte Anwendungsbenutzeroberflächen anzeigen.

Anwendungsbenutzeroberflächen auf dem Cluster

Die Benutzeroberflächen im Cluster werden auf dem Primärknoten gehostet und erfordern eine SSH-Verbindung zum Webserver.

Um auf die Benutzeroberfläche auf dem Cluster zuzugreifen, gehen Sie wie folgt vor:

1.    Stellen Sie mithilfe von SSH eine Verbindung zum Primärknoten her.

2.    Konfigurieren Sie das SSH-Tunneling mit einer dynamischen Portweiterleitung.

3.    Konfigurieren Sie Ihren Internet-Browser für die Verwendung einer Zusatzfunktion wie FoxyProxy für Firefox oder SwitchyOmega für Chrome, um Ihre SOCKS-Proxy-Einstellungen zu verwalten.

Mit dieser Methode werden URLs automatisch anhand von Textmustern gefiltert. Außerdem werden bei dieser Methode die Proxy-Einstellungen auf Domänen beschränkt, die mit der Form des DNS-Namens des Primärknotens übereinstimmen.

ssh -i ~/mykeypair.pem -N -L 8157:ec2-###-##-##-###.compute-1.amazonaws.com:18080 hadoop@ec2-###-##-##-###.compute-1.amazonaws.com

Weitere Informationen finden Sie unter Option 1: Einrichten eines SSH-Tunnels zum Primärknoten mit lokaler Portweiterleitung.

Der direkte Zugriff auf eine Benutzeroberfläche auf dem Cluster in einem privaten Subnetz ist nicht möglich, es sei denn, Sie verwenden ein lokales Netzwerk über eine VPN-Verbindung oder AWS Direct Connect. Zudem ist es erforderlich, die Route so zu konfigurieren, dass die Kommunikation über das AWS- und das lokale Netzwerk erfolgt.

Alternativ können Sie sich über einen Bastion- oder Jump-Server, der in einem öffentlichen Subnetz gehostet wird, mit einem privaten Subnetz verbinden. Anschließend erstellen Sie ein SSH-Tunneling mit dynamischer Portweiterleitung.

Weitere Informationen finden Sie unter Sicherer Zugriff auf Web-Schnittstellen von Amazon EMR, die in einem privaten Subnetz gestartet wurden.


AWS OFFICIAL
AWS OFFICIALAktualisiert vor einem Jahr