Publicado en

Instalación de Apache Kafka en Linux para Gestión de Flujos de Datos

Apache Kafka es una plataforma de mensajería distribuida diseñada para manejar grandes volúmenes de datos en tiempo real. Es utilizada en arquitecturas de streaming de datos, permitiendo la comunicación eficiente entre productores y consumidores de mensajes.

En esta guía, explicaremos cómo instalar y configurar Apache Kafka en Linux para la gestión de flujos de datos en tiempo real.

Requisitos Previos

Antes de comenzar, asegúrate de contar con:

  • Un servidor Linux (Ubuntu/Debian/CentOS/RHEL)
  • Java 8 o superior instalado
  • Apache Zookeeper instalado (Kafka lo requiere para coordinar los brokers)
  • Conexión a internet para descargar los paquetes

Requisitos de Hardware

Para un rendimiento óptimo, se recomienda:

  • Servidor Kafka:
    • CPU: 4 núcleos o más
    • RAM: 8 GB o más
    • Almacenamiento: SSD con al menos 100 GB libres
    • Red: Conectividad de alta velocidad (Gigabit Ethernet o superior)
  • Servidor Zookeeper:
    • CPU: 2 núcleos
    • RAM: 4 GB
    • Almacenamiento: 50 GB libres
    • Red: Conectividad estable y baja latencia
  • Nodos consumidores/productores:
    • CPU: 2 núcleos o más
    • RAM: 4 GB o más
    • Red: Conectividad estable

Se recomienda utilizar varios brokers para balancear la carga y evitar puntos únicos de fallo.

Paso 1: Instalación de Java

Kafka requiere Java para ejecutarse. Para verificar si Java está instalado, usa:

java -version

Si no está instalado, instálalo con:

sudo apt update && sudo apt install -y openjdk-11-jdk

Para CentOS/RHEL:

sudo yum install -y java-11-openjdk

Paso 2: Descargar e Instalar Apache Kafka

Descarga la última versión de Kafka desde el sitio oficial:

wget https://downloads.apache.org/kafka/latest/kafka_2.13-3.4.0.tgz

Extrae los archivos:

tar -xvzf kafka_2.13-3.4.0.tgz
mv kafka_2.13-3.4.0 /opt/kafka

Paso 3: Configuración de Zookeeper

Kafka usa Zookeeper para la gestión de brokers. Inicia Zookeeper con:

/opt/kafka/bin/zookeeper-server-start.sh /opt/kafka/config/zookeeper.properties &

Para ejecutarlo en segundo plano:

echo "bin/zookeeper-server-start.sh config/zookeeper.properties &" >> start-kafka.sh
chmod +x start-kafka.sh

Paso 4: Iniciar el Servidor Kafka

Inicia el broker de Kafka con:

/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties &

Para asegurarte de que Kafka está corriendo, usa:

jps

Deberías ver procesos como Kafka y QuorumPeerMain (Zookeeper).

Paso 5: Crear un Tópico en Kafka

Kafka organiza los datos en «tópicos». Para crear un tópico llamado mi-topico:

/opt/kafka/bin/kafka-topics.sh --create --topic mi-topico --bootstrap-server localhost:9092 --partitions 1 --replication-factor 1

Verifica la existencia del tópico:

/opt/kafka/bin/kafka-topics.sh --list --bootstrap-server localhost:9092

Paso 6: Crear un Productor y un Consumidor

Para enviar mensajes a un tópico:

/opt/kafka/bin/kafka-console-producer.sh --topic mi-topico --bootstrap-server localhost:9092

Escribe un mensaje y presiona Enter.

Para recibir los mensajes del tópico:

/opt/kafka/bin/kafka-console-consumer.sh --topic mi-topico --bootstrap-server localhost:9092 --from-beginning

Casos de Uso de Kafka

  • Streaming de datos en tiempo real (procesamiento de eventos)
  • Integración de microservicios (comunicación entre servicios)
  • Monitoreo y análisis de logs
  • Ingesta de datos en Big Data (ETL en tiempo real)

Conclusión

Apache Kafka es una herramienta poderosa para gestionar flujos de datos en tiempo real. Con esta guía, ahora puedes instalar, configurar y usar Kafka en Linux para transmitir datos de manera eficiente. ¡Explora más sobre su integración en arquitecturas modernas!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *