基于CentOS7搭建Kafka单机环境

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/gobitan/article/details/79929677
基于CentOS7搭建Kafka单机环境
作者:家辉,日期:2018-04-13 CSDN博客: http://blog.csdn.net/gobitan
摘要:本文基于CentOS7搭建了Kafka单机版,并做了简单使用测试。

安装准备
[1] 更新CentOS 7的系统
[root@localhost ~]# yum update -y
[root@localhost ~]# reboot

[2] 安装JDK8
注意:需要设置JAVA_HOME和JRE_HOME


第一步:下载Kafka
[1] 下载

[2] 解压
[root@localhost ~]# tar zxf kafka_2.11-1.1.0.tgz

[3] 移到/opt目录
[root@localhost ~]# mv kafka_2.11-1.1.0 /opt/

第二步:启动Kafka
[1] 进入kafka目录
[root@localhost ~]# cd /opt/kafka_2.11-1.1.0/

[2] 启动zookeeper
[root@localhost kafka_2.11-1.1.0]# bin/zookeeper-server-start.sh -daemon config/zookeeper.properties

[3] 检查zookeeper端口2181是否正常监听
[root@localhost kafka_2.11-1.1.0]# netstat -an|grep 2181
tcp6       0      0 :::2181                 :::*                    LISTEN     

[4] 检查kafka默认的JVM参数配置是否需要修改
Kafka默认设置1G,即"-Xmx1G -Xms1G"。如果你的测试机内存较低,需要修改才能成功启动。参数配置位于:bin/kafka-server-start.sh

[5] 启动Kafka
[root@localhost kafka_2.11-1.1.0]# bin/kafka-server-start.sh config/server.properties

如果一切顺利,就会看到如下启动成功的日志:
[2018-04-13 10:29:16,041] INFO [KafkaServer id=0] started (kafka.server.KafkaServer)

[6] 检查Kafka的端口9092监听是否正常
[root@localhost ~]# netstat -an|grep 9092
tcp6       0      0 :::9092                 :::*                    LISTEN

第三步:测试Kafka
[1] 创建一个测试主题
[root@localhost ~]# cd /opt/kafka_2.11-1.1.0/
[root@localhost kafka_2.11-1.1.0]# bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
Created topic "test".

[2] 查看刚刚创建的test主题
[root@localhost kafka_2.11-1.1.0]# bin/kafka-topics.sh --list --zookeeper localhost:2181
test

[3] 向刚刚创建的test主题中写入数据
[root@localhost kafka_2.11-1.1.0]# bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
>Hello, Dennis!
>
"Hello Dennis!"为写入的数据。

[4] 查看刚刚写入的数据
另外开一个ssh tab连接,然后执行如下命令
[root@localhost kafka_2.11-1.1.0]# bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning
Using the ConsoleConsumer with old consumer is deprecated and will be removed in a future major release. Consider using the new consumer by passing [bootstrap-server] instead of [zookeeper].
Hello, Dennis!

此外,还可以在上一个ssh连接实时写入数据,查看的ssh里可以看到实时的输出。

参考资料:


猜你喜欢

转载自blog.csdn.net/gobitan/article/details/79929677