Compartir tecnología

¿Cómo iniciar Kafka después de abandonar Zookeeper?

2024-07-08

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Cómo descargar Kafaka

Dirección del sitio web oficial
La última versión de Kafka es actualmente 3.7.1

¿Podemos ver la información de las dos versiones a continuación? ¿Qué significa eso?

  • Scala 2.12 - kafka_2.12-3.7.1.tgz (asc, sha512)
  • Scala 2.13 - kafka_2.13-3.7.1.tgz (asc, sha512)
    Debemos saber que una instancia completa de Kafka contiene al menos 3 partes:
  • Productor
  • Corredor
  • Productor-Consumidor
    Los productores y consumidores usan el lenguaje Java y el Broker usa el lenguaje Scala, así que lo entenderás. 2.12 y 2.13 son en realidad las versiones de Scala, y 3.7.1 es el número de versión oficial real de Kafka.

instalación de kafka

Primero debemos asegurarnos de que nuestro servidor tenga instalado un entorno Java:

java -version

Descargar kafka:
Especifique la ruta donde lo almacenamos con -o

wget -O /usr/local/kafka_2.13-3.7.1.tgz https://downloads.apache.org/kafka/3.7.1/kafka_2.13-3.7.1.tgz

Abrir la cremallera:

tar -zxvf  kafka_2.13-3.7.1.tgz

Configuración e inicio de Kafka.

Consejos
KafkaEs un sistema de mensajería de publicación y suscripción distribuido de alto rendimiento que puede procesar todos los datos del flujo de acción de los consumidores en el sitio web.
KafkaEn versiones anteriores, si no habíaGuardián del zoológico,Kafkano funcionará.
usadoKafkalos desarrolladores deben saber que cada vez que lanzanKafkaAl servir, primero es necesarioGuardián del zoológicoEmpezar, luego empezarKafka, los pasos son bastante complicados.
KafkaPublicado ahora2.8versión, que permite a los usuarios utilizar laGuardián del zoológicocorriendo bajoKafka, esta versión dependerá deGuardián del zoológicoEl controlador se transformó en uno basado enBalsa de KafkadeQuormControlador (modo KRaft).

Comience a través de ZooKeeper

Ver el archivo de configuración:

connect-console-sink.properties
connect-console-source.properties
connect-distributed.properties
connect-file-sink.properties
connect-file-source.properties
connect-log4j.properties
connect-mirror-maker.properties
connect-standalone.properties
consumer.properties
kraft
log4j.properties
producer.properties
server.properties
tools-log4j.properties
trogdor.conf
zookeeper.properties

1: modificar la configuración de ZooKeeper

vim zookeeper.properties  
## 配置地址用于存放zookeeper数据存储位置,不存在会自动创建
dataDir=/usr/local/kafka_data/zookeeper_data

2: Inicie ZooKeeper
Ingrese al directorio bin de Kafka:

#启动zookeeper
../bin/zookeeper-server-start.sh -daemon ./config/zookeeper.properties 
# 查看zookeeper进程是否启动  
ps -ef | grep zookeeper

3: Iniciar Kafka

vim ../config/server.properties  
#修改log.dirs地址
log.dirs=/usr/local/kafka_data/kafka_data
#启动Kafka
../bin/kafka-server-start.sh -daemon ../config/server.properties 
#通过jps命令可以查看是否启动成功,看到下面的结果表示我们的zookeeper和Kafka都启动成功了
[root@qingshan bin]# jps
7297 Jps
1592 QuorumPeerMain
7241 Kafka

Ver registro de inicio
Si no ve el proceso de Kafka usando el comando JPS después de ejecutar el comando de inicio, es posible que el inicio haya fallado.Puede consultar el registro de inicio en la ruta correspondiente y reemplazar la ruta con su propia ruta de Kafka.
/usr/local/kafka_2.13-3.7.1/bin/hs_err_pid***.log

Iniciando Kafka en modo KRaft

Abre nuestro KafkaConfiguracióndirectorio, hay una carpeta KRaft.
1: Modifícanos para modificar la ubicación de almacenamiento de datos

vim config/kraft/server.properties
log.dirs=/usr/local/kafka_data/kafka_KRaft_data

2: generar una identificación única para el directorio de almacenamiento
Hay un archivo kafka-storage.sh en el directorio bin de kafka

./kafka-storage.sh random-uuid 
#结果
bxoRVvPvR0qjT307GQ6Gag

3: formatee el directorio de almacenamiento

# 将上一步生成的唯一ID替换成自己的,启动使用kraft下的配置文件
./kafka-storage.sh  format -t bxoRVvPvR0qjT307GQ6Gag   -c  /usr/local/kafka_2.13-3.7.1/config/kraft/server.properties

Resultados de:


4: Iniciar Kafka

#执行启动命令。
./kafka-server-start.sh -daemon ../config/kraft/server.properties