天天看点

Liunx安装Kafka集群一、简介二、准备工作三、Kafka下载四、Kafka安装五、Kafka启动六、简单验证

一、简介

Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写。

Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。 

二、准备工作

1、准备三台服务器

10.0.7.62 woniu、10.0.7.63 woniu1、10.0.7.30 woniu2

2、部署NTP服务器进行时间同步(可忽略)

https://blog.csdn.net/u011374856/article/details/103307623

3、配置主机名跟IP地址映射

https://blog.csdn.net/u011374856/article/details/103310847

4、ssh免密码登录

https://blog.csdn.net/u011374856/article/details/103311150

5、安装zookeeper集群

https://blog.csdn.net/u011374856/article/details/103315424

三、Kafka下载

http://kafka.apache.org/downloads

四、Kafka安装

1、解压压缩包

tar -zxvf kafka_2.11-2.2.0.tgz
           

2、创建以下目录

/home/data/kafka/logs

3、配置环境变量

#配置当前用户环境变量
vi ~/.bash_profile
 
#在文件中添加如下命令,记得切换自己文件路径
export KAFKA_HOME=/home/app/kafka_2.11-2.2.0
export PATH=$KAFKA_HOME/bin:$PATH
 
#立即生效
source ~/.bash_profile
           

4、编辑server.properties

#编辑server.properties
vi server.properties

#修改如下内容
broker.id=0

delete.topic.enable=true 

listeners=PLAINTEXT://woniu:9092

advertised.listeners=PLAINTEXT://woniu:9092

log.dirs=/home/data/kafka/logs

zookeeper.connect=10.0.7.62:2181,10.0.7.63:2181,10.0.7.30:2181
           

5、复制kafka文件夹到另外两台主机,注意:在拷贝目录下(例如:/home/app/)执行

scp -r kafka_2.11-2.2.0/ [email protected]:/home/app/
 
scp -r kafka_2.11-2.2.0/ [email protected]:/home/app/
           

6、编辑另外两台主机server.properties

#编辑server.properties
vi server.properties

#woniu1修改如下内容
broker.id=1

listeners=PLAINTEXT://woniu1:9092

advertised.listeners=PLAINTEXT://woniu1:9092

#=======分隔符========

#woniu2修改如下内容
broker.id=2

listeners=PLAINTEXT://woniu2:9092

advertised.listeners=PLAINTEXT://woniu2:9092
           

五、Kafka启动

#启动命令(三台都启动)
nohup kafka-server-start.sh /home/app/kafka_2.11-2.2.0/config/server.properties > /home/data/kafka/logs/kafka.log 2>&1 &

#停止命令
kafka-server-stop.sh
           

六、简单验证

1、创建topic

kafka-topics.sh \
--create --zookeeper woniu:2181,woniu1:2181,woniu2:2181 \
--replication-factor 2 \
--partitions 1 \
--topic woniu_topic 
           

2、显示topic

kafka-topics.sh --describe \
--zookeeper woniu:2181, woniu1:2181, woniu2:2181 --topic woniu_topic 
           

3、查询所有topic

kafka-topics.sh --list \
--zookeeper woniu:2181, woniu1:2181, woniu2:2181
           

4、删除topic

./kafka-topics.sh --delete \
--zookeeper  woniu:2181, woniu1:2181, woniu2:2181 --topic woniu_topic 
           

5、消息测试

#创建消费者
kafka-console-consumer.sh --bootstrap-server woniu:9092 --topic woniu_topic  --from-beginning

#创建生产者
kafka-console-producer.sh --broker-list woniu:9092 --topic woniu_topic