Optimización de clústeres de Amazon EMR en cuanto a costo y escala

con las instancias de spot de EC2 y Amazon EMR

Amazon EMR proporciona un marco Hadoop administrado que permite procesar enormes volúmenes de datos de manera sencilla, ágil y rentable en instancias de Amazon EC2 con escalado dinámico. También puede ejecutar en EMR otros marcos distribuidos populares, como Apache Spark, HBase, Presto y Flink, e interactuar con los datos de otros almacenes de datos de AWS, como Amazon S3 y Amazon DynamoDB. EMR Notebooks, que se basa en el popular Jupyter Notebook, proporciona un entorno de desarrollo y colaboración para análisis exploratorios y consultas personalizadas. EMR administra de manera segura y fiable un amplio conjunto de casos de uso de big data, incluido el análisis de registros, la indexación web, las transformaciones de datos (ETL), el aprendizaje automático, el análisis financiero, la simulación científica y la bioinformática.

Las instancias de spot de Amazon EC2 ofrecen capacidad de cómputo adicional disponible en la nube de AWS, con grandes descuentos en comparación con los precios bajo demanda. EC2 puede interrumpir el proceso de las instancias de spot con una notificación previa de dos minutos cuando necesite utilizar dicha capacidad. Puede utilizar las instancias de spot para distintas aplicaciones flexibles y tolerantes a errores. Algunos ejemplos son las cargas de trabajo en contenedores, de análisis, de informática de alto rendimiento (HPC), se servidores web sin estado, de renderizado, de CI/CD y otras cargas de trabajo de prueba y desarrollo.

En este tutorial, aprenderá a lanzar su primer clúster de Amazon EMR en instancias de spot de Amazon EC2 con el asistente de creación de clústeres. La ejecución de Amazon EMR en instancias de spot reduce drásticamente el costo de big data, permite una capacidad de cómputo mucho mayor y reduce el tiempo de procesamiento de grandes conjuntos de datos.

Acerca de este tutorial
Duración 10 a 20 minutos      
Costo Gratis
Caso de uso Informática
Productos Amazon EMR, instancias de spot de EC2
Nivel 200
Última actualización 4 de febrero de 2020

Paso 1: Crear un clúster con las opciones avanzadas

1.1. Abra el navegador y diríjase a la consola de Amazon EMR. También puede buscar EMR o localizar Amazon EMR en la sección “Análisis” de la página de inicio de la consola. Si ya tiene una cuenta de AWS, inicie sesión en la consola. De lo contrario, cree una nueva cuenta de AWS para comenzar.

1.2. En la esquina superior derecha, seleccione la región donde desea lanzar el clúster de Amazon EMR.

1.3. Haga clic en Crear clúster en la ventana de Amazon EMR.

1.4. Haga clic en Ir a las opciones avanzadas en la ventana Crear clúster.

Paso 2: Configurar el software y los pasos del clúster

2.1. En la sección Configuración de software, seleccione el software necesario para su clúster o mantenga las opciones predeterminadas para comenzar rápidamente.

2.2. Si lo desea, puede escribir toda la información de la configuración necesaria para conectarse al catálogo de datos de AWS Glue, así como también introducir cualquier archivo de configuración que desee utilizar mientras configura el software de su clúster.

No habilite la opción Utilizar varios nodos maestros para mejorar la disponibilidad del clúster, ya que esta opción no es compatible con las flotas de instancias que configuraremos en los siguientes pasos.

2.3. Si lo desea, puede configurar los pasos que quisiera que ejecute el clúster una vez finalizado el aprovisionamiento o puede omitir este paso para demostrar rápidamente el lanzamiento de su clúster.

Puede utilizar los pasos de Amazon EMR para enviar el trabajo al marco Spark instalado en un clúster de EMR. Para obtener más información, consulte los pasos en la Guía de administración de Amazon EMR. En la consola y la CLI, logra esto mediante un paso de aplicación de Spark que ejecuta en su nombre el script spark-submit como un paso. Con la API, utiliza un paso para invocar el spark-submit mediante command-runner.jar.

2.4. Después de una revisión rápida de la configuración de su software, está listo para avanzar al siguiente paso y configurar el hardware del clúster.

Haga clic en Siguiente para continuar.

Paso 3: Configurar flotas de instancias

3.1. Seleccione Flotas de instancias en la sección Configuración de grupos de instancias.

Las flotas de instancias permiten implementar la diversificación de instancias, que es una práctica recomendada clave a la hora de aprovechar las instancias de spot de EC2. La diversificación de instancias permite utilizar varios tipos de instancias y, así, asegurarse de que Amazon EMR pueda asignar toda la capacidad necesaria para su clúster mientras controla automáticamente las interrupciones.

3.2. Seleccione la VPC y una o más subredes donde le gustaría implementar el clúster de Amazon EMR.

Le recomendamos elegir más de una zona de disponibilidad. Su clúster igualmente se implementará en una sola zona de disponibilidad. Sin embargo, seleccionar varias zonas de disponibilidad permite que Amazon EMR las examine a todas a fin de implementar su clúster en la zona de disponibilidad que tenga la mayor capacidad de spot de EC2 para ejecutar el clúster.

3.3. Configure el tamaño del volumen de EBS del dispositivo raíz según sea necesario o manténgalo en el valor predeterminado para continuar.

3.4. Desplácese hacia abajo hasta la sección flota de instancias de tareas y seleccione agregar o eliminar tipos de instancias en la flota.

Las flotas de instancias le permiten especificar hasta cinco tipos de instancias por flota para que Amazon EMR pueda aprovisionar capacidad de múltiples grupos disponibles de capacidad de instancias de spot de EC2.

Recomendamos el uso de instancias bajo demanda para nodos maestros y principales a menos que esté lanzando cargas de trabajo muy efímeras.

Puede obtener más información sobre los casos de uso típicos y revisar las recomendaciones para el uso de las instancias de spot de EC2 con Amazon EMR aquí.

3.5. Seleccione hasta cinco tipos de instancias para utilizar en su flota de instancias de nodos de tarea. Debe considerar los tipos de instancias con una CPU virtual similar a las relaciones de memoria en varias familias de instancias.

Puede utilizar el Asistente de instancias de spot para obtener más información sobre el ahorro de costos promedio y la tasa de interrupción para instancias compatibles con EMR. 

3.6. Configure las unidades de spot y bajo demanda de su flota de instancias y, si lo desea, configure las unidades de cada tipo de instancia.

Aumentar la cantidad de unidades de spot y bajo demanda determinará la capacidad que se aprovisiona para su clúster. Para comenzar rápidamente y reducir los costos de esta explicación, se recomienda que solo implemente una pequeña cantidad de unidades de spot (por ejemplo, 8) y ninguna unidad bajo demanda.

De forma predeterminada, las unidades de cada tipo de instancia coincidirán con la cantidad de núcleos virtuales para ese tipo de instancia. Puede configurar esto según sea necesario para brindar a los diferentes tipos de instancias más peso, lo que se tendrá en cuenta cuando Amazon EMR alcance la capacidad de su flota de instancias.

También puede especificar la cantidad de unidades que se completarán con instancias bajo demanda o instancias de spot de EC2. Esto le permite combinar múltiples tipos de instancias y opciones de compra a fin de lograr la diversificación de instancias y la capacidad necesaria para su clúster.

3.7. Si lo desea, puede configurar la duración definida y el tiempo de espera de aprovisionamiento para su clúster.

El tiempo de espera de aprovisionamiento le permite definir el comportamiento del clúster si Amazon EMR no puede aprovisionar capacidad para su flota de instancias. El comportamiento predeterminado es el de Terminar. Sin embargo, si lo desea, puede hacer que el clúster intente aprovisionar instancias bajo demanda en lugar de instancias de spot si se supera el tiempo de espera.

Puede obtener más información sobre estas opciones aquí.

3.8. Después de una revisión rápida de la configuración de su hardware, está listo para avanzar al siguiente paso y establecer la configuración general del clúster.

Haga clic en Siguiente para continuar.

Paso 4: Configuraciones generales del clúster

4.1. Especifique un nombre para el clúster o acepte el nombre predeterminado mi clúster para continuar.

Si lo desea, puede configurar el registro, la depuración y la protección contra terminación

Puede obtener más información sobre el registro y la depuración aquí.

Para obtener más información sobre la protección contra terminación, consulte aquí.

4.2. Si lo desea, puede configurar cualquier etiqueta relevante para su clúster. Las etiquetas ayudan a identificar el equipo que es propietario del clúster creado o el entorno al que pertenece.

Puede obtener más información sobre el etiquetado aquí.
 

4.3. Si lo desea, puede configurar cualquier opción adicional que sea necesaria para su clúster, como la visualización coherente del EMRFS, el ID de la AMI personalizado y acciones de arranque.

4.4. Después de una revisión rápida de la configuración general del clúster, está listo para avanzar al siguiente paso y establecer la configuración de seguridad del clúster.

Haga clic en Siguiente para continuar. 

Paso 5: Seguridad

5.1. Si lo desea, puede establecer cualquier configuración de seguridad que sea necesaria para su clúster, incluidos pares de claves, perfiles y roles de la instancia, grupos de seguridad y cifrado.

5.2. Después de una revisión rápida de la configuración de seguridad del clúster, está listo para crearlo.

Haga clic en Crear clúster para lanzar su clúster de Amazon EMR nuevo que ejecuta instancias de spot EC2.

Felicitaciones

Ya ha lanzado un clúster de Amazon EMR en instancias de spot de EC2. Ahora está listo para integrar las instancias de spot a sus clústeres de EMR y comenzar a optimizar las cargas de trabajo de big data en cuanto al costo y el rendimiento.

¿Le resultó útil este tutorial?

Gracias
Indíquenos lo que le gustó.
Cerrar
Lamentamos haberlo decepcionado
¿Hay información desactualizada, confusa o inexacta? Ayúdenos a mejorar este tutorial con sus comentarios.
Cerrar

Ejecute aplicaciones de Spark con EMR

Ahora que ha aprendido a utilizar las instancias de spot de EC2 con Amazon EMR, está listo para implementar flotas de instancias y otras prácticas recomendadas aprendidas en sus propias cargas de trabajo. Si desea continuar aprendiendo, le recomendamos seguir el taller autoguiado que se encuentra aquí.

Lea la documentación

Obtenga información sobre la funcionalidad y las capacidades de Amazon EMR a través de la guía de administración de Amazon EMR.

Explore las instancias de spot de Amazon EC2

Si desea obtener más información acerca de las instancias de spot de Amazon EC2, visite la página del producto de las instancias de spot de Amazon EC2 para explorar la documentación, los videos, los blogs y más.