kafka常用操作

让kafka支持外网访问

1.修改config/下的server.properties

listeners=PLAINTEXT://192.168.230.130:9092

host.name=192.168.230.130 #这里的ip填成你的kafka的ip

继续修改

advertised.listeners=PLAINTEXT://192.168.230.130:9092

2.至此,配置完成,记得重启kafka服务,可以下载kafka tools来验证是否可以外网访问

注:配置完以后,操作脚本时记得改为--bootstrap-server 192.168.230.130:9092,否则连不上。

 

常用操作

启动ZooKeeper

bin/zookeeper-server-start.sh config/zookeeper.properties

启动kafka:           

bin/kafka-server-start.sh -daemon(可选) config/server.properties

创建一个topic:      

bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

删除一个topic:   

在server.properties中增加设置,默认未开启

delete.topic.enable=true

删除主题命令

/bin/kafka-topics --delete --topic test --zookeeper localhost:2181

查看topic列表:  

bin/kafka-topics.sh --list --zookeeper localhost:2181

显示topic信息:

bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic test

删除topic数据:

如果想保留主题,只删除主题现有数据(log)。可以通过修改数据保留时间实现

 
  1. bin/kafka-configs --zookeeper localhost:2181 --entity-type topics --entity-name test --alter --add-config retention.ms=3000

  2. //修改保留时间为三秒,但不是修改后三秒就马上删掉,kafka是采用轮训的方式,轮训到这个主题发现三秒前的数据都是删掉。时间由自己在server.properties里面设置,设置见下面。


数据删除后,继续使用主题,那主题数据的保留时间就不可能为三秒,所以把上面修改的配置删掉,采用server.properties里面统一的配置。

 

bin/kafka-configs --zookeeper localhost:2181 --entity-type topics --entity-name test --alter --delete-config retention.ms

server.properties里面数据保留时间的配置

  1. log.retention.hours=168 //保留时间,单位小时

  2. log.retention.check.interval.ms=300000 //保留时间检查间隔,单位毫秒

生产者:                      

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test

消费者:                      

bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning

group当前偏移量: 

bin/kafka-consumer-groups.sh --bootstrap-server 192.168.230.130:9092 --describe --group test3

group偏移设最早: 

bin/kafka-consumer-groups.sh --bootstrap-server 192.168.230.130:9092 --reset-offsets --group test3 --topic test --to-earliest

关闭kafka:

kafka提供了关闭脚本,但是我运行的时候报错:

  • # ./bin/kafka-server-stop.sh   
  • usage: kill [ -s signal | -p ] [ -a ] pid ...  
  •        kill -l [ signal ]  

先查看一下运行的Java进程,用ps -def | grep java命令吧。

然后 /proc/进程ID目录,确认果然是kafka的进程

  • ll /proc/49494  

直接kill吧

详解:https://segmentfault.com/a/1190000016106045#item-4

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

戴国进

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值