Cómo instalar Apache Kafka en Centos 8

Cómo instalar Apache Kafka en Centos 8

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 en un flujo de datos.

Este tutorial lo ayudará a instalar sistemas Apache Kafka Centos 8 o Rhel 8 Linux.

Requisitos previos

  • El sistema recién instalado se recomienda seguir la configuración del servidor inicial.
  • Acceso de shell al sistema CentOS 8 con cuenta de privilegios de sudo.

Paso 1 - Instale Java

Debe tener Java instalado en su sistema para ejecutar Apache Kafka. Puede instalar OpenJDK en su máquina ejecutando el siguiente comando. Además, instale algunas otras herramientas requeridas.

sudo dnf install java-11-openjdk wget vim  

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

CENTOS 8 utiliza SystemD para administrar su estado de servicios. Por lo tanto, necesitamos crear archivos de la unidad Systemd para el servicio Zookeeper y Kafka. Lo que nos ayuda a administrar los servicios de Kafka para comenzar/parar.

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

vim/etc/systemd/system/zookeeper.servicio 

Agregar a continuación Contnet:

[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/bin/bash/usr/local/kafka/bin/zookeeper-server-start.SH/USR/LOCAL/KAFKA/CONFIG/ZOOKEEPER.Properties Execstop =/usr/bin/bash/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:

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 ambiente = "java_home =/usr/lib/jvm/jre-11-openjdk" execstart =/usr/bin/bash/usr/local/kafka/bin/kafka-server-server.sh/usr/local/kafka/config/servidor.Propiedades execstop =/usr/bin/bash/usr/local/kafka/bin/kafka-server-stop.sh [install] WantedBy = Multiuser.objetivo 

Guarde el archivo y cierre.

Recargar el Systemd Daemon para aplicar 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 Start Kafka sudo SystemCtl Status Kafka 

Todo listo. Ha instalado con éxito Kafka en su CentOS 8. La siguiente parte de este tutorial lo ayudará a crear temas en el clúster Kafka y trabajar con el Servicio de Productores y Consumidor de Kafka.

Paso 5 - Creación de temas en Apache Kafka

Apache Kafka proporciona múltiples script de shell para funcionar en él. Primero, cree un tema llamado "test -tópico"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-Partitions 1-topictopic topictopic Topictopic. 

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 particiones 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 --list -azookeeper localhost: 9092 testtopic kafkaoncentos8 tutorialkafkainstallcentos8 

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 - Productor y consumidor de Apache 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> 

Ahora abra un nuevo terminal para ejecutar el proceso de consumidor Apache Kafka. Kafka también proporciona al 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 beginimiento Bienvenido a Kafka Este es mi primer tema 

La opción de -med -beginning se usa para leer mensajes desde el comienzo del tema seleccionado. Puede omitir esta opción para leer solo los últimos mensajes.

Por ejemplo, ejecute el productor y consumidor de Kafka en las terminales separadas. 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 la máquina Centos 8 Linux.