美文网首页
kafka集群笔记

kafka集群笔记

作者: 柠檬小猪 | 来源:发表于2022-04-24 19:28 被阅读0次

需要jdk环境,kafka是用java和Scala编写的。

kafka下载地址

linux安装kafka

tar -zxvf kafka_2.12-1.0.2.tgz (或别的版本)

移动到opt/kafka

kafka环境变量 /etc/profile

KAFKA_HOME=/opt/kafka

PATH=$PATH:$KAFKA_HOME/bin

修改zookeeper文件位置,并创建相应文件夹

dataDir=/opt/zookeeper/data

修改kafka日志位置

log.dirs=/opt/kafka/kafka-logs

启动zookeeper  kafka下  (-daemon后台启动)

bin/zookeeper-server-start.sh config/zookeeper.properties

bin/zookeeper-server-start.sh -daemon config/zookeeper.properties

INFO Got user-level KeeperException when processing sessionid:0x1805e7a3b4b0000 type:create cxid:0x49 zxid:0xc8 txntype:-1 reqpath:n/a Error Path:/brokers Error:KeeperErrorCode = NodeExists for /brokers (org.apache.zookeeper.server.PrepRequestProcessor)

这不是一个报错故障,只是一个user-level KeeperException。可以忽略不做处理的

kafka安装好后,第一次启动。zookeeper日志Error:KeeperErrorCode = NoNode for /config/topics/test,是因为kafka请求访问这个路径,但是这个路径还不存在,zookeeper就抛了这个error。kafka会创建这个topic,然后访问zookeeper里topic对应的路径,zookeeper日志抛出erro

启动kafka

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

bin/kafka-server-start.sh -daemon config/server.properties

查看

ps aux | grep kafka

连接不上可能是超时时间太短

需要先搭建zookeeper集群

修改zookeeper配置文件

vim zoo.cfg

# 设置

dataDir=/opt/zookeeper/data

# 添加

server.1=node2:2881:3881

server.2=node3:2881:3881

server.3=node4:2881:3881

再搭建kafka集群

配置环境变量:KAFKA_HOME=/opt/kafka

PATH=$PATH:$KAFKA_HOME/bin

配置node2

vim /opt/kafka/config/server.properties//修改配置文件

broker.id=0

listeners=PLAINTEXT://:9092

advertised.listeners=PLAINTEXT://node2:9092     //advertised(广告),会写到zookeeper里去的发布地址

log.dirs=/opt/kafka/kafka-logs

zookeeper.connect=node2:2181,node3:2181,node4:2181/myKafka    //三个节点下的/myKafka

配置node3

vim /opt/kafka/config/server.properties

broker.id=1

listeners=PLAINTEXT://:9092

advertised.listeners=PLAINTEXT://node3:9092

log.dirs=/opt/kafka/kafka-logs

zookeeper.connect=node2:2181,node3:2181,node4:2181/myKafka

node4配置

vim /opt/kafka/config/server.properties

broker.id=2

listeners=PLAINTEXT://:9092

advertised.listeners=PLAINTEXT://node4:9092

log.dirs=/opt/kafka/kafka-logs

zookeeper.connect=node2:2181,node3:2181,node4:2181/myKafka

启动kafka

[root@node2 ~]# kafka-server-start.sh /opt/kafka/config/server.properties

[root@node3 ~]# kafka-server-start.sh /opt/kafka/config/server.properties

[root@node4 ~]# kafka-server-start.sh /opt/kafka/config/server.properties

绑定了zookeeper集群,kafka会自动形成集群,向zookeeper中/myKafka创建/controller节点(节点名唯一),谁创建成功谁就是主节点。

Kafka-eagle可以发邮件提醒运维人员

相关文章

网友评论

      本文标题:kafka集群笔记

      本文链接:https://www.haomeiwen.com/subject/vsntdrtx.html