当前位置: 首页 > news >正文

Kafka 4.0.0集群部署

Kafka 4.0.0集群部署

1.1 关闭防火墙和 selinux

关闭防火墙

systemctl stop firewalld.service
systemctl disable firewalld.service

关闭selinux

setenforce 0 #(临时生效)
sed -i 's/^SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config #(永久生效)

1.2 检查是否已经安装OpenJDK

rpm -qa|grep jdk  #如果安装先卸载jdk

下载jdk:

官网:https://www.oracle.com/java/technologies/javase-jdk8-downloads.html

选择jdk版本上传到服务器解压,这里我用的是jdk1.8.0版本

tar -xvf jdk-24.0.1-linux-x64.tar.gz
mv /usr/local/jdk-24.0.1 /usr/localvim  /etc/profileexport JAVA_HOME=/usr/local//usr/local/jdk-24.0.1
export PATH=$PATH:$JAVA_HOME/binsource /etc/profilejava -version (检查一下jdk版本查看是否安装成功)

1.3 Kafka集群安装

1.3.1 下载安装包

Kafka官网下载:http://kafka.apache.org/downloads
或者wget,下载 https://dlcdn.apache.org/kafka/4.0.0/kafka_2.13-4.0.0.tgz

1.3.2 新建一个Kafka-cluster目录,将安装Kafka-cluster目录下

cd /usr/local
mkdir kafka-cluster

1.3.3 解压安装包,重命名

tar zxvf kafka_2.13-4.0.0.tgz
mv kafka_2.13-4.0.0 kafka

1.3.4 修改配置文件

cd /usr/local/kafka-cluster/kafka/config/
cp server.properties kraft-server.properties
vi kraft-server.properties

node.id=1节点修改内容如下:

node.id=1controller.quorum.voters=1@192.168.1.151:9093,2@192.168.1.152:9093,3@192.168.1.153:9093
controller.quorum.bootstrap.servers=192.168.1.151:9093,192.168.1.152:9093,192.168.1.153:9093listeners=PLAINTEXT://192.168.1.151:9092,CONTROLLER://192.168.1.151:9093
inter.broker.listener.name=PLAINTEXTadvertised.listeners=PLAINTEXT://192.168.1.151:9092,CONTROLLER://192.168.1.151:9093
controller.listener.names=CONTROLLERlog.dirs=/data/kafka-logs

1.3.5 其他节点配置

其他节点配置相同,除以下内容:

node.id=2  #唯一 (确定id值是唯一)
listeners=PLAINTEXT://192.168.1.152:9092,CONTROLLER://192.168.1.152:9093  #修改为本机地址

1.3.6 启动

cd /usr/local/kafka-cluster/kafka

在任意节点运行:

bin/kafka-storage.sh random-uuid

得到类似结果:

e3b24c36-7e24-4173-9732-bd92ad45b3ab
# 示例(node.id 为 1):
bin/kafka-storage.sh format \--cluster-id e3b24c36-7e24-4173-9732-bd92ad45b3ab \--config config/kraft-server.propertiescd /usr/local/kafka-cluster/kafka/bin
bin/kafka-server-start.sh config/server.properties
可以发现在窗口启动之后是一个阻塞进程,会阻塞当前窗口,我们可以重新打开一个窗口进行接下来的操作,或者在启动kafka的时候使用 -daemon 参数将它声明为守护进程后台运行。
bin/kafka-server-start.sh  -daemon config/server.properties

到这一步kafka已经是部署完成了

1.3.7 使用JMX监控Kafka

vim /usr/local/kafka-cluster/kafka/bin/kafka-server-start.sh
在这个字段加入export JMX_PORT="9999"

1.3.8 Kafka自启动设置

cd /lib/systemd/system/
vim kafka.service

添加一下内容:

[Unit]
Description=Apache Kafka Server (KRaft mode)
After=network.target[Service]
Type=simple
Environment="JAVA_HOME=/usr/lib/jvm/java-17-openjdk"
ExecStart=/usr/local/kafka-cluster/kafka/bin/kafka-server-start.sh /usr/local/kafka-cluster/kafka/config/kraft-server.properties
ExecStop=/usr/local/kafka-cluster/kafka/bin/kafka-server-stop.sh
Restart=on-failure
User=root
LimitNOFILE=100000[Install]
WantedBy=multi-user.target

保存退出,刷新一下

systemctl daemon-reload
systemctl start kafka
systemctl enable kafka
systemctl status kafka

相关文章:

  • coze中怎么创建插件
  • KVM高级功能部署
  • 死锁、线程总结
  • 批量调用接口(ApiFox + Postman)
  • 【记录】Ubuntu挂载硬盘
  • ArcGIS Pro无插件加载(无偏移)天地图!一次添加长久使用
  • Langchain入门指南:一次讲清基本用法
  • jenkins打包问题jar问题
  • django 调用paramiko 向windows 上传文件
  • linux基础重定向及组合重定向
  • SCADA技术与市场全景解析
  • vue3 - 自定义hook
  • Jenkins 会被完全取代吗?
  • FPGA基础 -- Verilog门级建模之奇偶校验电路
  • 创建postgres数据库失败
  • 【PDF提取表格】批量提取PDF里的内容保存到Excel表格,批量提取PDF文档中的信息到Excel的具体步骤和注意事项
  • [neo4j]neo4j-community-5.26.0-windows的安装
  • 游戏技能编辑器开发完全指南系统架构设计之技能编辑器整体架构
  • MacOS上MySQL的安装以及使用
  • python2.7+flask1.1.4+SQLAlchemy1.3.0+Flask-SQLAlchemy2.1连接mysql稳定方式
  • wordpress主题 四亩田/免费关键词排名优化软件
  • 动态页面怎么做/泉州seo代理计费
  • 海淀区建设委员会官方网站/中国新闻社
  • 网站开发的实验心德/googleseo排名公司
  • 怎么给网站做https/湖南seo网站策划
  • wordpress增加知识共享协议/aso优化平台