zookeeper集群安装

第一步:下载https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/
下载带有bin的压缩包
第二步:解压
tar -zxvf apache-zookeeperXXX.gz
移动解压后的目录到zookeeper 文件夹下  mv apache-zookeeperXXX  zookeeper

第三步:创建文件夹并修改配置文件
在zookeeper目录下创建
mkdir logs data

在conf目录下创建 zoo.cfg
写入:
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/zookeeper/data
dataLogDir=/home/zookeeper/logs
clientPort=2181
server.1=192.168.1.234:2888:3888
server.2=192.168.1.235:2888:3888
server.3=192.168.1.239:2888:3888
上面配置中的ip地址修改自己的集群ip地址

第四步:配置唯一标识必须要写
节点1执行:echo "1" > /home/zookeeper/data/myid
节点2执行:echo "2" > /home/zookeeper/data/myid
节点3执行:echo "3" > /home/zookeeper/data/myid

第五步防火墙关闭或者配置2181 2888 3888端口开放 firewall-cmd --add-port=2181/tcp --permanent
firewall-cmd --add-port=2888/tcp --permanent
firewall-cmd --add-port=3888/tcp --permanent

#重新加载防火墙配置
firewall-cmd --reload
这里我是直接关闭的,开机后不启动防火墙,因为我这里需要开机启动zk
systemctl stop firewalld.service
systemctl disable firewalld.service

第五步启动:
在所有节点bin目录下执行
sh zkServer.sh start

查看节点状态
sh zkServer.sh status


第六步设置zk开机启动
在所有节点服务器上创建/home/zookeeper/zookeeper-service.sh
赋权 chmod 777 zookeeper-service.sh
写入:
#!/bin/bash
export JAVA_HOME=/usr/java/jdk1.8.321
echo "zk启动睡眠5秒"
sleep 5
sh /home/zookeeper/bin/zkServer.sh start

第七步:加入开机启动的脚本
在/etc/rc.d/rc.local中最下面写入
sleep 3
nohup /home/kafka/bin/kafka-server-start.sh /home/kafka/config/server.properties >/dev/null 2>&1 &
修改权限chmod +x /etc/rc.d/rc.local

安装集群kafka:
第一步安装包下载:kafka官网搜索自行下载

第二步解压:tar -zxvf kafka.tgz
第三步:修改目录config中的server.properties配置
所有节点都执行新建目录 /home/kafka/kafkalogs
例如234节点上修改成如下:
broker.id=1 #这个每个节点都不一样 1 2 3 自己定义
listeners=PLAINTEXT://192.168.1.234:9092
log.dirs=/home/kafka/kafkalog
num.partitions=3
log.retention.hour=72 #这里是没有消费的消息保留3天
zookeeper.connect=192.168.1.235:2181,192.168.1.234:2181,192.168.1.239:2181

第四步:启动进行测试
在bin目录下执行,所有节点都执行
nohup ./bin/kafka-server-start.sh ./config/server.properties >/dev/null 2>&1 &

第五步:开机启动
sleep 3
nohup /home/kafka/bin/kafka-server-start.sh /home/kafka/config/server.properties >/dev/null 2>&1 &

单点安装
第一步安装包下载:kafka官网搜索自行下载

第二步解压:tar -zxvf kafka.tgz

第三步:修改配置
新建目录 /home/kafka/kafkalogs
新建目录 /home/kafka/zkdata
修改kafka日志保存路径 server.properties文件中 log.dirs=/home/kafka/kafkalogs
修改 advertised.listeners=PLAINTEXT://自己的kafkaip地址:9092  这一个一定要设置其实这个就是你开放出去给其他的客户端能连接你。
修改zookeeper.properties dataDir= /home/kafka/zkdata
参考地址:https://cloud.tencent.com/developer/article/1120698

第四步:启动单节点的 zookeeper和kafka服务
启动zookeeper:在解压的目录下执行 
后台启动:先启动zk nohup bin/zookeeper-server-start.sh config/zookeeper.properties > null &
再启动kafka nohup ./bin/kafka-server-start.sh ./config/server.properties >/dev/null 2>&1 &

第四步:验证是否启动好
    创建一个拥有1个副本的topic:

bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic topicname
1>查看主题
bin/kafka-topics.sh --list --zookeeper localhost:2181
    查看每个节点的信息:

bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic topicname

3.生产消息
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic topicname

消费消息
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic topicname

指定groupid,在consumer.properties中写入:group.id = 
bin/kafka-console-consumer.sh --bootstrap-server 192.168.1.235:9092   --topic datacenter --consumer.config /home/kafka/consumer.properties --from-beginning

Logo

Kafka开源项目指南提供详尽教程,助开发者掌握其架构、配置和使用,实现高效数据流管理和实时处理。它高性能、可扩展,适合日志收集和实时数据处理,通过持久化保障数据安全,是企业大数据生态系统的核心。

更多推荐