Cómo instalar Apache Kafka en Ubuntu 18.04

Cómo instalar Apache Kafka en Ubuntu 18.04

Apache Kafka es una plataforma de transmisión distribuida. Es útil para construir tuberías de datos de transmisión en tiempo real para obtener datos entre los sistemas o aplicaciones. Otra característica útil son las aplicaciones de transmisión en tiempo real que pueden transformar flujos de datos o reaccionar a un flujo de datos.

Este tutorial lo ayudará a instalar Apache Kafka en Ubuntu 18.04, y Ubuntu 16.04 sistemas de Linux.

Paso 1 - Instale Java

Apache Kafka requirió que Java se ejecute. Debe tener Java instalado en su sistema. Ejecute el siguiente comando a continuación para instalar OpenJDK predeterminado en su sistema desde el PPA oficial. También puede instalar la versión específica de aquí.

Actualización de sudo apto  sudo apt instalación predeterminado-jdk  

Paso 2 - Descargar Apache Kafka

Descargue los archivos binarios Apache Kafka desde su sitio web de descarga oficial. También puede seleccionar cualquier espejo cercano para descargar.

wget https: // dlcdn.apache.org/kafka/3.2.0/kafka_2.13-3.2.0.tgz  

Luego extraiga el archivo de archivo

tar xzf kafka_2.13-3.2.0.tgz  sudo mv kafka_2.13-3.2.0/usr/local/kafka  

Paso 3 - Configurar archivos de la unidad Kafka Systemd

A continuación, cree archivos de la unidad Systemd para el servicio Zookeeper y Kafka. Esto ayudará a administrar los servicios de Kafka para iniciar/dejar de usar el comando SystemCTL.

Primero, cree el archivo de la unidad Systemd para ZOOKEEPER con el siguiente comando:

sudo vim/etc/systemd/system/zookeeper.servicio  

Agregue el contenido a continuación:

[Unidad] Descripción = Documentación del servidor ZOOKEEPER Apache = http: // Zookeepers.apache.org requiere = red.Target Remote-FS.Target After = Network.Target Remote-FS.Target [Service] Type = Simple Execstart =/usr/local/kafka/bin/Zookeeper-server-start.SH/USR/LOCAL/KAFKA/CONFIG/ZOOKEEPER.Properties Execstop =/usr/local/kafka/bin/Zookeeper-server-stop.sh reinsart = on-abnormal [install] Wantedby = Multi-user.objetivo 

Guarde el archivo y cierre.

A continuación, para crear un archivo de la Unidad Kafka Systemd utilizando el siguiente comando:

sudo vim/etc/systemd/system/kafka.servicio  

Agregue el contenido a continuación. Asegúrese de establecer el correcto Java_home ruta según el Java instalado en su sistema.

[Unidad] Descripción = Documentación del servidor Apache Kafka = http: // kafka.apache.organización/documentación.html requiere = ZOOKEEPER.Servicio [Servicio] Type = Simple Environment = "java_home =/usr/lib/jvm/java-1.11.0-openjdk-amd64 "execstart =/usr/local/kafka/bin/kafka-server-start.sh/usr/local/kafka/config/servidor.Properties Execstop =/usr/local/kafka/bin/kafka-server-stop.sh [install] WantedBy = Multiuser.objetivo 

Guarde el archivo y cierre.

Recargar el Systemd Daemon para aplicar nuevos cambios.

SystemCTL-Daemon-Re-Reloting  

Paso 4 - Iniciar servidor Kafka

Kafka requirió Zookeeper, así que primero, inicie un servidor Zookeeper en su sistema. Puede usar el script disponible con Kafka para iniciar una instancia de Zookeeper de nodo único.

sudo systemctl iniciar zookeeper  

Ahora inicie el servidor Kafka y vea el estado de ejecución:

sudo systemctl iniciar kafka  sudo systemctl status kafka  

Todo listo. La instalación de Kafka se ha completado con éxito. Esta parte de este tutorial lo ayudará a trabajar con el servidor Kafka.

Paso 5 - Crea un tema en Kafka

Kafka proporciona múltiples script de carcasa preconstruida para funcionar en él. Primero, cree un tema llamado "Testtopic" con una sola partición con réplica única:

CD/USR/Local/Kafka  bin/kafka-topics.sh --create --Bootstrap-server localhost: 9092--Repplication-Factor 1-Particiones 1-topictopic  Tema Testtopic creado. 

El factor de replicación describe cuántas copias de datos se crearán. Mientras estamos ejecutando con una sola instancia, mantenga este valor 1.

Establezca las opciones de partición como la cantidad de corredores que desea que sus datos se dividan entre. Mientras estamos ejecutando con un solo corredor, mantenga este valor 1.

Puede crear múltiples temas ejecutando el mismo comando que el anterior. Después de eso, puede ver los temas creados en Kafka mediante el comando Ejecutar a continuación:

bin/kafka-topics.sh --lista -azookeeper localhost: 9092  tecadmintutorial de testtopic1 tecadmintutorial2 

Alternativamente, en lugar de crear temas manualmente, también puede configurar a sus corredores para crear temas automáticos cuando se publica un tema inexistente para.

Paso 6 - Enviar mensajes a Kafka

El "productor" es el proceso responsable de poner datos en nuestro kafka. El kafka viene con un cliente de línea de comandos que tomará la entrada de un archivo o de la entrada estándar y la enviará como mensajes al clúster Kafka. El kafka predeterminado envía cada línea como un mensaje separado.

Ejecutemos el productor y luego escribamos algunos mensajes en la consola para enviar al servidor.

productor de comodín de bin/kafka.SH --Broker-List Localhost: 9092-Topic Testtopic > Bienvenido a Kafka> Este es mi primer tema> 

Puede salir de este comando o mantener este terminal en ejecución para pruebas adicionales. Ahora abra un nuevo terminal al proceso de consumidor de Kafka en el siguiente paso.

Paso 7 - Uso de Kafka Consumer

Kafka también tiene un consumidor de línea de comandos para leer los datos del clúster Kafka y mostrar mensajes a la salida estándar.

contenedor.sh --bootstrap-server localhost: 9092--topic testtopic-desde el beginismo  Bienvenido a Kafka, este es mi primer tema 

Ahora, si todavía ha ejecutado el productor de Kafka (paso #6) en otra terminal. Simplemente escriba un texto en esa terminal del productor. Se visible inmediatamente en la terminal del consumidor. Consulte la siguiente captura de pantalla del productor y consumidor de Kafka para trabajar:

Conclusión

Ha instalado y configurado con éxito el servicio Kafka en su máquina Ubuntu Linux.