kafka学习之安装部署

1)解压安装包

tar -zxvf kafka_2.11-2.4.1.tgz -C /opt/module/

2)修改kafka目录下config目录下的server.properties文件

vim server.properties

修改为

#broker的全局唯一编号,不能重复
broker.id=0  #====修改唯一编号
#删除topic功能使能,当前版本此配置默认为true,已从配置文件移除
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/datas  #======修改到kafka目录datas目录下
#topic在当前broker上的分区个数
num.partitions=1
#用来恢复和清理data下数据的线程数量
num.recovery.threads.per.data.dir=1
#segment文件保留的最长时间,超时将被删除
log.retention.hours=168
#配置连接Zookeeper集群地址
zookeeper.connect=hadoop102:2181,hadoop103:2181,hadoop104:2181/kafka #=====修改为自己的集群地址

3)配置环境变量

#KAFKA_HOME
export KAFKA_HOME=/opt/module/kafka
export PATH=$PATH:$KAFKA_HOME/bin

配置完成后分发到集群上然后source
分发kafka安装
4)分别在hadoop103和hadoop104上修改配置文件/opt/module/kafka/config/server.properties中的broker.id=1、broker=2
broker.id每台服务器不能重复
5)启动集群(要先打开zookeeper集群)
分别在hadoop102、hadoop03、hadoop104上的kafka目录下输入

bin/kafka-server-start.sh -daemon config/server.properties

6)关闭集群
分别在hadoop102、hadoop03、hadoop104上的kafka目录下输入

bin/kafka-server-stop.sh stop

9)编写群起脚本
在~/bin目录下创建kf.sh脚本文件

#! /bin/bash

case $1 in
"start"){
    for i in hadoop102 hadoop103 hadoop104
    do
        echo " --------启动 $i Kafka-------"
        ssh $i "/opt/module/kafka/bin/kafka-server-start.sh -daemon /opt/module/kafka/config/server.properties"
    done
};;
"stop"){
    for i in hadoop102 hadoop103 hadoop104
    do
        echo " --------停止 $i Kafka-------"
        ssh $i "/opt/module/kafka/bin/kafka-server-stop.sh stop"
    done
};;
esac

之后添加权限

chmod 777 kf.sh

kafka命令行操作
1)查看当前服务器中的所有topic

bin/kafka-topics.sh --zookeeper hadoop102:2181/kafka --list
bin/kafka-topics.sh --bootstrap-server hadoop102:9092 --list

2)创建topic

bin/kafka-topics.sh --bootstrap-server hadoop102:9092 --create --replication-factor 2 --partitions 1 --topic first

选项说明
–topic :定义topic名
–replication-factor : 定义副本数
–partitions:定义分区数
3)删除topic

bin/kafka-topics.sh --bootstrap-server hadoop102:9092 --delete --topic first

4)发送消息

bin/kafka-console-producer.sh --broker-list hadoop102:9092 --topic first

5)消费消息

bin/kafka-console-consumer.sh --bootstrap-server hadoop102:9092 --topic first
bin/kafka-console-consumer.sh --bootstrap-server hadoop102:9092 --from-beginning --topic first

–from-beginning :会把topic中现有的所以数据都读取出来。

6)查看某个topic的详情

bin/kafka-topics.sh --bootstrap-server hadoop102:9092 --describe –-topic first

7)修改分区数:分区数只能改大,改小会报错

bin/kafka-topics.sh --bootstrap-server hadoop102:9092 --alter –-topic first --partitions 3
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值