Kafka安装配置

#安装启动之前必须配置好zookeeper 可以参考zookeeper安装配置-CSDN博客

一、下载安装包,并解压

复制代码
#创建目录
mkdir -p /kafka/{install,data}
#进入/kafka/install目录下
cd /kafka/install
#下载kafka
wget https://archive.apache.org/dist/kafka/3.7.0/kafka_2.12-3.7.0.tgz
#解压
tar -xzvf kafka_2.12-3.7.0.tgz

二、修改配置文件

1、修改server.properties配置文件

bash 复制代码
vim /kafka/install/kafka_2.12-3.7.0/config/server.properties
#####################server.properties修改下面数据#######
listeners=PLAINTEXT://192.168.90.243:9092
zookeeper.connect=192.168.90.243:2188
#########################################################

#zookeeper.connect  调用zookeeper服务

三、启动kafka

1、启动关闭

bash 复制代码
#启动
#启动的时候引用了配置文件
/kafka/install/kafka_2.12-3.7.0/bin/kafka-server-start.sh -daemon /kafka/install/kafka_2.12-3.7.0/config/server.properties
#关闭
/kafka/install/kafka_2.12-3.7.0/bin/zookeeper-server-stop.sh

2、验证

bash 复制代码
tail -f /kafka/install/kafka_2.12-3.7.0/logs/server.log

#以上是单体kafka搭建

四、集群搭建

本次主要记录同一台服务器上搭建集群,类似于单体的搭建方式,我们只需要配置每个节点的配置文件,然后分别启动即可,如果是分不同的服务器搭建,类似于每台服务器上搭建单体,然后在配置文件中增加相应集群相关的配置项即可使用了,以下默认已经将压缩包解压好后的操作。

1、复制配置文件

#复制server.properties文件并重命名,复制出3(集群最好大于等于三个节点)份来

bash 复制代码
cp /kafka/install/kafka_2.12-3.7.0/config/server.properties /kafka/install/kafka_2.12-3.7.0/config/server-1.properties 
cp /kafka/install/kafka_2.12-3.7.0/config/server.properties /kafka/install/kafka_2.12-3.7.0/config/server-2.properties 
cp /kafka/install/kafka_2.12-3.7.0/config/server.properties /kafka/install/kafka_2.12-3.7.0/config/server-3.properties

2、改写配置文件

bash 复制代码
#节点id,不同的节点用不同的数字表示
broker.id=1
#对外的ip及端口,端口号每个文件不要用同一个,我使用的分别是9091,9092,9093
listeners=PLAINTEXT://192.168.90.243:9091
#数据存放位置,每个节点一个如/kafka-logs-1,/kafka-logs-2,/kafka-logs-3等,不同节点使用文件不可重复,如果重复了容易启动失败
log.dirs=/usr/local/kafka_2.12-2.5.1/data/cluster/kafka-logs-1
#填zookeeper的地址,多个用,隔开
zookeeper.connect=192.168.90.243:2181

#下面ip地址改成实际ip
sed -i 's/broker.id=0/broker.id=1/g' server-1.properties
sed -i 's#listeners=PLAINTEXT://192.168.90.243:9092#listeners=PLAINTEXT://192.168.90.243:9093#g' server-1.properties
sed -i 's#log.dirs=/tmp/kafka-logs#log.dirs=/tmp/kafka-logs1#g' server-1.properties
sed -i 's/zookeeper.connect=192.168.90.243:2887/zookeeper.connect=192.168.90.243:2887/g' server-1.properties

sed -i 's/broker.id=0/broker.id=2/g' server-2.properties
sed -i 's#listeners=PLAINTEXT://192.168.90.243:9092#listeners=PLAINTEXT://192.168.90.243:9094#g' server-2.properties
sed -i 's#log.dirs=/tmp/kafka-logs#log.dirs=/tmp/kafka-logs2#g' server-2.properties
sed -i 's/zookeeper.connect=192.168.90.243:2887/zookeeper.connect=192.168.90.243:2888/g' server-2.properties


sed -i 's/broker.id=0/broker.id=3/g' server-3.properties
sed -i 's#listeners=PLAINTEXT://192.168.90.243:9092#listeners=PLAINTEXT://192.168.90.243:9095#g' server-3.properties
sed -i 's#log.dirs=/tmp/kafka-logs#log.dirs=/tmp/kafka-logs3#g' server-3.properties
sed -i 's/zookeeper.connect=192.168.90.243:2887/zookeeper.connect=192.168.90.243:2889/g' server-3.properties

3、启动kafka

bash 复制代码
/kafka/install/kafka_2.12-3.7.0/bin/kafka-server-start.sh -daemon /kafka/install/kafka_2.12-3.7.0/config/server-1.properties 

/kafka/install/kafka_2.12-3.7.0/bin/kafka-server-start.sh -daemon /kafka/install/kafka_2.12-3.7.0/config/server-2.properties 

/kafka/install/kafka_2.12-3.7.0/bin/kafka-server-start.sh -daemon /kafka/install/kafka_2.12-3.7.0/config/server-3.properties

4、验证

bash 复制代码
#1、查看运行日志
tail -f /kafka/install/kafka_2.12-3.7.0/logs/server.log
#2、查网络端口
netstat -nalpt | grep 9095
#3、lsof -i:端口
lsof -i:9093

如果可以查到端口

报错解决

为正常关闭kafka导致无法启动

解决:清空log.dirs=/tmp/kafka-logs ,/tmp/kafka-logs/ 下的所有日志,然后重新启动

相关推荐
qq_124987075310 小时前
基于Hadoop的信贷风险评估的数据可视化分析与预测系统的设计与实现(源码+论文+部署+安装)
大数据·人工智能·hadoop·分布式·信息可视化·毕业设计·计算机毕业设计
ask_baidu10 小时前
KafkaUtils
kafka·bigdata
洛豳枭薰12 小时前
消息队列关键问题描述
kafka·rabbitmq·rocketmq
lucky670713 小时前
Spring Boot集成Kafka:最佳实践与详细指南
spring boot·kafka·linq
Coder_Boy_13 小时前
基于Spring AI的分布式在线考试系统-事件处理架构实现方案
人工智能·spring boot·分布式·spring
袁煦丞 cpolar内网穿透实验室14 小时前
远程调试内网 Kafka 不再求运维!cpolar 内网穿透实验室第 791 个成功挑战
运维·分布式·kafka·远程工作·内网穿透·cpolar
岁岁种桃花儿14 小时前
CentOS7 彻底卸载所有JDK/JRE + 重新安装JDK8(实操完整版,解决kafka/jps报错)
java·开发语言·kafka
人间打气筒(Ada)14 小时前
GlusterFS实现KVM高可用及热迁移
分布式·虚拟化·kvm·高可用·glusterfs·热迁移
xu_yule14 小时前
Redis存储(15)Redis的应用_分布式锁_Lua脚本/Redlock算法
数据库·redis·分布式