

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Administración de la conmutación por error de multi-AZ para clústeres de EMR mediante el Controlador de recuperación de aplicaciones
<a name="multi-az-failover-spark-emr-clusters-arc"></a>

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

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

Este patrón ofrece una estrategia de recuperación ante desastres eficiente para las cargas de trabajo de Amazon EMR a fin de garantizar la alta disponibilidad y la coherencia de datos en varias zonas de disponibilidad dentro de una sola Región de AWS. El diseño utiliza el [Controlador de recuperación de aplicaciones de Amazon](https://docs.aws.amazon.com/r53recovery/latest/dg/what-is-route53-recovery.html) y un [equilibrador de carga de aplicación](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html) para administrar las operaciones de conmutación por error y la distribución del tráfico para un clúster EMR basado en Apache Spark. 

En condiciones estándar, la zona de disponibilidad principal aloja un clúster y una aplicación de EMR activos con funcionalidad completa read/write . Si se produce un error inesperado en una zona de disponibilidad, el tráfico se redirige automáticamente a la zona de disponibilidad secundaria, donde se inicializa un nuevo clúster de EMR. Ambas zonas de disponibilidad acceden a un bucket de Amazon Simple Storage Service (Amazon S3) compartido a través de [puntos de conexión de puerta de enlace](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-s3.html) dedicados, lo que garantiza una administración de datos coherente. Este enfoque minimiza el tiempo de inactividad y permite una recuperación rápida de las cargas de trabajo críticas de macrodatos durante los errores de la zona de disponibilidad. La solución resulta útil en sectores como el financiero o el minorista, donde los análisis en tiempo real son fundamentales.

## Requisitos previos y limitaciones
<a name="multi-az-failover-spark-emr-clusters-arc-prereqs"></a>

**Requisitos previos **
+ Una [Cuenta de AWS](https://aws.amazon.com/resources/create-account/) activa.
+ [Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-what-is-emr.html) en Amazon Elastic Compute Cloud (Amazon) EC2
+ Acceda desde el nodo maestro del clúster de EMR a Amazon S3.
+ AWS Infraestructura Multi-AZ

**Limitaciones**
+ Algunas Servicios de AWS no están disponibles en todas Regiones de AWS. Para obtener información sobre la disponibilidad en regiones, consulte [Servicios de AWS by Region](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/). Para ver los puntos de conexión específicos, consulte la página [Service endpoints and quotas](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html) y elija el enlace del servicio.

**Versiones de producto**
+ [Versiones 6.x y posteriores de Amazon EMR](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-release-components.html)

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

**Pila de tecnología de destino**
+ Clúster de Amazon EMR
+ Controlador de recuperación de aplicaciones de Amazon
+ Equilibrador de carga de aplicación
+ Bucket de Amazon S3
+ Puntos de conexión de puerta de enlace para Amazon S3

**Arquitectura de destino**

![Arquitectura para un mecanismo de recuperación automatizado con el Controlador de recuperación de aplicaciones.](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/images/pattern-img/e5ecdb66-0eef-4a6a-8367-982a55104748/images/e982d580-13db-4bdd-9f6b-6400d7c31c01.png)


Esta arquitectura proporciona resiliencia a las aplicaciones mediante el uso de varias zonas de disponibilidad y la implementación de un mecanismo de recuperación automatizado a través del Controlador de recuperación de aplicaciones.

1. El equilibrador de carga de aplicación dirige el tráfico al entorno de Amazon EMR activo, que suele ser el clúster de EMR principal de la zona de disponibilidad principal.

1. El clúster de EMR activo procesa las solicitudes de las aplicaciones y se conecta a Amazon S3 a través de su punto de conexión de puerta de enlace de Amazon S3 dedicado para las operaciones de lectura y escritura.

1. Amazon S3 sirve como repositorio de datos central y se puede utilizar como punto de control o como almacenamiento compartido entre clústeres de EMR. Los clústeres de EMR mantienen la coherencia de datos cuando escriben directamente en Amazon S3 mediante el protocolo `s3://` y el [sistema de archivos de EMR (EMRFS)](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-fs.html). 

1. El Controlador de recuperación de aplicaciones supervisa continuamente el estado de la zona de disponibilidad principal y, cuando es necesario, administra automáticamente las operaciones de conmutación por error.

1. Si el Controlador de recuperación de aplicaciones detecta un error en el clúster de EMR principal, realiza las siguientes acciones:
   + Inicia el proceso de conmutación por error al clúster de EMR secundario en la zona de disponibilidad 2.
   + Actualiza las configuraciones de enrutamiento para dirigir el tráfico hacia el clúster secundario.

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

**Servicios de AWS**
+ [Amazon Application Recovery Controller](https://docs.aws.amazon.com/r53recovery/latest/dg/what-is-route53-recovery.html) le**** ayuda a gestionar y coordinar la recuperación de sus aplicaciones en todas Regiones de AWS las zonas de disponibilidad. Este servicio simplifica el proceso y mejora la fiabilidad de la recuperación de las aplicaciones al reducir los pasos manuales que necesitan las herramientas y los procesos tradicionales.
+ Un [equilibrador de carga de aplicación](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html) trabaja en la capa de aplicación, es decir, la séptima capa del modelo de interconexión de sistemas abiertos (OSI). Distribuye el tráfico de aplicaciones entrante entre varios destinos, como EC2 instancias, en varias zonas de disponibilidad. Esto aumenta la disponibilidad de la aplicación.
+ [AWS Command Line Interface (AWS CLI)](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) es una herramienta de código abierto que le ayuda a interactuar Servicios de AWS mediante los comandos de su consola de línea de comandos.
+ [Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-what-is-emr.html) es una plataforma de macrodatos que proporciona procesamiento de datos, análisis interactivos y machine learning para marcos de código abierto como Apache Spark, Apache Hive y Presto.
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) le ayuda a administrar de forma segura el acceso a sus AWS recursos al controlar quién está autenticado y autorizado a usarlos.
+ [Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html) ofrece una interfaz de servicios web simple que puede utilizar para almacenar y recuperar cualquier cantidad de datos, en cualquier momento y desde cualquier ubicación. Con este servicio, puede crear fácilmente aplicaciones que utilicen el almacenamiento nativo en la nube.
+ Los [puntos de enlace de Amazon S3](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-s3.html) son puertas de enlace que se especifican en la tabla de enrutamiento para acceder a Amazon S3 desde la nube privada virtual (VPC) a través de la red. AWS 

## Prácticas recomendadas
<a name="multi-az-failover-spark-emr-clusters-arc-best-practices"></a>
+ Siga las [prácticas recomendadas de AWS en materia de seguridad, identidad y conformidad](https://aws.amazon.com/architecture/security-identity-compliance/?cards-all.sort-by=%5b…%5d.sort-order=desc&awsf.content-type=*all&awsf.methodology=*all) para garantizar una arquitectura sólida y segura.
+ Ajuste la infraestructura al [Marco de AWS Well-Architected](https://aws.amazon.com/architecture/well-architected/).
+ Utilice Concesiones de acceso a Amazon S3 para administrar el acceso desde su clúster de EMR basado en Spark a Amazon S3. Para obtener más información, consulte la entrada en el blog [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/).
+ [Mejore el rendimiento de Spark con Amazon S3](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-spark-s3-performance.html).

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

### Configure su entorno
<a name="set-up-your-environment"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Inicie sesión en Consola de administración de AWS. | Inicie sesión en la [Consola de administración de AWS](https://console.aws.amazon.com/) como usuario de IAM. Para obtener instrucciones, consulte la [documentación de AWS](https://docs.aws.amazon.com/signin/latest/userguide/introduction-to-iam-user-sign-in-tutorial.html). | AWS DevOps | 
| Configure el AWS CLI. **** | Instálelo AWS CLI o actualícelo a la última versión para poder interactuar con Servicios de AWS él Consola de administración de AWS. Para obtener instrucciones, consulte la [documentación de AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html). | AWS DevOps | 

### Implementación de una aplicación de Spark en su clúster de EMR
<a name="deploy-a-spark-application-on-your-emr-cluster"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Cree un bucket de S3. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/multi-az-failover-spark-emr-clusters-arc.html) | AWS DevOps | 
| Cree un clúster de EMR. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/multi-az-failover-spark-emr-clusters-arc.html) | AWS DevOps | 
| Configure los ajustes de seguridad para el clúster de EMR. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/multi-az-failover-spark-emr-clusters-arc.html) | AWS DevOps | 
| Conéctese al clúster de EMR. | Conéctese al nodo maestro del clúster de EMR a través de SSH mediante el par de claves proporcionado.<br />Asegúrese de que el archivo del par de claves se encuentre en el mismo directorio que la aplicación.<br />Ejecute los siguientes comandos para configurar los permisos correctos para el par de claves y establecer la conexión SSH:<pre>chmod 400 <key-pair-name><br />ssh -i ./<key-pair-name> hadoop@<master-node-public-dns></pre> | AWS DevOps | 
| Implemente la aplicación de Spark. | Tras establecer la conexión SSH, estará en la consola de Hadoop.[See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/multi-az-failover-spark-emr-clusters-arc.html) | AWS DevOps | 
| Supervise la aplicación de Spark. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/multi-az-failover-spark-emr-clusters-arc.html) | AWS DevOps | 

### Cambio del tráfico a otra zona de disponibilidad
<a name="shift-traffic-to-another-availability-zone"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Cree un Equilibrador de carga de aplicación. | Configure el grupo de destino que enruta el tráfico entre los nodos maestros de Amazon EMR que se implementan en dos zonas de disponibilidad dentro de una Región de AWS.<br />Para obtener instrucciones, consulte [Create a target group for your Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-target-group.html) en la documentación de Elastic Load Balancing. | AWS DevOps | 
| Configure el cambio de zona en el Controlador de recuperación de aplicaciones. | En este paso, usará la [característica de cambio de zona](https://docs.aws.amazon.com/r53recovery/latest/dg/arc-zonal-shift.html) del Controlador de recuperación de aplicaciones para cambiar el tráfico a otra zona de disponibilidad.[See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/multi-az-failover-spark-emr-clusters-arc.html)<br />Para utilizarlos AWS CLI, consulte los [ejemplos de uso del AWS CLI cambio zonal](https://docs.aws.amazon.com/r53recovery/latest/dg/getting-started-cli-zonalshift.html) en la documentación de Application Recovery Controller. | AWS DevOps | 
| Verifique la configuración y el progreso del cambio de zona. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/multi-az-failover-spark-emr-clusters-arc.html) | AWS DevOps | 

## Recursos relacionados
<a name="multi-az-failover-spark-emr-clusters-arc-resources"></a>
+ AWS CLI comandos:
  + [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)
+ [Configuring Amazon EMR cluster instance types and best practices for Spot instances](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-instances-guidelines.html) (documentación de Amazon EMR)
+ [Prácticas recomendadas de seguridad en IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) (documentación de IAM)
+ [Utilizar perfiles de instancia](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2_instance-profiles.html) (documentación de IAM)
+ [Use zonal shift and zonal autoshift to recovery applications in ARC](https://docs.aws.amazon.com/r53recovery/latest/dg/multi-az.html) (documentación del Controlador de recuperación de aplicaciones)