下载Kafka
《Kafka官网下载》
注意:下载的是二进制文件,不要下载源码!这里可以采用第三方下载工具加速下载,如:迅雷等
上传到Linux服务器的/data/目录下进行解压
tar -zxvf是解压文件命令,-C表示把解压文件放到哪个目录下
tar -zxvf /data/kafka_2.12-3.5.0.tgz -C /data/
启动Kafka
修改环境变量
vim /etc/profile
export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL下追加内容:
#kafka
export KAFKA_HOME=/data/kafka_2.12-3.5.0
export PATH=$PATH:$KAFKA_HOME/bin
按ESC键后输入:wq保存,使环境变量生效
source /etc/profile
修改配置文件
查看hostname,然后我的hostname就是node1
hostname
vim /data/kafka_2.12-3.5.0/config/kraft/server.properties
process.roles=broker,controller
#如果是集群,则node.id必须唯一
node.id=1
#控制角色选举值=node.id@node1:9093
controller.quorum.voters=1@node1:9093
#客户端ip/服务器名称:port
advertised.listeners=PLAINTEXT://node1:9092
#数据存放目录
log.dirs=/data/kafka_2.12-3.5.0/data
修改启动参数
vim /data/kafka_2.12-3.5.0/bin/kafka-server-start.sh
修改内存大小(默认1G,正式环境为了提升性能应该尽可能大。)
if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then
export KAFKA_HEAP_OPTS="-Xmx256m -Xms256m"
fi
启动kafka
编写启动kafka脚本
vim /data/kafka_2.12-3.5.0/reStartKafka.sh
确保进入到了kafka的安装目录下
#!/bin/bash
. /etc/profile
KAFKA_PATH="/data/kafka_2.12-3.5.0"
echo 'restart kafka'
pid=$(ps -ef|grep kafka|grep -w ${KAFKA_PATH}|grep -v 'grep'|awk '{print $2}')
if [ -n "$pid" ]
then
echo 'kafka is running,kill $pid'
kill -9 $pid
fi
sleep 3
rand=`${KAFKA_PATH}/bin/kafka-storage.sh random-uuid`
echo $rand
${KAFKA_PATH}/bin/kafka-storage.sh format -t $rand -c ${KAFKA_PATH}/config/kraft/server.properties
nohup ${KAFKA_PATH}/bin/kafka-server-start.sh ${KAFKA_PATH}/config/kraft/server.properties >/dev/null 2>log &
echo 'restart kafka finish'
授予可执行权限
chmod +x /data/kafka_2.12-3.5.0/reStartKafka.sh
软连接
ln -s /data/kafka_2.12-3.5.0/reStartKafka.sh /usr/bin
启动kafka
sh /data/kafka_2.12-3.5.0/reStartKafka.sh
等待几秒后查看kafka是否启动成功,太快可能会打印-- main class information unavailable
jps
成功则会打印如下信息
# pid | name
12337 Kafka
12788 Jps
停止kafka
查看kafka pid
netstat -ntlp | grep java
根据pid杀死kafka进程
kill -9 pid
重启kafka
sh reStartKafka.sh