Acerca de este curso
Este curso de cuatro días dirigido por un instructor comienza presentando Apache Kafka, explicando sus conceptos clave y arquitectura y discutiendo varios casos de uso comunes. Sobre esta base, aprenderá a planificar una implementación de Kafka y luego obtendrá experiencia práctica al instalar y configurar su propio clúster de múltiples nodos basado en la nube que utiliza Kafka en Cloudera Data Platform (CDP).
Luego, utilizará este grupo durante más de 20 ejercicios prácticos que siguen cubiendo una gran variedad de gama de habilidades esenciales, comenzando con cómo crear temas, productores y consumidores de Kafka, y luego continuando a través de aspectos progresivamente más desafiantes de las operaciones y el desarrollo de Kafka como los relacionados con problemas de escalabilidad, confiabilidad y rendimiento. A lo largo del curso, aprenderá y utilizará las herramientas recomendadas de Cloudera para trabajar con Kafka, incluyendo Cloudera Manager, Schema Registry, Streams Messaging Manager y Cruise Control.
PUE, Strategic Partner de Cloudera, está autorizado oficialmente por esta multinacional para impartir formación oficial en tecnologías Cloudera.
PUE está también acreditado y reconocido para realizar servicios de consultoría y mentoring en la implementación de soluciones Cloudera en el ámbito empresarial con el consiguiente valor añadido en el enfoque práctico y de negocio del conocimiento que se traslada en sus cursos oficiales.
A quién va dirigido
Este curso está diseñado para los siguientes perfiles laborales:
- Administradores de sistemas
- Ingenieros de datos
- Desarrolladores
Prerrequisitos
Se espera que todos los estudiantes tengan experiencia básica en Linux y se recomienda un dominio básico del lenguaje de programación Java. No es necesaria experiencia previa con Apache Kafka.
Objetivos del curso
Los estudiantes que completen con éxito este curso adquirirán las siguientes habilidades:
- Planificar, implementar y operar clústeres de Kafka
- Crear y administrar temas
- Desarrollar productores y consumidores
- Utilizar la replicación para mejorar la tolerancia a fallos
- Utilizar particiones para mejorar la escalabilidad
- Solucionar problemas comunes y problemas de rendimiento
Contenidos
Módulo 1: Descripción general de Kafka
- Arquitectura de alto nivel
- Casos de uso común
- Distribución de Cloudera de Apache Kafka
Módulo 2: Implementación de Apache Kafka
- Requisitos y dependencias del sistema
- Roles de servicio
- Planificación de la implementación
- Implementación de servicios de Kafka
- Ejercicio: Preparación del entorno de ejercicio
- Ejercicio: Instalación del servicio Kafka con Cloudera Manager
- Ejercicio (opcional): Crear paneles de métricas
- Ejercicio (opcional): Uso de la API de CM
Módulo 3: Conceptos básicos de la línea de comandos de Kafka
- Crear y administrar temas
- Ejecución de productores y consumidores
Módulo 4: Uso de Streams Messaging Manager (SMM)
- Descripción general de Streams Messaging Manager
- Productores, temas y consumidores
- Explorador de datos
- Brokers
- Gestión de temas
- Ejercicio: Gestión de temas mediante la CLI
- Ejercicio: Conectando productores y consumidores desde la línea de comandos
Módulo 5: Conceptos básicos de la API de Java de Kafka
- Descripción general de las API de Kafka
- Gestión de temas desde la API de Java
- Ejercicio (opcional): Gestión de temas de Kafka mediante la API de Java
- Uso de productores y consumidores de la API de Java
- Ejercicio: Desarrollo de productores y consumidores con la API de Java
Módulo 6: Mejora de la disponibilidad mediante la replicación
- Replicación
- Ejercicio: Observación del tiempo de inactividad debido a la falla del broker
- Consideraciones para el factor de replicación
- Ejercicio: Agregar réplicas para mejorar la disponibilidad
Módulo 7: Mejora de la escalabilidad de las aplicaciones
- Fraccionamiento
- Cómo se particionan los mensajes
- Ejercicio: Observar cómo las particiones afectan el rendimiento
- Grupos de consumidores
- Ejercicio: Implementación de grupos de consumidores
- Reequilibrio del consumidor
- Ejercicio: Uso de una Key para controlar la asignación de particiones
Módulo 8: Mejora de la confiabilidad de las aplicaciones
- Semántica de entrega
- Demostración (opcional): ISR vs ACK
- Entrega al productor
- Ejercicio: Productor idempotente
- Transacciones
- Ejercicio: Productores y consumidores transaccionales
- Manejo de fallas del consumidor
- Gestión de compensaciones
- Ejercicio: Detección y supresión de mensajes duplicados
- Ejercicio: Manejo de registros no válidos
- Manejo de fallas del productor
Módulo 9: Análisis de clústeres de Kafka con SMM
- Latencia de un extremo a otro
- Notificadores
- Políticas de alerta
- Casos de uso
Módulo 10: Seguimiento de Kafka
- Resumen de seguimiento
- Monitoreo usando Cloudera Manager
- Gráficos e informes en CM
- Recomendaciones de seguimiento
- Métricas para la resolución de problemas
- Diagnóstico de fallas en el servicio
- Ejercicio: Seguimiento de Kafka
Módulo 11: Gestión de Kafka
- Gestión del almacenamiento de temas de Kafka
- Demostración (opcional): período de retención de mensajes
- Recolección y limpieza de registros
- Reequilibrio de particiones
- Control de crucero
- Ejercicio: Instalación del control de crucero
- Ejercicio: Resolución de problemas de temas de Kafka
- Elección de líder impuro
- Ejercicio: Elección de líder impuro
- Agregar y eliminar brokers
- Ejercicio: Agregar y eliminar brokers
- Mejores prácticas
Módulo 12: Estructura, formato y control de versiones de mensajes
- Estructura del mensaje
- Registro de esquemas
- Definición de esquemas
- Evolución y control de versiones del esquema
- Cliente de registro de esquemas
- Ejercicio: Uso de un esquema Avro
Módulo 13: Mejora del rendimiento de las aplicaciones
- Tamaño del mensaje
- Procesamiento por lotes
- Compresión
- Ejercicio: Observar cómo la compresión afecta el rendimiento
Módulo 14: Mejora del rendimiento del servicio de Kafka
- Estrategias de ajuste del rendimiento para el administrador
- Tamaño del clúster
- Ejercicio: Planificación de la capacidad necesaria para un caso de uso
Módulo 15: Protección del clúster de Kafku
- Cifrado
- Autenticación
- Autorización
- Auditoría