- 1
Big Data en la Nube: Análisis, Transformación y Seguridad
00:40 - 2

Transformación de Datos en Cloud: Automatización y Seguridad
01:32 - 3

Big Data en la Nube: Escalabilidad, Automatización y Eficiencia
04:30 - 4

Almacenamiento y Procesamiento de Datos en la Nube
04:09 - 5
Comparativa de AWS y GCP para proyectos BigData
01:17
Automatización de Clústeres EMR con Plantillas de CloudFormation
Clase 32 de 52 • Curso de Big Data en AWS
Contenido del curso
- 9

Extracción de Datos a la Nube: Estrategias y Herramientas
02:21 - 10

Uso de Python y AWS Cloud9 para Proyectos de Big Data
10:16 - 11

Uso de Boto3 para Servicios AWS en Python
03:56 - 12

Integración de AWS API Gateway en Proyectos de Big Data
03:40 - 13

Uso de Storage Gateway para Integración de Datos en la Nube
03:13 - 14

Procesamiento de Datos en Tiempo Real con AWS Kinesis Data Stream
05:53 - 15

Creación de Kinesis Data Streams en AWS
06:50 - 16

Despliegue de Kinesis con AWS CloudFormation
10:42 - 17

Entrega y Transformación de Datos con Kinesis Firehose en AWS
03:27 - 18

Configuración de Kinesis Firehose en AWS paso a paso
05:45 - 19
Configuración Básica de Amazon Kinesis Firehose en AWS
02:53 - 20

AWS MSK: Implementación y Gestión de Apache Kafka en la Nube
03:42 - 21

Despliegue de Clúster MSK en AWS paso a paso
07:21
- 22

Transformación de Datos con AWS Glue: ETL y Catálogo de Metadatos
06:33 - 23

Instalación y Configuración de Apache Zeppelin para AWS Glue
04:49 - 24

Configuración de Developer Endpoint en AWS Glue para Apache Zeppelin
05:38 - 25

Conexión y configuración de Apache Zeppelin para ETL en AWS
08:29 - 26

Creación de un ETL con AWS Glue: Crawlers y Catalogación de Datos
08:15 - 27

Configuración y Ejecución de ETL en AWS Glue paso a paso
08:00 - 28

Creación y Ejecución de ETL con AWS Glue y S3
10:23 - 29

Procesamiento de Datos con EMR en AWS
05:30 - 30

Creación de un clúster EMR en AWS paso a paso
09:01 - 31

Conexión y Configuración de Zeppelin en Clúster EMR
03:18 - 32

Automatización de Clústeres EMR con Plantillas de CloudFormation
06:32 - 33

AWS Lambda en Proyectos de Big Data en Tiempo Real
07:02 - 34

Uso de Lambda en Arquitecturas de Big Data Real Time y Batch
04:54 - 35

Configuración de Funciones Lambda para Big Data en AWS
07:16
- 36

Consultas SQL en Big Data con AWS Athena y S3
04:50 - 37

Consultas SQL en S3 con AWS Athena y Glue Catalog
04:05 - 38

AWS Redshift: Almacenamiento y Análisis de Datos Masivos
06:37 - 39

Configuración de Amazon Redshift en AWS paso a paso
05:05 - 40

Lake Formation: Automatización y Seguridad en Gestión de Data Lakes
06:20
- 46

Seguridad en Big Data con AWS: Cifrado, Permisos y Monitoreo
03:51 - 47

Seguridad de Datos en AWS con Amazon Macie
07:32 - 48

Habilitación y Configuración de AWS Macie para Gestión de Datos Seguros
06:16 - 49

Orquestación de ETLs con Apache Airflow y Python en Big Data
04:27 - 50

Despliegue y Orquestación de Tareas con Google Cloud Composer
10:03 - 51

Arquitecturas de Big Data en Cloud: Batch y Tiempo Real
05:53
¿Cómo desplegar un clúster EMR de manera automatizada?
Desplegar un clúster EMR (Elastic MapReduce) de forma automatizada es una práctica esencial en entornos productivos. Utilizar infraestructuras como código facilita la repetición y configuración de los procesos, reduciendo el esfuerzo de administración. Vamos a explorar cómo lograrlo a través de una plantilla de CloudFormation.
¿Qué es una plantilla de CloudFormation?
Una plantilla de CloudFormation es un recurso de AWS que permite definir la infraestructura y servicios que se desean implementar. Dentro de ésta, se describe cada componente de una estructura tecnológica, y se configura para implementar un clúster EMR de manera automatizada:
-
Región y nombre del ambiente: Se define la región donde el clúster se desplegará, junto con un nombre para identificar el entorno.
-
Subredes y VPCs: Dependiendo del entorno (público o privado), se determinan las subredes y VPCs donde el clúster operará, permitiendo flexibilidad al modificar directamente las subredes o usar mapeos predefinidos.
¿Cómo gestionar los steps?
Los "steps" son acciones o comandos que se ejecutan secuencialmente dentro del clúster. En el código de infraestructura, estos steps están organizados con las siguientes reglas:
-
Dependencia: Un step no comenzará hasta que el anterior finalice, asegurando un flujo de trabajo coherente.
-
Acciones en caso de fallo: Se determina la respuesta del clúster si un step falla, como continuar con la ejecución o cancelar operaciones subsiguientes.
-
Argumentos adicionales: Se pueden incluir directorios específicos o ejecuciones puntuales personalizadas.
¿Cómo configurar las instancias del clúster?
En la plantilla, se especifica la cantidad y tipos de instancias, abarcando desde instancias master hasta instancias type core, todas con capacidad de demanda on demand. Además, aspectos como el tamaño y nombre de las instancias se determinan según necesidades específicas. Entre otros detalles, se incluyen:
-
Subred de las instancias: Se puede definir usando directamente el ID de la subred o referenciar mapeos que obtengan el ID adecuado según el entorno.
-
Seguridad y conexiones: La plantilla incluye configuraciones predeterminadas para grupos de seguridad, diferenciando entre desplegues en subredes públicas y privadas, y contemplando el uso de llaves SSH para conexión a instancias master.
-
Bootstrap actions: Acciones que se ejecutan antes de que el clúster esté activo, como el uso de scripts localizados en buckets S3.
¿Qué aplicaciones y configuraciones adicionales se pueden incluir?
El clúster EMR es altamente configurable. Aquí algunos aspectos que se pueden personalizar:
-
Aplicaciones instaladas: Se define qué aplicaciones instalar, como Zeppelin, Hadoop, Spark, especificando versiones que dependen de la versión del EMR.
-
Configuraciones de logs y Java: Es posible definir configuraciones específicas de logs y ajustar la versión de Java (p. ej., Java 1.8 en este caso).
-
Roles y etiquetas: Se especifican los roles que el clúster utilizará por defecto y las etiquetas que ayudarán a identificar los recursos.
¿Cómo se automatiza el despliegue en un entorno productivo?
El uso de repositorios de código y herramientas de integración continua como CodePipeline facilita el despliegue automatizado:
-
Repositorio de código: La plantilla de CloudFormation se almacena en repositorios como GitHub o Bitbucket.
-
CodePipeline: Toma las tareas del repositorio y despliega la plantilla, lanzando el clúster y ejecutando los steps.
-
Eventos automáticos: Herramientas como CloudWatch pueden programar eventos diarios, como lanzar pipelines a medianoche para procesar, por ejemplo, los logs del día anterior.
Esta automatización no solo agiliza procesos, sino que también optimiza costos, al permitir apagados automáticos del clúster tras completar las tareas, evitando gastos innecesarios por instancias funcionando sin uso activo.