大型数据库(8)--- Kafka安装与配置
2021/9/20 19:27:03
本文主要是介绍大型数据库(8)--- Kafka安装与配置,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
安装说明
安装环境
虚拟机:VirtualBox-6.1.18
操作系统:Ubuntu16.04LTS
集群情况:
主机名称 | Hadoop版本 | ZooKeeper版本 | IP地址 |
---|---|---|---|
hadoop-master | 2.7.3 | 3.6.3 | 192.168.56.1 |
hadoop-slave1 | 2.7.3 | 3.6.3 | 192.168.56.1 |
hadoop-slave2 | 2.7.3 | 3.6.3 | 192.168.56.1 |
本次安装的Kafka
Kafka版本:2.13-2.8.0
下载地址:kafka_2.13-2.8.1.tgz
其他:Kafka官网 、查看不同版本、官方文档
都准备就绪后,我们就接着往下开始安装吧!
不知道怎么准备的,我之前的文章 也许可以给你带来一些参考哦 - - - ☞ 搭建hadoop集群
大型数据库(6)— ZooKeeper安装与配置.
开始安装
- 我的两个基础软件Hadoop、Java 分别是在 /usr/hadoop 和 /usr/java下
- 其他的都安装在 ~/Hadoop 的文件夹下
- Kafka 不仅需安装在hadoop-master下,还需部署在slave机上
安装并配置Kafka
1. 解压
$ cd ~/下载 $ cp kafka_2.13-2.8.0.tgz ~/Hadoop $ cd ~/Hadoop $ tar -zxvf kafka_2.13-2.8.0.tgz $ cd kafka_2.13-2.8.0/conf
2. 配置
2.1 server.properties
// 将此处的注释去掉 listeners=PLAINTEXT://hadoop-master:9092 // Zookeeper中的设置改为: zookeeper.connect=hadoop-master:2181,hadoop-slave1:2181,hadoop-slave2:2181
2.2 本机测试
// 建议将master和slave都先开启zookeeper
此时,您可以在master主机上,稍微试试水…
$ ~/Hadoop/kafka_2.13-2.8.0/bin $ ./kafka-server-start.sh ../config/server.properties &
打印完一堆东西后,回车输入
$ jps
将会看到
这样,你的master机基本上就配置好了!
我们先将其停掉 $ ./kafka-server-stop.sh
,继续往后配置!
3. 将Kafka安装文件复制到Slave节点
$ cd ~/Hadoop $ scp -r kafka_2.13-2.8.0/ hadoop-slave1:~/Hadoop/ $ scp -r kafka_2.13-2.8.0/ hadoop-slave2:~/Hadoop/
3.1 更改 slave 机上的 broker.id 值
注:hadoop-master 中的 broker.id 默认应该为 0
进入到 hadoop-slave1: ~/Hadoop/kafka_2.13-2.8.0/config
将 server.properties 更改以下内容:
broker.id=1
进入到 hadoop-slave2: ~/Hadoop/kafka_2.13-2.8.0/config
将 server.properties 更改以下内容:
broker.id=2
启动Kafka
在各个机器上执行该命令,都应该能执行成功哦~ (不行的往下看 其他 部分)
$ ~/Hadoop/kafka_2.13-2.8.0/bin $ ./kafka-server-start.sh ../config/server.properties &
成功启动后,都应该能看到 Kafka
在 Master 上
// 创建一个topic $ ./kafka-topics.sh --create -zookeeper hadoop-master:2181 -replication-factor 1 -partitions 1 -topic test // 查看刚刚创建的topic $ ./kafka-topics.sh --list --zookeeper hadoop-master:2181 // 开启生产者,发送消息 $ ./kafka-console-producer.sh --broker-list hadoop-master:9092 --topic test
在 Slave 上
// 开启消费者,接收消息 $ ./kafka-console-producer.sh --broker-list hadoop-master:9092 --topic test
回到 Master 上,输入 ‘Hello World’ 见证历史吧!
其他
1. 启动时 zookeeper 报错
出现了这一堆的报错时…(我是在slave上发现这个问题)
是你Kafka运行的 zookeeper 版本不一样所导致的
首先看看最上面的打印的版本是什么
再看看master上正常启动时的版本
再对比 ~/Hadoop/kafka_2.13-2.8.0/libs
下 zookeeper 的 jar 包的版本
然后根据下面 path 把不能启动的机器下的 不同版本的 zookeeper的jar包 删掉即可
嗯…没错…就是这样…(我就是把它复制出来,匹配zookeeper一个个看…)
我的话…在 $HADOOP_HOME/share/hadoop/common/lib
下有一个
在 $HADOOP_HOME/share/hadoop/yarn/lib
下也有一个
我的 slave 是把这两个删掉就可以正常启动了
2. 启动时 Cluster ID 报错
这个只需要打开 $ /home/xld/test/kafka_2.13-2.8.0/config/server.properties
查看 log.dirs
将该路径下的文件夹删除,然后重启即可…
如:log.dirs=/tmp/kafka-logs 直接将 /tmp 目录下的 kafka-logs 这个文件夹整个直接删掉即可
3. 创建topic时失败
显示超时
很有可能是你 master 机的 zookeeper 还没启动哦~
把 zookeeper 启动后再试试就好了。
4. 其他骚话…
他说的是2.8之后的版本去掉自带的zookeeper,但我这发现他还是依赖运行 kafka 下的 libs 下的 jar 包,就很迷…大概是我不会弄吧…
还有就是,我发现 slave 接收信息,不开启 kafka.server 也可以…只是会多出一个 ConsoleConsumer 的玩意…
没搞明白…糊里糊涂,半桶水…
参考文章:
Kafka安装配置
kafka的安装和配置
这篇关于大型数据库(8)--- Kafka安装与配置的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-21MQ-2烟雾传感器详解
- 2024-12-09Kafka消息丢失资料:新手入门指南
- 2024-12-07Kafka消息队列入门:轻松掌握Kafka消息队列
- 2024-12-07Kafka消息队列入门:轻松掌握消息队列基础知识
- 2024-12-07Kafka重复消费入门:轻松掌握Kafka消费的注意事项与实践
- 2024-12-07Kafka重复消费入门教程
- 2024-12-07RabbitMQ入门详解:新手必看的简单教程
- 2024-12-07RabbitMQ入门:新手必读教程
- 2024-12-06Kafka解耦学习入门教程
- 2024-12-06Kafka入门教程:快速上手指南