kafka的部署和安装

Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据,具有高性能、持久化、多副本备份、横向扩展等特点。

安装配置启动

1、 解压安装包 [root@node1 software]# tar -zxvf kafka_2.11-0.11.0.2.tgz -C /opt/module/ 2、 修改解压后的文件名称 [root@node1 module]# mv kafka_2.11-0.11.0.0/ kafka 3、 在/opt/module/kafka 目录下创建 logs 文件夹 [root@node1 kafka]$ mkdir logs 4、 修改配置文件

[root@node1 kafka]# cd config/
[root@node1 config]# vi server.propertie

#broker 的全局唯一编号,不能重复
broker.id=0
#删除 topic 功能使能
delete.topic.enable=true
#处理网络请求的线程数量
num.network.threads=3
#用来处理磁盘 IO 的现成数量
num.io.threads=8
#发送套接字的缓冲区大小
socket.send.buffer.bytes=102400
#接收套接字的缓冲区大小
socket.receive.buffer.bytes=102400
#请求套接字的缓冲区大小
socket.request.max.bytes=104857600
#kafka 运行日志存放的路径
log.dirs=/opt/module/kafka/data
#topic 在当前 broker 上的分区个数
num.partitions=1
#用来恢复和清理 data 下数据的线程数量
num.recovery.threads.per.data.dir=1
#segment 文件保留的最长时间,超时将被删除
log.retention.hours=168
#配置连接 Zookeeper 集群地址
#zookeeper.connect=node1:2181,node2:2181,node3:2181
zookeeper.connect=localhost:2181

5、配置环境变量

[root@node1 kafka]# sudo vi /etc/profile
#KAFKA_HOME
export KAFKA_HOME=/opt/module/kafka
export PATH=$PATH:$KAFKA_HOME/bin
[root@node1 kafka]# source /etc/profile

6、启动 kafka-server-start.sh -daemon

命令行的一些操作

选项说明 – topic topic名称。
– replication-factor 1 定义副本数。
– partitios 1 定义分区数。

# 创建topic
[root@node1 ~]# kafka-topics.sh --zookeeper localhost:2181 --create --replication-factor 1 --partitions 1 --topic hiwangqi

# 删除topic
[root@node1 ~]# kafka-topics.sh --zookeeper localhost:2181 --delete --topic hiwangqi

# 查看所有topic
[root@node1 ~]# kafka-topics.sh --zookeeper localhost:2181 --list

# 发送消息
[root@node1 ~]# kafka-console-producer.sh --broker-list localhost:9092 --topic hiwangqi

# 取出所有消息
[root@node1 ~]# kafka-console-consumer.sh --bootstrap-server localhost:9092 --from-beginning --topic hiwangqi

# 查看某个topic详情
[root@node1 ~]# kafka-topics.sh --zookeeper localhost:2181 --describe --topic hiwangqi

# 修改分区数
[root@node1 ~]# kafka-topics.sh --zookeeper localhost:2181 --alter --topic hiwangqi --partitions 3