ubuntu18.04安装kafka_2.13-2.8.2并配置开机自启动

文章目录

  • 前言
  • 一、下载kafka
  • 二、kafka解压并,配置外部IP能访问kafka
  • 三、启动zookeeper
  • 三、启动kafka
  • 四、topic操作及消息的发送和接收
    • 1、新建一个topic,名字叫topic-test
    • 2、查看新建的topic
    • 3、监听topic消息
    • 4、给topic发送消息
  • 五、kafka配置开机自启动
    • 1、进入/lib/systemd/system/目录
    • 2、新建zookeeper.service
    • 3、新建kafka.service
    • 4、刷新systemctl配置
    • 5、systemctl测试
    • 6、设置开机启动
  • 总结


前言

当前kafka2的最新版本是kafka_2.13-2.8.2,使用kafka3将不支持jdk8,本文详细介绍kafka_2.13-2.8.2在ubuntu18.04的安装及使用。

kafka官网:kafka官网地址 https://kafka.apache.org/

jdk8安装方式请参考:Ubuntu18安装jdk8 https://blog.csdn.net/haixiangyun/article/details/132584713


一、下载kafka

kafka下载地址:kafka下载链接 https://kafka.apache.org/downloads

ubuntu18.04安装kafka_2.13-2.8.2并配置开机自启动_第1张图片

二、kafka解压并,配置外部IP能访问kafka

我的kafka压缩包放到/usr/local/下,解压kafka压缩文件并进入到kafka目录

cd /usr/local/
tar -zxf kafka_2.13-2.8.2.tgz
cd kafka_2.13-2.8.2

配置listeners

sudo vim config/server.properties 

listeners中配置本机IP地址
ubuntu18.04安装kafka_2.13-2.8.2并配置开机自启动_第2张图片

三、启动zookeeper

在kafka目录中启动

sudo bin/zookeeper-server-start.sh config/zookeeper.properties

如果是自己下载jdk配置环境变量会报错找不到java:
/usr/local/kafka_2.13-2.8.2/bin/kafka-run-class.sh: 第 330 行:exec:java:未找到
在这里插入图片描述
需要修改kafka中JAVA_HOME配置,

sudo vim bin/kafka-run-class.sh

找到JAVA_HOME的配置并修改保存

ubuntu18.04安装kafka_2.13-2.8.2并配置开机自启动_第3张图片
再重新执行启动zookeeper即可成功。如果是通过apt安装jdk8不会存在以上问题。

三、启动kafka

zookeeper服务保持开启,重新开一个终端执行

sudo bin/kafka-server-start.sh config/server.properties

四、topic操作及消息的发送和接收

保持zookeeper和kafka的服务开启,新开一个终端

1、新建一个topic,名字叫topic-test

sudo bin/kafka-topics.sh --create --topic topic-test --bootstrap-server localhost:9092

2、查看新建的topic

bin/kafka-topics.sh --list --bootstrap-server localhost:9092

3、监听topic消息

bin/kafka-console-consumer.sh --topic topic-test --from-beginning --bootstrap-server localhost:9092

4、给topic发送消息

保持zookeeper和kafka的服务开启,监听topic消息的终端开着

bin/kafka-console-consumer.sh --topic topic-test --from-beginning --bootstrap-server localhost:9092

在此终端输入消息,按回车发送,在监听端就会输出消息。说明kafka安装成功。

五、kafka配置开机自启动

1、进入/lib/systemd/system/目录

cd /lib/systemd/system/

2、新建zookeeper.service

sudo vim zookeeper.service

输入如下内容:(kafka安装目录换成自己的)

[Unit]
Description=Apache Kafka Zookeeper server
Documentation=http://zookeeper.apache.org
Requires=network.target remote-fs.target
After=network.target remote-fs.target

[Service]
Type=simple
User=root
Group=root
ExecStart=/usr/local/kafka_2.13-2.8.2/bin/zookeeper-server-start.sh /usr/local/kafka_2.13-2.8.2/config/zookeeper.properties
ExecStop=/usr/local/kafka_2.13-2.8.2/bin/zookeeper-server-stop.sh
Restart=on-abnormal

[Install]
WantedBy=multi-user.target

3、新建kafka.service

sudo vim kafka.service

输入如下内容:(jdk和kafka安装目录换成自己的)

[Unit]
Description=Apache Kafka server (broker)
Documentation=http://kafka.apache.org/documentation.html
Requires=network.target remote-fs.target
After=network.target remote-fs.target zookeeper.service

[Service]
Type=simple
User=root
Group=root
Environment="JAVA_HOME=/usr/local/jdk1.8.0_381"
ExecStart=/usr/local/kafka_2.13-2.8.2/bin/kafka-server-start.sh /usr/local/kafka_2.13-2.8.2/config/server.properties
ExecStop=/usr/local/kafka_2.13-2.8.2/bin/kafka-server-stop.sh
Restart=on-abnormal

[Install]
WantedBy=multi-user.target

4、刷新systemctl配置

sudo systemctl daemon-reload

5、systemctl测试

启动zookeeper

sudo systemctl start zookeeper

启动kafka

sudo systemctl start kafka

查看zooekeeper状态

sudo systemctl status zookeeper

查看kafka状态

sudo systemctl status kafka

停止kafka服务

sudo systemctl stop kafka

停止zookeeper服务

sudo systemctl stop zookeeper

6、设置开机启动

sudo systemctl enable zookeeper
sudo systemctl enable kafka

重启ubuntu18进行测试


总结

kafka安装还是比较简单,需要注意的是对jdk版本的依赖,以及启动zookeeper时对jdk的配置

你可能感兴趣的:(kafka,ubuntu)