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
Aarti Rajput, Ashish Bhatt, Neeti Mishra y Nidhi Sharma, Amazon Web Services
Resumen
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 y un equilibrador de carga de aplicación 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 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
Requisitos previos
Una Cuenta de AWS
activa Amazon EMR 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 conocer la disponibilidad de las regiones, consulte Servicios de AWS by Region
. Para ver los puntos de conexión específicos, consulte la página Service endpoints and quotas y elija el enlace del servicio.
Versiones de producto
Arquitectura
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

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.
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.
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.
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).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.
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)
Servicios de AWS
Amazon Application Recovery Controller 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 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) 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 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) 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 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 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
Siga las prácticas recomendadas de AWS en materia de seguridad, identidad y cumplimiento
para garantizar una arquitectura sólida y segura. Ajuste la infraestructura al Marco de AWS 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
.
Epics
| 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 | AWS DevOps |
Configure el AWS CLI. | Instálelo AWS CLI o actualícelo a la última versión para que pueda interactuar con Servicios de AWS él Consola de administración de AWS. Para obtener instrucciones, consulte la documentación de AWS CLI. | AWS DevOps |
| Tarea | Descripción | Habilidades requeridas |
|---|---|---|
Cree un bucket de S3. |
| AWS DevOps |
Cree un clúster de EMR. |
| AWS DevOps |
Configure los ajustes de seguridad para el clúster de EMR. |
| 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. Asegúrese de que el archivo del par de claves se encuentre en el mismo directorio que la aplicación. Ejecute los siguientes comandos para configurar los permisos correctos para el par de claves y establecer la conexión SSH:
| AWS DevOps |
Implemente la aplicación de Spark. | Tras establecer la conexión SSH, estará en la consola de Hadoop.
| AWS DevOps |
Supervise la aplicación de Spark. |
| AWS DevOps |
| 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. Para obtener instrucciones, consulte Crear un grupo objetivo para su Application Load Balancer en la documentación del ELB. | 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 del Controlador de recuperación de aplicaciones para cambiar el tráfico a otra zona de disponibilidad.
Para utilizarlos AWS CLI, consulte los ejemplos de uso del AWS CLI cambio zonal en la documentación de Application Recovery Controller. | AWS DevOps |
Verifique la configuración y el progreso del cambio de zona. |
| AWS DevOps |
Recursos relacionados
AWS CLI comandos:
Configuring Amazon EMR cluster instance types and best practices for Spot instances (documentación de Amazon EMR)
Prácticas recomendadas de seguridad en IAM (documentación de IAM)
Utilizar perfiles de instancia (documentación de IAM)
Use zonal shift and zonal autoshift to recovery applications in ARC (documentación del Controlador de recuperación de aplicaciones)