

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.

# Multi-AZ-Failover für EMR-Cluster mithilfe von Application Recovery Controller verwalten
<a name="multi-az-failover-spark-emr-clusters-arc"></a>

*Aarti Rajput, Ashish Bhatt, Neeti Mishra und Nidhi Sharma, Amazon Web Services*

## Zusammenfassung
<a name="multi-az-failover-spark-emr-clusters-arc-summary"></a>

Dieses Muster bietet eine effiziente Notfallwiederherstellungsstrategie für Amazon EMR-Workloads, um eine hohe Verfügbarkeit und Datenkonsistenz in mehreren Availability Zones innerhalb einer einzigen sicherzustellen. AWS-Region Das Design verwendet [Amazon Application Recovery Controller und einen Application](https://docs.aws.amazon.com/r53recovery/latest/dg/what-is-route53-recovery.html) [Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html), um Failover-Operationen und die Verkehrsverteilung für einen Apache Spark-basierten EMR-Cluster zu verwalten. 

Unter Standardbedingungen hostet die primäre Availability Zone einen aktiven EMR-Cluster und eine Anwendung mit vollem read/write Funktionsumfang. Wenn eine Availability Zone unerwartet ausfällt, wird der Datenverkehr automatisch zur sekundären Availability Zone umgeleitet, wo ein neuer EMR-Cluster gestartet wird. Beide Availability Zones greifen über spezielle [Gateway-Endpunkte](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-s3.html) auf einen gemeinsamen Amazon Simple Storage Service (Amazon S3) -Bucket zu, wodurch eine konsistente Datenverwaltung gewährleistet wird. Dieser Ansatz minimiert Ausfallzeiten und ermöglicht eine schnelle Wiederherstellung kritischer Big-Data-Workloads bei Ausfällen in der Availability Zone. Die Lösung ist in Branchen wie dem Finanzwesen oder dem Einzelhandel nützlich, in denen Echtzeitanalysen von entscheidender Bedeutung sind.

## Voraussetzungen und Einschränkungen
<a name="multi-az-failover-spark-emr-clusters-arc-prereqs"></a>

**Voraussetzungen**
+ Ein aktiver [AWS-Konto](https://aws.amazon.com/resources/create-account/)
+ [Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-what-is-emr.html) auf Amazon Elastic Compute Cloud (Amazon EC2)
+ Zugriff vom Master-Knoten des EMR-Clusters auf Amazon S3.
+ AWS Multi-AZ-Infrastruktur

**Einschränkungen**
+ Einige AWS-Services sind nicht in allen AWS-Regionen verfügbar. Informationen zur Verfügbarkeit in den einzelnen Regionen finden Sie [AWS-Services unter Nach Regionen](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/). Informationen zu bestimmten Endpunkten finden Sie auf der Seite [Dienstendpunkte und Kontingente](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html). Wählen Sie dort den Link für den Dienst aus.

**Produktversionen**
+ [Amazon EMR 6.x und spätere Versionen](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-release-components.html)

## Architektur
<a name="multi-az-failover-spark-emr-clusters-arc-architecture"></a>

**Zieltechnologie-Stack**
+ Amazon EMR-Cluster
+ Amazon Application Recovery Controller
+ Application Load Balancer
+ Amazon-S3-Bucket
+ Gateway-Endpunkte für Amazon S3

**Zielarchitektur**

![\[Architektur für einen automatisierten Wiederherstellungsmechanismus mit Application Recovery Controller.\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/images/pattern-img/e5ecdb66-0eef-4a6a-8367-982a55104748/images/e982d580-13db-4bdd-9f6b-6400d7c31c01.png)


Diese Architektur bietet Ausfallsicherheit für Anwendungen, indem sie mehrere Availability Zones verwendet und einen automatisierten Wiederherstellungsmechanismus über den Application Recovery Controller implementiert.

1. Der Application Load Balancer leitet den Datenverkehr an die aktive Amazon EMR-Umgebung weiter, bei der es sich in der Regel um den primären EMR-Cluster in der primären Availability Zone handelt.

1. Der aktive EMR-Cluster verarbeitet die Anwendungsanfragen und stellt über seinen speziellen Amazon S3-Gateway-Endpunkt für Lese- und Schreibvorgänge eine Verbindung zu Amazon S3 her.

1. Amazon S3 dient als zentrales Datenrepository und wird möglicherweise als Checkpoint oder als gemeinsam genutzter Speicher zwischen EMR-Clustern verwendet. EMR-Cluster behalten die Datenkonsistenz bei, wenn sie über `s3://` das Protokoll und das [EMR-Dateisystem (EMRFS](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-fs.html)) direkt in Amazon S3 schreiben. 

1. Application Recovery Controller überwacht kontinuierlich den Zustand der primären Availability Zone und verwaltet bei Bedarf automatisch Failover-Operationen.

1. Wenn der Application Recovery Controller einen Fehler im primären EMR-Cluster feststellt, ergreift er die folgenden Aktionen:
   + Initiiert den Failover-Prozess für den sekundären EMR-Cluster in Availability Zone 2.
   + Aktualisiert die Routingkonfigurationen, um den Verkehr zum sekundären Cluster weiterzuleiten.

## Tools
<a name="multi-az-failover-spark-emr-clusters-arc-tools"></a>

**AWS-Services**
+ [Amazon Application Recovery Controller****](https://docs.aws.amazon.com/r53recovery/latest/dg/what-is-route53-recovery.html) unterstützt Sie bei der Verwaltung und Koordination der Wiederherstellung Ihrer Anwendungen in allen AWS-Regionen Availability Zones. Dieser Service vereinfacht den Prozess und verbessert die Zuverlässigkeit der Anwendungswiederherstellung, indem er die manuellen Schritte reduziert, die bei herkömmlichen Tools und Prozessen erforderlich sind.
+ [Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html) arbeitet auf der Anwendungsebene, der siebten Schicht des Open Systems Interconnection (OSI) -Modells. Er verteilt den eingehenden Anwendungsdatenverkehr auf mehrere Ziele, z. B. EC2 Instanzen, in mehreren Availability Zones. Dies erhöht die Verfügbarkeit Ihrer Anwendung.
+ [AWS Command Line Interface (AWS CLI)](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) ist ein Open-Source-Tool, mit dem Sie AWS-Services über Befehle in Ihrer Befehlszeilen-Shell interagieren können.
+ [Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-what-is-emr.html) ist eine Big-Data-Plattform, die Datenverarbeitung, interaktive Analyse und maschinelles Lernen für Open-Source-Frameworks wie Apache Spark, Apache Hive und Presto bietet.
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) hilft Ihnen dabei, den Zugriff auf Ihre AWS Ressourcen sicher zu verwalten, indem es kontrolliert, wer authentifiziert und autorisiert ist, diese zu verwenden.
+ [Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html) bietet eine einfache Webservice-Schnittstelle, mit der Sie beliebige Datenmengen zu jeder Zeit und von überall speichern und abrufen können. Mit diesem Service können Sie ganz einfach Anwendungen erstellen, die Cloud-nativen Speicher nutzen.
+ [Gateway-Endpunkte für Amazon S3](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-s3.html) sind Gateways, die Sie in Ihrer Routing-Tabelle angeben, um von Ihrer Virtual Private Cloud (VPC) aus über das Netzwerk auf Amazon S3 zuzugreifen. AWS 

## Best Practices
<a name="multi-az-failover-spark-emr-clusters-arc-best-practices"></a>
+ Folgen Sie den [AWS Best Practices für Sicherheit, Identität und Compliance,](https://aws.amazon.com/architecture/security-identity-compliance/?cards-all.sort-by=%5b…%5d.sort-order=desc&awsf.content-type=*all&awsf.methodology=*all) um eine robuste und sichere Architektur zu gewährleisten.
+ Richten Sie die Architektur auf das [AWS Well-Architected Framework](https://aws.amazon.com/architecture/well-architected/) aus.
+ Verwenden Sie Amazon S3 Access Grants, um den Zugriff von Ihrem Spark-basierten EMR-Cluster auf Amazon S3 zu verwalten. Einzelheiten finden Sie im Blogbeitrag [Use Amazon EMR with S3 Access Grants to Scale Spark access to Amazon S3](https://aws.amazon.com/blogs/big-data/use-amazon-emr-with-s3-access-grants-to-scale-spark-access-to-amazon-s3/).
+ [Verbessern Sie die Spark-Leistung mit Amazon S3](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-spark-s3-performance.html).

## Epen
<a name="multi-az-failover-spark-emr-clusters-arc-epics"></a>

### So richten Sie Ihre Umgebung ein
<a name="set-up-your-environment"></a>


| Aufgabe | Description | Erforderliche Fähigkeiten | 
| --- | --- | --- | 
| Melden Sie sich bei der an AWS-Managementkonsole. | Melden Sie sich als IAM-Benutzer bei der [AWS-Managementkonsole](https://console.aws.amazon.com/) an. Anweisungen finden Sie in der [AWS Dokumentation](https://docs.aws.amazon.com/signin/latest/userguide/introduction-to-iam-user-sign-in-tutorial.html). | AWS DevOps | 
| Konfigurieren Sie die AWS CLI. **** | Installieren Sie die AWS CLI oder aktualisieren Sie sie auf die neueste Version, damit Sie mit AWS-Services der interagieren können AWS-Managementkonsole. Anweisungen finden Sie in der [AWS CLI Dokumentation](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html). | AWS DevOps | 

### Stellen Sie eine Spark-Anwendung auf Ihrem EMR-Cluster bereit
<a name="deploy-a-spark-application-on-your-emr-cluster"></a>


| Aufgabe | Description | Erforderliche Fähigkeiten | 
| --- | --- | --- | 
| Erstellen Sie einen S3-Bucket. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/multi-az-failover-spark-emr-clusters-arc.html) | AWS DevOps | 
| Erstellen Sie einen EMR-Cluster. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/multi-az-failover-spark-emr-clusters-arc.html) | AWS DevOps | 
| Konfigurieren Sie die Sicherheitseinstellungen für den EMR-Cluster. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/multi-az-failover-spark-emr-clusters-arc.html) | AWS DevOps | 
| Connect zum EMR-Cluster her. | Stellen Sie mithilfe des bereitgestellten key pair über SSH eine Connect zum Master-Knoten des EMR-Clusters her.Stellen Sie sicher, dass sich die Schlüsselpaardatei im selben Verzeichnis wie Ihre Anwendung befindet.Führen Sie die folgenden Befehle aus, um die richtigen Berechtigungen für das key pair festzulegen und die SSH-Verbindung herzustellen:<pre>chmod 400 <key-pair-name><br />ssh -i ./<key-pair-name> hadoop@<master-node-public-dns></pre> | AWS DevOps | 
| Stellen Sie die Spark-Anwendung bereit. | Nachdem Sie die SSH-Verbindung hergestellt haben, befinden Sie sich in der Hadoop-Konsole.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/multi-az-failover-spark-emr-clusters-arc.html) | AWS DevOps | 
| Überwachen Sie die Spark-Anwendung. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/multi-az-failover-spark-emr-clusters-arc.html) | AWS DevOps | 

### Verkehr in eine andere Availability Zone verlagern
<a name="shift-traffic-to-another-availability-zone"></a>


| Aufgabe | Description | Erforderliche Fähigkeiten | 
| --- | --- | --- | 
| Erstellen Sie einen Application Load Balancer. | Richten Sie die Zielgruppe ein, die den Verkehr zwischen Amazon EMR-Masterknoten weiterleitet, die in zwei Availability Zones innerhalb einer AWS-Region bereitgestellt werden.Anweisungen finden Sie in der Elastic Load Balancing-Dokumentation unter [Eine Zielgruppe für Ihren Application Load Balancer erstellen](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-target-group.html). | AWS DevOps | 
| Konfigurieren Sie die Zonenverschiebung im Application Recovery Controller. | In diesem Schritt verwenden Sie die [Zonal Shift-Funktion](https://docs.aws.amazon.com/r53recovery/latest/dg/arc-zonal-shift.html) in Application Recovery Controller, um den Datenverkehr in eine andere Availability Zone zu verlagern.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/multi-az-failover-spark-emr-clusters-arc.html)Informationen zur AWS CLI Verwendung von finden Sie unter [Beispiele für die Verwendung von AWS CLI with Zonal Shift](https://docs.aws.amazon.com/r53recovery/latest/dg/getting-started-cli-zonalshift.html) in der Dokumentation zu Application Recovery Controller. | AWS DevOps | 
| Überprüfen Sie die Konfiguration und den Fortschritt der Zonenschicht. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/multi-az-failover-spark-emr-clusters-arc.html) | AWS DevOps | 

## Zugehörige Ressourcen
<a name="multi-az-failover-spark-emr-clusters-arc-resources"></a>
+ AWS CLI Befehle:
  + [create-cluster](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/emr/create-cluster.html)
  + [describe-cluster](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/emr/describe-cluster.html)
  + [arc-zonal-shift](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/arc-zonal-shift/index.html)
+ [Konfiguration von Amazon EMR-Cluster-Instance-Typen und Best Practices für Spot-Instances](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-instances-guidelines.html) (Amazon EMR-Dokumentation)
+ [Bewährte Sicherheitsmethoden in IAM (IAM-Dokumentation](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html))
+ [Verwenden Sie Instanzprofile](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2_instance-profiles.html) (IAM-Dokumentation)
+ [Verwenden Sie Zonal Shift und Zonal Autoshift, um Anwendungen in ARC wiederherzustellen (Application Recovery](https://docs.aws.amazon.com/r53recovery/latest/dg/multi-az.html) Controller-Dokumentation)