网站首页 > 技术文章 正文
环境:CentOS Linux release 8.1.1911 (Core) + zookeeper-3.6.2+kafka_2.13-2.7.0(2.13是scala版本,2.7.0是kafka版本,kafa使用scala开发的)+ jdk8
zk下载地址:
kafka下载地址:
一、环境准备
将下载的3个软件(jdk,zk,kafka)放在/root/sf目录(这里目录根据自己的情况随意)
- 解压配置jdk环境变量
tar zxvf jdk-8u221-linux-x64.tar.gz
解压后目录:
/root/sf/jdk1.8.0_221
环境变量配置:
vim /etc/profile
在最下面加入如下配置:
保存退出
执行如下命令使得配置生效
source /etc/profile
二、解压及配置zookeeper
tar zxvf apache-zookeeper-3.6.2-bin.tar.gz -C ./zk/
// 解压到当前目录下的zk目录中
进入zk:
将文件夹重命名为2181(每一个zk 服务都以自己的端口号命名)
mv apache-zookeeper-3.6.2-bin 2181
再复制2个zk分别为2182,2183
cp -R 2181 2182
cp -R 2181 2183
新建3个zk的数据保存目录:
/root/sf/datas/zk/2181
/root/sf/datas/zk/2182
/root/sf/datas/zk/2183
// 分别在没个文件夹建文件myid 内容分别为1,2,3
接着分别进入zk服务的conf目录
// 复制一个配置文件
cp zoo_sample.cfg zoo.cfg
修改zoo.cfg配置(这里以2181为例,前提的zk执行修改dataDir及端口)
这里的server.x:x就是对应myid中的内容(1,2,3)。
2182,2183分别按照上面修改完成(修改dataDir和端口)
到此zookeeper就配置完成,每次都进入不同的目录启动zk非常麻烦,这里写一个shell脚本来一次启动所有服务:
在zk目录下新建shell脚本:
touch zkServer.sh
// 编辑该文件内容
vim zkServer.sh
// 内容如下:
#!/bin/bash
age="使用: $0 (start|stop|status)"
if [ $# == 0 ];then
echo $age
exit 1
fi
behave=$1
echo "$behave zkServer cluster"
#主机名称
for i in 1 2 3
do
/root/sf/zk/218$i/bin/zkServer.sh $behave
done
exit
保存退出后执行如下命令,可执行的权限
chmod +x zkServer.sh
到此shell脚本完成,接下来测试:
启动:
./zkServer.sh start
执行jps查看刚启动的zk
到此zk就全部完成了,接下来kafka的配置
三、解压配置kafka
tar zxvf kafka_2.13-2.7.0.tgz -C ./kafka/
// 解压kafka到当前目录的kafka目录下
进入kafka目录:
将文件夹重命名为9092(每一个kafka 服务都以自己的端口号命名)
mv kafka_2.13-2.7.0 9092
再复制2个kafka分别为9093,9094
cp -R 9092 9093
cp -R 9092 9094
新建3个kafka的数据保存目录:
/root/sf/datas/kafka/9092
/root/sf/datas/kafka/9093
/root/sf/datas/kafka/9094
接着分别进入kafka服务的config目录修改server.properties文件
要修改的地方上图已经标注出来了
1、broker.id=0 // 这里的数字要唯一
2、listeners=PLAINTEXT://:9092 // 这里是kafka的端口
3、log.dirs=/root/sf/datas/kafka/9092 // 数据目录
4、zookeeper.connect=localhost:2181,localhost:2182,localhost:2183 // zk集群的地址:端口
其它2个kafka分别按照上面的方式修改即可。
到此kafka的配置就完成了。
一样3个kafka分别启动太麻烦,这里也通过shell脚本来启动kafka集群
新建kfServer.sh脚本文件:
touch kfServer.sh
vim kfServer.sh
#!/bin/bash
age="使用: $0 (start|stop)"
if [ $# == 0 ];then
echo $age
exit 1
fi
echo "$1 kafkaServer cluster"
#主机名称
for i in 2 3 4
do
if [ "$1" == "start" ];then
/root/sf/kafka/909$i/bin/kafka-server-$1.sh -daemon /root/sf/kafka/909$i/config/server.properties
fi
if [ "$1" == "stop" ];then
/root/sf/kafka/909$i/bin/kafka-server-$1.sh stop
fi
done
exit
到此kafka的所有配置完成了,接下来测试,启动kafka通过上面的脚本
启动kafka前的先启动zookeeper服务
kafka启动完成!!!
猜你喜欢
- 2024-10-25 使用自带zookeeper安装单机kafka(适合刚接触kafka的同学)
- 2024-10-25 不用 zookeeper 照样部署kafka集群
- 2024-10-25 Kafka最全详解(图文全面总结) kafka基础知识
- 2024-10-25 深入了解Apache Kafka 深入了解对方的36个问题
- 2024-10-25 kafka和zookeeper在k8s集群踩的一些坑
- 2024-10-25 Kafka 2.8独立运行,不再需要ZooKeeper
- 2024-10-25 告别 ZooKeeper:Kafka 将提供自管理的元数据仲裁机制
- 2024-10-25 Kafka架构最全详解(图文全面总结)
- 2024-10-25 Zookeeper集群搭建及原理 zookeeper集群主要有哪三种角色
- 2024-10-25 Kafka架构和原理机制(图文全面详解)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- oraclesql优化 (66)
- 类的加载机制 (75)
- feignclient (62)
- 一致性hash算法 (71)
- dockfile (66)
- 锁机制 (57)
- javaresponse (60)
- 查看hive版本 (59)
- phpworkerman (57)
- spark算子 (58)
- vue双向绑定的原理 (68)
- springbootget请求 (58)
- docker网络三种模式 (67)
- spring控制反转 (71)
- data:image/jpeg (69)
- base64 (69)
- java分页 (64)
- kibanadocker (60)
- qabstracttablemodel (62)
- java生成pdf文件 (69)
- deletelater (62)
- com.aspose.words (58)
- android.mk (62)
- qopengl (73)
- epoch_millis (61)
本文暂时没有评论,来添加一个吧(●'◡'●)