Kafka3.2.0 + kraft集群安装部署说明
1、安装环境说明
- 麒麟操作系统10 Kafka 版本:3.2.0
- 采用4节点部署
JDK版本:建议安装JDK11或JDK17。本次部署采用:jdk-11.0.16.1 - 服务器角色如下表:
主机名称 主机IP 角色 node.id
KAFKA001 10.999.888.54 broker,controller 1
KAFKA002 10.999.888.233 broker, controller 2
KAFKA003 10.999.888.56 broker, controller 3
KAFKA004 10.999.888.170 broker 4
2、修改主机名
sudo hostnamectl set-hostname KAFKA001
sudo hostnamectl set-hostname KAFKA002
sudo hostnamectl set-hostname KAFKA003
sudo hostnamectl set-hostname KAFKA004
3、修改hosts配置
#vim /etc/hosts
10.999.888.54 KAFKA001
10.999.888.233 KAFKA002
10.999.888.56 KAFKA003
10.999.888.170 KAFKA004
4、安装JDK
略。。。
5、建立软连接
如果不配置,则会报以下错误:
/opt/softwares/kafka_2.12-3.2.0/bin/kafka-run-class.sh: line 342: exec: java
原因是:Kafka的默认/usr/bin/java
路径与我们实际的$JAVA_HOME/bin/java
路径不一致导致的
配置命令:
sudo rm -fr /usr/bin/javasudo ln -s /opt/softwares/jdk-11.0.16.1/bin/java /usr/bin/java
6、下载kafka_2.12-3.2.0.tgz并解压
sudo tar –zxvf kafka_2.12-3.2.0.tgz –C /opt/softwares
并修改权限:
sudo chown user:user -R jdk-11.0.16.1
sudo chown user:user -R kafka_2.12-3.2.0
7、修改kafka配置文件
先在/data目录下创建data文件夹和logs文件夹
sudo mkdir -p /data/kafka/data
sudo mkdir -p /data/kafka/logs
修改文件权限:
sudo chmod 777 -R /data
之后配置server.properties文件
vim /opt/softwares/kafka_2.12-3.2.0/config/kraft/server.properties
7.1、KAFKA001节点配置
#kafka的角色(controller相当于主机、broker节点相当于从机,主机类似zk功能)
process.roles=broker, controller
#节点ID(不同节点配置不同)
node.id=1
#controller服务协议别名
controller.listener.names=CONTROLLER
#全Controller列表
controller.quorum.voters=1@KAFKA001:9093
#不同服务器绑定的端口
listeners=PLAINTEXT://KAFKA001:19092,CONTROLLER://KAFKA001:9093
#broker服务协议别名
inter.broker.listener.name=PLAINTEXT
#broker对外暴露的地址(不同节点配置不同)
advertised.Listeners=PLAINTEXT://KAFKA001:19092
#协议别名到安全协议的映射
listener.security.protocol.map=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT,SSL:SSL,SASL_PLAINTEXT:SASL_PLAINTEXT,SASL_SSL:SASL_SSL
#kafka数据存储目录
log.dirs=/opt/softwares/kafka_2.12-3.2.0/data
#不允许自动创建topic,只通过命令创建
auto.create.topics.enable=false
delete.topic.enable=true
7.2、KAFKA002节点配置
#kafka的角色(controller相当于主机、broker节点相当于从机,主机类似zk功能)
process.roles=broker, controller
#节点ID(不同节点配置不同)
node.id=2
#controller服务协议别名
controller.listener.names=CONTROLLER
#全Controller列表
controller.quorum.voters=1@KAFKA001:9093,2@KAFKA002:9093
#不同服务器绑定的端口
listeners=PLAINTEXT://KAFKA002:19092,CONTROLLER://KAFKA002:9093
#broker服务协议别名
inter.broker.listener.name=PLAINTEXT
#broker对外暴露的地址(不同节点配置不同)
advertised.Listeners=PLAINTEXT://KAFKA002:19092
#协议别名到安全协议的映射
listener.security.protocol.map=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT,SSL:SSL,SASL_PLAINTEXT:SASL_PLAINTEXT,SASL_SSL:SASL_SSL
#kafka数据存储目录
log.dirs=/opt/softwares/kafka_2.12-3.2.0/data
#不允许自动创建topic,只通过命令创建
auto.create.topics.enable=false
delete.topic.enable=true
7.3、KAFKA003节点配置
#kafka的角色(controller相当于主机、broker节点相当于从机,主机类似zk功能)
process.roles=broker, controller
#节点ID(不同节点配置不同)
node.id=3
#controller服务协议别名
controller.listener.names=CONTROLLER
#全Controller列表
controller.quorum.voters=1@KAFKA001:9093,2@KAFKA002:9093,3@KAFKA003:9093
#不同服务器绑定的端口
listeners=PLAINTEXT://KAFKA003:19092,CONTROLLER://KAFKA003:9093
#broker服务协议别名
inter.broker.listener.name=PLAINTEXT
#broker对外暴露的地址(不同节点配置不同)
advertised.Listeners=PLAINTEXT://KAFKA003:19092
#协议别名到安全协议的映射
listener.security.protocol.map=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT,SSL:SSL,SASL_PLAINTEXT:SASL_PLAINTEXT,SASL_SSL:SASL_SSL
#kafka数据存储目录
log.dirs=/opt/softwares/kafka_2.12-3.2.0/data
#不允许自动创建topic,只通过命令创建
auto.create.topics.enable=false
delete.topic.enable=true
7.4、KAFKA004节点配置
#kafka的角色(controller相当于主机、broker节点相当于从机,主机类似zk功能)
process.roles=broker
#节点ID(不同节点配置不同)
node.id=4
#controller服务协议别名
controller.listener.names=CONTROLLER
#全Controller列表
controller.quorum.voters=1@KAFKA001:9093,2@KAFKA002:9093,3@KAFKA003:9093
#不同服务器绑定的端口
listeners=PLAINTEXT://KAFKA004:19092
#broker服务协议别名
inter.broker.listener.name=PLAINTEXT
#broker对外暴露的地址(不同节点配置不同)
advertised.Listeners=PLAINTEXT://KAFKA004:19092
#协议别名到安全协议的映射
listener.security.protocol.map=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT,SSL:SSL,SASL_PLAINTEXT:SASL_PLAINTEXT,SASL_SSL:SASL_SSL
#kafka数据存储目录
log.dirs=/opt/softwares/kafka_2.12-3.2.0/data
#不允许自动创建topic,只通过命令创建
auto.create.topics.enable=false
delete.topic.enable=true
8、初始化kafka集群数据目录
(1) 在KAFKA001机器上执行
./bin/kafka-storage.sh random-uuid
可以看到生成ID:_nOVlsByS8qnh4sFJEKvgg
(2) 用该ID格式化Kafka存储目录(4台节点)
[user@KAFKA001 kafka_2.12-3.2.0]# ./bin/kafka-storage.sh format -t _nOVlsByS8qnh4sFJEKvgg -c /opt/module/kafka/config/kraft/server.properties
[user@KAFKA002 kafka_2.12-3.2.0]# ./bin/kafka-storage.sh format -t _nOVlsByS8qnh4sFJEKvgg -c /opt/module/kafka/config/kraft/server.properties
[user@KAFKA003 kafka_2.12-3.2.0]# ./bin/kafka-storage.sh format -t _nOVlsByS8qnh4sFJEKvgg -c /opt/module/kafka/config/kraft/server.properties
[user@KAFKA004 kafka_2.12-3.2.0]# ./bin/kafka-storage.sh format -t _nOVlsByS8qnh4sFJEKvgg -c /opt/module/kafka/config/kraft/server.properties
9、Kafka常用命令
a.启动:sudo ./bin/kafka-server-start.sh -daemon ./config/kraft/server.properties
b.关闭:sudo ./bin/kafka-server-stop.sh ./config/kraft/server.properties
c.创建topic:
./bin/kafka-topics.sh --create --topic aa --partitions 3 --replication-factor 2 --bootstrap-server KAFKA001:19092,KAFKA002:19092,KAFKA003:19092,KAFKA004:19092
d.创建生产者:./kafka-console-producer.sh --broker-list KAFKA001:19092,KAFKA002:19092,KAFKA003:19092,KAFKA004:19092 --topic aa
e.创建消费者:./kafka-console-consumer.sh --bootstrap-server KAFKA001:19092,KAFKA002:19092,KAFKA003:19092,KAFKA004:19092 --topic aa --from-beginning
f.查看topic:
./bin/kafka-topics.sh --list --bootstrap-server KAFKA001:19092,KAFKA002:19092,KAFKA003:19092,KAFKA004:19092
g.删除topic:
./bin/kafka-topics.sh --delete --topic aa --bootstrap-server KAFKA001:19092,KAFKA002:19092,KAFKA003:19092,KAFKA004:19092
h.查看topic详细信息:
./bin/kafka-topics.sh --bootstrap-server KAFKA001:19092,KAFKA002:19092,KAFKA003:19092,KAFKA004:19092 --describe --topic aa
10、查看kafka启动情况
sudo lsof -i :19092
11、用Offest Explorer可视化工具连接kafka集群
(1)配置映射
到windows机器的C:\Windows\System32\drivers\etc\hosts
10.999.888.54 KAFKA001
10.999.888.233 KAFKA002
10.999.888.56 KAFKA003
10.999.888.170 KAFKA004
(2)安装Offest Explorer 工具 (一直点next即可)
(3)打开Offest Explorer工具,点击左上角File—Add New Connection
选择Properties配置以下内容:
配置成功!!!
Kafka3.2.0 + kraft集群安装部署说明相关推荐
- 记一次 Centos7.x Hadoop3.x集群安装部署 Pig 0.17.0
基本信息 官网 http://pig.apache.org/ 下载地址 http://www.apache.org/dyn/closer.cgi/pig https://mirror.bit.edu. ...
- HBase 1.2.6 完全分布式集群安装部署详细过程
2019独角兽企业重金招聘Python工程师标准>>> Apache HBase 是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,是NoSQL数据库,基于Google Big ...
- SolrCloud 分布式集群安装部署(solr4.8.1 + zookeeper +tomcat)
SolrCloud 分布式集群安装部署 安装软件包准备 · apache-tomcat-7.0.54 · jdk1.7 · solr-4.8.1 · zookeeper-3.4.5 注:以上软件都是基 ...
- zookeeper集群安装部署
zookeeper集群安装部署 1:规划: 集群建议至少在三台服务器上部署 192.168.1.171 192.168.1.172 192.168.1.173 2:去各 ...
- 企业实战_18_MyCat_ZK集群安装部署
接上一篇:企业实战_17_MyCat水平扩展_跨分片查询_ER分片 https://gblfy.blog.csdn.net/article/details/100066013 文章目录 一.使用ZK记 ...
- 安装部署(七) HBase集群安装部署与测试
HBase集群安装部署与测试 Hadoop 2.7.2 Spark 2.0.0 Kafka 0.10.0.0 HBase 1.2.2 Zookeeper 3.4.8 参考: http://www.t ...
- Kubernetes的学习笔记总结之k8s集群安装部署
kubernets 集群安装部署. 安装 Docker 所有节点都需要安装 Docker. apt-get update && apt-get install docker.io 安装 ...
- tidb集群安装部署
tidb集群安装部署 部署架构图 一.安装tiup curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/inst ...
- centos7 下google Kubernetes(k8s)集群安装部署
centos7 下google Kubernetes(k8s)集群安装部署 简介 安装环境 安装前准备 ECTD集群配置 命令含义: master节点配置 1.安装kubernetes和etcd 2. ...
最新文章
- sklearn GBDT(梯度下降树)模型使用RandomSearchCV获取最优参数及可视化​​​​​​​
- java 串口波特率_JAVA串口通信的方法
- opengl 教程(21) 聚光灯
- 人的大脑皮层对产品设计有何启发?
- 35个不会也要知道的Python小技巧
- 2010年北京大学计算机研究生机试真题
- STM32H7时钟树RCC分析---原理讲解(一)
- expdp的常用用法
- linux删除所有python进程,linux 下python进程查看及关闭
- 【转】C语言编程中static变量详解
- IT服务管理流程控制的绩效指标 KPI
- 【Ruby on Rails全栈课程】4.3 评论功能实现(二)--创建帖子详情页面
- bixby服务器没响应,猫盘开启ssh教程(原版系统,听闻一键x3p已经不能用了!)...
- 19/7/22 一个由王者荣耀引发的“惨案”(.NET)
- ZOJ 3380 Patchouli's Spell Cards 概率DP
- linux常用命令及其python调用
- 融汇贯通实用的socket属性典型讲解
- 为什么PHP项目运行报错502,php为什么会出现502错误
- iOS发布app到App Store教程
- python极坐标和直角坐标的转换
热门文章
- docker 容器运行后不退出
- 机器学习项目汇总,值得收藏!
- 一套完整的游戏原型设计流程究竟是怎样的?
- Arduino框架下对ESP32 NVS非易失性存储解读以及应用示例
- linux ohmyzsh shell主题包以及修改shell命令
- vue 竖向纵向仿表格 动态渲染表头表格 根据id填充单元格
- VIPKID大米网校“学费交多少,由家长说了算”背后的实力自信
- telegram java,telegram_bot
- 无刷电机和有刷电机对比
- AI绘图实战(一):制作购物车图标icon | Stable Diffusion成为设计师生产力工具