Cómo instalar Apache Kafka en Centos 8
- 939
- 60
- Adriana Tórrez
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.