Ubuntu 20.04 搭建 kafka 集群
Kafka 是由 Apache 软件基金会开发的一个开源流处理平台,由 Scala 和 Java 编写。Kafka 是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素。 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。 对于像 Hadoop 一样的日志数据和离线分析系统,但又要求实时处理的限制,这是一个可行的解决方案。Kafka 的目的是通过 Hadoop 的并行加载机制来统一线上和离线的消息处理,也是为了通过集群来提供实时的消息。
最新版 kafka 是自带 zookeeper 的,所以不需要先安装 zk。如果是老版本请先安装 zookeeper,参考:Ubuntu 20.04搭建zookeeper集群 - InfoQ 写作平台。
1.准备
Kafka 版本:kafka_2.13-2.8.0.tgz
镜像下载地址:https://www.apache.org/dyn/closer.cgi?path=/kafka/2.8.0/kafka_2.13-.tgz
之前安装 kvm 准备三台虚拟机:192.168.2.31,192.168.2.32,192.168.33
安装 kvm 虚拟机:https://xie.infoq.cn/article/af423568b655968a605ed7fac
2.安装配置
下载 kafka
$ wget -c https://mirrors.bfsu.edu.cn/apache/kafka/2.8.0/kafka_2.13-2.8.0.tgz
解压缩
$ tar -zxvf kafka_2.13-2.8.0.tgz
移动到/usr/local
目录
$ sudo mv kafka_2.13-2.8.0 /usr/local
创建配置目录
$ cd ~
$ mkdir kafka && mkdir kafka/zookeeper && mkdir kafka/log && mkdir kafka/log/zookeeper && mkdir kafka/log/kafka
3.配置 zookeeper
修改 zookeeper.properties 配置
$ sudo nano /usr/local/kafka_2.13-2.8.0/conf/zookeeper.properties
创建对应的 myid 文件和内容。
详细配置可参考:https://xie.infoq.cn/article/09bcd9fc550307b64f321b947
4.配置 kafka
修改 server.properties 文件配置
$ nano /usr/local/kafka_2.13-2.8.0/config/server.properties
5.设置环境变量
为了方便执行语句,这里可以配置一下环境变量。
#设置环境变量
export ZK_HOME=/usr/local/kafka_2.13-2.8.0/
export PATH=$PATH:$ZK_HOME/bin
更新一下环境变量
$ source /etc/profile
6.启动 zookeeper
先启动 ZK
$ zookeeper-server-start.sh /usr/local/kafka_2.13-2.8.0/config/zookeeper.properties &
后台启动方法
$ nohup zookeeper-server-start.sh /usr/local/kafka_2.13-2.8.0/config/zookeeper.properties >/home/ubuntu/kafka/log/zookeeper/zookeeper.log 2>1 &
只有等三台全部启动后才不会报错。可以查看 zk 日志。
$ cat /home/ubuntu/kafka/log/zookeeper/zookeeper.log
7.启动 kafka
启动 kafka
$ kafka-server-start.sh /usr/local/kafka_2.13-2.8.0/config/server.properties &
后台启动方法
$ nohup kafka-server-start.sh /usr/local/kafka_2.13-2.8.0/config/server.properties >/home/ubuntu/kafka/log/kafka/kafka.log 2>1 &
同样查看 kafka 日志没有错误则启动成功。
$ cat /home/ubuntu/kafka/log/kafka/kafka.log
8.测试
创建一个名为 test 的 topic
$ kafka-topics.sh -create --zookeeper 192.168.2.31:2181,192.168.2.32:2181,192.168.2.33:2181 -replication-factor 3 --partitions 3 --topic test
查看 topic 列表
$ kafka-topics.sh --list --zookeeper 192.168.2.31:2181
test
查看 topic 详细信息
$ kafka-topics.sh --describe --zookeeper 192.168.2.31:2181 --topic test
版权声明: 本文为 InfoQ 作者【玏佾】的原创文章。
原文链接:【http://xie.infoq.cn/article/9ce9a119a3f46522314464be6】。
本文遵守【CC BY-NC-ND】协议,转载请保留原文出处及本版权声明。
评论