

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.

# Starten des Spark History-Servers
<a name="monitor-spark-ui-history"></a>

Mit einem Spark History-Server können Sie die Spark-Protokolle in Ihrer eigenen Infrastruktur visualisieren. Sie können dieselben Visualisierungen in der AWS Glue Konsole für AWS Glue Jobausführungen auf Versionen AWS Glue 4.0 oder höher sehen, wobei die Logs im Standardformat (und nicht im Legacy-Format) generiert wurden. Weitere Informationen finden Sie unter [Überwachen von Aufgaben über die Apache-Spark-Webbenutzeroberfläche](monitor-spark-ui.md).

Sie können den Spark-Verlaufsserver mithilfe einer AWS CloudFormation Vorlage starten, die den Server auf einer EC2-Instance hostet, oder lokal mit Docker starten.

**Topics**
+ [Den Spark-History-Server starten und die Spark-Benutzeroberfläche anzeigen mit AWS CloudFormation](#monitor-spark-ui-history-cfn)
+ [Starten des Spark History-Servers und Anzeigen der Spark-Benutzeroberfläche über Docker](#monitor-spark-ui-history-local)

## Den Spark-History-Server starten und die Spark-Benutzeroberfläche anzeigen mit AWS CloudFormation
<a name="monitor-spark-ui-history-cfn"></a>

Sie können eine AWS CloudFormation Vorlage verwenden, um den Apache Spark-History-Server zu starten und die Spark-Weboberfläche anzuzeigen. Diese Vorlagen sind Beispiele, die Sie entsprechend Ihren Anforderungen anpassen sollten.

**Um den Spark-Geschichtsserver zu starten und die Spark-Benutzeroberfläche anzuzeigen, verwenden Sie CloudFormation**

1. Wählen Sie eine der Schaltflächen **Launch Stack (Stack starten)** in der folgenden Tabelle aus. Dadurch wird der Stack auf der CloudFormation Konsole gestartet.    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/de_de/glue/latest/dg/monitor-spark-ui-history.html)

1. Wählen Sie auf der Seite **Specify template (Vorlage angeben)** die Option **Next (Weiter)** aus.

1. Geben Sie auf der Seite **Specify stack details (Stack-Details angeben)** den Wert für **Stack name (Stack-Name)** ein. Geben Sie zusätzliche Informationen unter **Parameter** ein.

   1. 

**Konfiguration der Spark-Benutzeroberfläche**

      Geben Sie die folgenden Informationen ein:
      + **IP-Adressbereich** – Der IP-Adressbereich, der zum Anzeigen der Spark-Benutzeroberfläche verwendet werden kann. Wenn Sie den Zugriff in Bezug auf einen bestimmten IP-Adressbereich einschränken möchten, sollten Sie einen benutzerdefinierten Wert verwenden. 
      + **History-Server-Port** – Der Port für die Spark-Benutzeroberfläche. Sie können den Standardwert verwenden.
      + **Ereignisprotokollverzeichnis** – Wählen Sie den Speicherort, an dem die Spark-Ereignisprotokolle gespeichert werden, aus den AWS Glue-Job- oder Entwicklungsendpunkten. Für das Pfadschema der Ereignisprotokolle müssen Sie **s3a://** verwenden.
      + **Spark-Package-Standort** – Sie können den Standardwert verwenden.
      + **Keystore-Pfad** — SSL/TLS Keystore-Pfad für HTTPS. Wenn Sie eine benutzerdefinierte Schlüsselspeicherdatei verwenden möchten, können Sie den S3-Pfad `s3://path_to_your_keystore_file` hier angeben. Wenn Sie diesen Parameter leer lassen, wird ein selbstsignierter, zertifikatbasierter Schlüsselspeicher generiert und verwendet.
      + **KeyStore-Passwort** – Geben Sie SSL/TLS-KeyStore-Passwort für HTTPS ein.

   1. 

**Konfigurieren der EC2-Instance**

      Geben Sie die folgenden Informationen ein:
      + **Instance-Typ** – Der Typ der Amazon-EC2-Instance, der den Spark-History-Server hostet. Da diese Vorlage die Amazon-EC2-Instance in Ihrem Konto startet, werden Amazon-EC2-Kosten Ihrem Konto separat in Rechnung gestellt.
      + **Neueste AMI-ID** – Die AMI-ID von Amazon Linux 2 für die Spark-Verlaufsserver-Instance. Sie können den Standardwert verwenden.
      + **VPC ID** – Die Virtual Private Cloud (VPC)-ID für die Spark-History-Server-Instance. Sie können alle in Ihrem Konto VPCs verfügbaren Optionen verwenden. Die Verwendung einer Standard-VPC mit einer [Standard-Netzwerk-ACL](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-network-acls.html#default-network-acl) wird nicht empfohlen. Weitere Informationen finden Sie unter [Default VPC and Default Subnets (Standard-VPC und Standard-Subnetze)](https://docs.aws.amazon.com/vpc/latest/userguide/default-vpc.html) und unter [Creating a VPC (Erstellen einer VPC)](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html#Create-VPC) im *Amazon-VPC-Benutzerhandbuch*.
      + **Subnetz-ID** – Die ID für die Spark-Verlaufsserver-Instance. Sie können jedes Subnetz in Ihrer VPC verwenden. Sie müssen das Subnetz von Ihrem Client aus erreichen können. Wenn Sie über das Internet auf das Subnetz zugreifen möchten, müssen Sie ein öffentliches Subnetz mit dem Internet-Gateway in der Routing-Tabelle verwenden.

   1. Wählen Sie **Weiter** aus.

1. Wählen Sie auf der Seite **Stack-Optionen konfigurieren** die Option **Weiter** aus, um anhand der aktuellen Benutzeranmeldedaten zu bestimmen, wie Ressourcen im Stack erstellt, geändert oder gelöscht werden CloudFormation können. Sie können im Abschnitt **Berechtigungen** auch eine Rolle angeben, die anstelle der aktuellen Benutzerberechtigungen verwendet werden soll, und dann **Weiter** wählen.

1. Überprüfen Sie die Vorlage auf der Seite **Review (Prüfen)**. 

   Wählen Sie **Ich bestätige, dass CloudFormation möglicherweise IAM-Ressourcen erstellt** werden, und wählen Sie dann **Stack erstellen** aus.

1. Warten Sie, bis der Stack erstellt wurde.

1. Öffnen Sie die Registerkarte **Outputs (Ausgaben)**.

   1. Kopieren Sie die URL von **SparkUiPublicUrl**, wenn Sie ein öffentliches Subnetz verwenden.

   1. Kopieren Sie die URL von **SparkUiPrivateUrl**, wenn Sie ein privates Subnetz verwenden.

1. Öffnen Sie einen Webbrowser und fügen Sie die URL ein. Auf diese Weise können Sie über HTTPS auf dem angegebenen Port auf den Server zugreifen. Ihr Browser erkennt möglicherweise nicht das Zertifikat des Servers. In diesem Fall müssen Sie den Schutz des Servers außer Kraft setzen und trotzdem fortfahren. 

## Starten des Spark History-Servers und Anzeigen der Spark-Benutzeroberfläche über Docker
<a name="monitor-spark-ui-history-local"></a>

Wenn Sie den lokalen Zugriff bevorzugen (d. h., keine EC2-Instance für den Apache Spark History-Server verwenden möchten), können Sie auch Docker verwenden, um den Apache Spark History-Server zu starten und die Spark-Benutzeroberfläche lokal anzuzeigen. Diese Dockerfile ist ein Beispiel, das Sie entsprechend Ihren Anforderungen anpassen sollten. 

 **Voraussetzungen** 

Informationen zum Installieren von Docker auf Ihrem Laptop finden Sie in der [Docker Engine-Community](https://docs.docker.com/install/).

**So starten Sie den Spark History-Server und zeigen die Spark-Benutzeroberfläche lokal über Docker an**

1. Laden Sie Dateien herunter von GitHub.

   Laden Sie die Dockerfile und `pom.xml` aus den [ AWS Glue-Codebeispielen](https://github.com/aws-samples/aws-glue-samples/tree/master/utilities/Spark_UI/) herunter.

1. Bestimmen Sie, ob Sie Ihre Benutzeranmeldeinformationen oder Verbundbenutzeranmeldeinformationen für den Zugriff auf AWS verwenden möchten.
   + Um die aktuellen Benutzeranmeldedaten für den Zugriff zu verwenden AWS, rufen Sie die Werte ab, die für ` AWS_ACCESS_KEY_ID` und `AWS_SECRET_ACCESS_KEY` im `docker run` Befehl verwendet werden sollen. Weitere Informationen finden Sie unter [Verwalten der Zugriffsschlüssel für IAM-Benutzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html) im *-IAM-Benutzerhandbuch*.
   + Um SAML 2.0-Verbundbenutzer für den Zugriff zu verwenden AWS, rufen Sie die Werte für ` AWS_ACCESS_KEY_ID``AWS_SECRET_ACCESS_KEY`, und ab. ` AWS_SESSION_TOKEN` Weitere Informationen finden Sie unter [Anfordern von temporären Sicherheitsanmeldeinformationen](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html)

1. Bestimmen Sie den Speicherort Ihres Ereignisprotokollverzeichnisses für die Verwendung im `docker run`-Befehl.

1. Erstellen Sie das Docker-Image mit den Dateien im lokalen Verzeichnis unter Verwendung des Namens` glue/sparkui`, und das Tag`latest`aus.

   ```
   $ docker build -t glue/sparkui:latest . 
   ```

1. Erstellen und starten Sie den Docker-Container.

   Verwenden Sie in den folgenden Befehlen die zuvor in den Schritten 2 und 3 beschafften Werte.

   1. Verwenden Sie einen Befehl wie den folgenden, um den Docker-Container mit Ihren Benutzeranmeldeinformationen zu erstellen

      ```
      docker run -itd -e SPARK_HISTORY_OPTS="$SPARK_HISTORY_OPTS -Dspark.history.fs.logDirectory=s3a://{{path_to_eventlog}}
       -Dspark.hadoop.fs.s3a.access.key={{AWS_ACCESS_KEY_ID}} -Dspark.hadoop.fs.s3a.secret.key={{AWS_SECRET_ACCESS_KEY}}"
       -p 18080:18080 glue/sparkui:latest "/opt/spark/bin/spark-class org.apache.spark.deploy.history.HistoryServer"
      ```

   1. Um den Docker-Container mit temporären Anmeldeinformationen zu erstellen, verwenden Sie ` org.apache.hadoop.fs.s3a.TemporaryAWSCredentialsProvider` als Anbieter und geben Sie die in Schritt 2 beschafften Anmeldeinformationen an. Weitere Informationen finden Sie unter [Using Session Credentials with Temporary AWSCredentials Provider](https://hadoop.apache.org/docs/stable/hadoop-aws/tools/hadoop-aws/index.html#Using_Session_Credentials_with_TemporaryAWSCredentialsProvider) in der Dokumentation *Hadoop: Integration with Amazon Web Services*.

      ```
      docker run -itd -e SPARK_HISTORY_OPTS="$SPARK_HISTORY_OPTS -Dspark.history.fs.logDirectory=s3a://{{path_to_eventlog}}
       -Dspark.hadoop.fs.s3a.access.key={{AWS_ACCESS_KEY_ID}} -Dspark.hadoop.fs.s3a.secret.key={{AWS_SECRET_ACCESS_KEY}}
       -Dspark.hadoop.fs.s3a.session.token={{AWS_SESSION_TOKEN}}
       -Dspark.hadoop.fs.s3a.aws.credentials.provider=org.apache.hadoop.fs.s3a.TemporaryAWSCredentialsProvider"
       -p 18080:18080 glue/sparkui:latest "/opt/spark/bin/spark-class org.apache.spark.deploy.history.HistoryServer"
      ```
**Anmerkung**  
Diese Konfigurationsparameter stammen aus dem [ Hadoop-AWS-Modul](https://hadoop.apache.org/docs/stable/hadoop-aws/tools/hadoop-aws/index.html). Sie müssen möglicherweise je nach Anwendungsfall eine spezielle Konfiguration vornehmen. Zum Beispiel: Benutzer in isolierten Regionen müssen den ` spark.hadoop.fs.s3a.endpoint` konfigurieren.

1. Öffnen Sie `http://localhost:18080` in Ihrem Browser, um die Spark-Benutzeroberfläche lokal anzuzeigen.