创建topic,指定备份分区数

bin/kafka-topics.sh --create --zookeeper zk:2181 --replication-factor 2 --partitions 4 --topic test-topic

查看topic

查看topic列表

bin/kafka-topics.sh --zookeeper zk:2181–list

查看topic分区情况

bin/kafka-topics.sh --zookeeper zk:2181 --describe

指定topic

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

创建producer

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

创建consumer

bin/kafka-console-consumer.sh --zookeeper zk:2181 --topic test-topic

bin/kafka-console-consumer.sh --zookeeper zk:2181 --topic test-topic --from-beginning

新生产者(支持0.9版本+)

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

新消费者(支持0.9版本+)

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

修改主题分区

./kafka-topics.sh --zookeeper zk:2181 --alter --topic TEST_16 --partitions 16

修改主题参数

修改保存时间

bin/kafka-topics.sh --zookeeper zk:2181 -topic test--alter --config retention.ms=86400000

基于0.8.0版本。

重新分配分区kafka-reassign-partitions.sh

这个命令可以分区指定到想要的--broker-list上 bin/kafka-reassign-partitions.sh --topics-to-move-json-file topics-to-move.json --broker-list "171" --zookeeper 192.168.197.170:2181,192.168.197.171:2181 --execute cat topic-to-move.json {"topics": [{"topic": "test2"}], "version":1 }

为Topic增加 partition数目kafka-add-partitions.sh

bin/kafka-add-partitions.sh --topic test --partition 2 --zookeeper 192.168.197.170:2181,192.168.197.171:2181 (为topic test增加2个分区)

手动均衡topic

bin/kafka-preferred-replica-election.sh --zookeeper 192.168.197.170:2181,192.168.197.171:2181 --path-to-json-file preferred-click.json

cat preferred-click.json

{ "partitions": [ {"topic": "click", "partition": 0}, {"topic": "click", "partition": 1}, {"topic": "click", "partition": 2}, {"topic": "click", "partition": 3}, {"topic": "click", "partition": 4}, {"topic": "click", "partition": 5}, {"topic": "click", "partition": 6}, {"topic": "click", "partition": 7}, {"topic": "play", "partition": 0}, {"topic": "play", "partition": 1}, {"topic": "play", "partition": 2}, {"topic": "play", "partition": 3}, {"topic": "play", "partition": 4}, {"topic": "play", "partition": 5}, {"topic": "play", "partition": 6}, {"topic": "play", "partition": 7}

] }

分区迁移,扩容

cat > increase-replication-factor.json <<EOF {"version":1, "partitions":[ {"topic":"__consumer_offsets","partition":0,"replicas":[0,1]}, {"topic":"__consumer_offsets","partition":1,"replicas":[0,1]}, {"topic":"__consumer_offsets","partition":2,"replicas":[0,1]}, {"topic":"__consumer_offsets","partition":3,"replicas":[0,1]}] } EOF

执行

bin/kafka-reassign-partitions.sh --zookeeper localhost:2181 --reassignment-json-file increase-replication-factor.json --execute

验证

bin/kafka-reassign-partitions.sh --zookeeper localhost:2181 --reassignment-json-file increase-replication-factor.json --verify

0.8版本查询offset信息

bin/kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zookeeper zk:2181 --group test--topic test

新消费者列表查询(支持0.9版本+)

bin/kafka-consumer-groups.sh --new-consumer --bootstrap-server localhost:9092 --list

显示某个消费组的消费详情(仅支持offset存储在zookeeper上的)

bin/kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zookeeper localhost:2181 --group test

显示某个消费组的消费详情(支持0.9版本+)

bin/kafka-consumer-groups.sh --new-consumer --bootstrap-server localhost:9092 --describe --group test-consumer-group

平衡leader

bin/kafka-preferred-replica-election.sh --zookeeper zk_host:port/chroot

kafka自带压测命令

bin/kafka-producer-perf-test.sh --topic test --num-records 100 --record-size 1 --throughput 100 --producer-props bootstrap.servers=localhost:9092

broker配置项 默认值 推荐值 示例 说明
broker.id null null broker.id=1 当前broker的id,集群内互异
host.name null null host.name=10.10.10.10 broker的主机地址,若有配置,会绑定到该地址,若没有,会绑定到所有的地址
0.10版本引入listeners配置,若listeners有配置,该项不生效
port 9092 9092 port=9092 broker监听端口
0.10版本引入listeners配置,若listeners有配置,该项不生效
listeners "" PLAINTEXT://10.10.10.10:9092 listeners=PLAINTEXT://10.10.10.10:9092 服务监听配置
auto.create.topics.enable true false auto.create.topics.enable=false 允许自动创建主题
auto.leader.rebalance.enable true true auto.leader.rebalance.enable=true 后台定期自动重分配leader
default.replication.factor 1 3 default.replication.factor=3 默认副本数,同时也决定了集群所有主题均可以正常使用的允许的宕机台数为N-1(N为配置值)
delete.topic.enable true true delete.topic.enable=true 允许删除主题
group.initial.rebalance.delay.ms 3000 3000 group.initial.rebalance.delay.ms=3000 消费组内各节点第一次启动的负载均衡分配等待时间,配置越大意味着重新平衡次数越少,但会增加等待时间
log.cleaner.enable true true log.cleaner.enable=true 清理策略定义的过期数据日志
log.dirs null pathtokafka/kafka-instance-logs log.dirs=/app/kafka/kafka-test-logs kafka数据日志目录
log.flush.interval.messages 9223372036854775807 20000(根据实际业务情况配置) log.flush.interval.messages=20000 将分区消息刷到磁盘的消息量
log.flush.interval.ms =log.flush.scheduler.interval.ms=9223372036854775807 300000 log.flush.interval.ms=300000 将消息刷到磁盘的时间间隔
log.retention.check.interval.ms 300000 600000 log.retention.check.interval.ms=600000 失效数据日志检查间隔
log.retention.hours 168 72 log.retention.hours=72 数据保留时间
log.segment.bytes 1073741824 1073741824 log.segment.bytes=1073741824 单个数据文件大小
num.io.threads 8 8 num.io.threads=8 服务器用于处理请求的线程数,包括磁盘I/O,可根据核数适当增加
num.network.threads 3 8 num.network.threads=8 处理网络请求的线程数,主要用于读写缓冲区数据,一般不需要太大,可根据核数适当增加
num.partitions 1 4 num.partitions=4 默认主题分区数
num.recovery.threads.per.data.dir 1 16(各目录总和核数一半左右) num.recovery.threads.per.data.dir=16 宕机后恢复数据,清理数据的线程数,比较消耗CPU
num.replica.fetchers 1 8 num.replica.fetchers=8 数据同步线程数
socket.receive.buffer.bytes 102400 1048576 socket.receive.buffer.bytes=1048576 socket的接收缓冲区 (SO_RCVBUF)
socket.send.buffer.bytes 102400 1048576 socket.send.buffer.bytes=1048576 socket的发送缓冲区(SO_SNDBUF)
socket.request.max.bytes 104857600 104857600 socket.request.max.bytes=104857600 socket请求的最大字节数
transaction.state.log.min.isr 1 1 transaction.state.log.min.isr=1 消息提交后返回成功的最小副本数,ISR中副本数
zookeeper.connect "" "" zookeeper.connect=10.10.10.10:2181/kafka/instance zk连接串
zookeeper.connection.timeout.ms =zookeeper.session.timeout.ms=6000 6000 zookeeper.connection.timeout.ms zk连接超时时间

Kafka常用命令及配置文件的更多相关文章

  1. kafka常用命令

    以下是kafka常用命令行总结: 0.查看有哪些主题: ./kafka-topics.sh --list --zookeeper 192.168.0.201:12181 1.查看topic的详细信息 ...

  2. Kafka学习之四 Kafka常用命令

    Kafka常用命令 以下是kafka常用命令行总结: 1.查看topic的详细信息 ./kafka-topics.sh -zookeeper 127.0.0.1:2181 -describe -top ...

  3. nginx学习,看这一篇就够了:下载、安装。使用:正向代理、反向代理、负载均衡。常用命令和配置文件

    前言一.nginx简介1. 什么是 nginx 和可以做什么事情Nginx 是高性能的 HTTP 和反向代理的web服务器,处理高并发能力是十分强大的,能经受高负 载的考验,有报告表明能支持高达 50 ...

  4. [转帖]nginx学习,看这一篇就够了:下载、安装。使用:正向代理、反向代理、负载均衡。常用命令和配置文件

    nginx学习,看这一篇就够了:下载.安装.使用:正向代理.反向代理.负载均衡.常用命令和配置文件 2019-10-09 15:53:47 冯insist 阅读数 7285 文章标签: nginx学习 ...

  5. Kafka常用命令收录

    目录 目录 1 1. 前言 2 2. Broker默认端口号 2 3. 安装Kafka 2 4. 启动Kafka 2 5. 创建Topic 2 6. 列出所有Topic 3 7. 删除Topic 3 ...

  6. Hadoop生态圈-Kafka常用命令总结

    Hadoop生态圈-Kafka常用命令总结 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.管理Kafka服务的命令 1>.开启kafka服务 [yinzhengjie@s ...

  7. Kafka常用命令合集

    在上一篇文章<Linux安装Kafka>中,已经介绍了如何在Linux安装Kafka,以及Kafka的启动/关闭和创建发话题并产生消息和消费消息.这篇文章就介绍介绍Kafka的那些常用的命 ...

  8. linux常用命令及配置文件

    linux常用命令 基于centos 以我自己实际使用情况来说,从最常用的开始开始,大致如下: 1. 基本命令 cd ls ll(ls -l 别名 ) cat vi/vim touch echo mk ...

  9. KVM常用命令及配置文件

    1.查看虚拟机配置文件 [root@KVM tmp]# ls /etc/libvirt/qemu/ damowang.xml networks [root@KVM tmp]# ls /etc/libv ...

随机推荐

  1. Django专题-AJAX

    AJAX准备知识:JSON 什么是 JSON ? JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation) JSON 是轻量级的文本数据交换格式 JS ...

  2. 帝国CMS7.5后台美化模板 后台风格修改 帝国CMS后台模板

    都知道帝国CMS功能强悍,生成静态html也非常好用.可是有时候他的后台样式,丑的让你不想用,dede呢,漏洞太多,PHPCMS好看,可是门槛要求高,你会写PHP才行. 帝国CMS后台美化模板:全面美 ...

  3. Python笔记_第三篇_面向对象_1.面向对象的基本概念和作用域

    1. 软件编程的实质: 软件编程就是将我们的思维转变成计算机能够识别语言的一个过程.重要的是思想,代码技术反而次要.因此思想也是最难的,突破固定的思想是关键 2. 什么是面向过程: * 自上而下顺序执 ...

  4. Rails render collection 的魔法

    都知道的, 在 Rails 的 View 里边渲染集合的时候, 会用到 render 方法参数的 collection 选项 1 <%= render partial: "produc ...

  5. Juptyer中的图表显示参数

    from pylab import * import seaborn as sns # 图表显示参数 from IPython.display import display %matplotlib i ...

  6. 17.3.15---关于GPIO学习笔记

    STM32的IO口可以由软件配置成为8种模式: 1--输入浮空 2--输入上拉 3--输入下拉 4--模拟输入 5--开漏输出 6--推挽输出 7--推挽复用 8--开漏复用 STM32的每个IO口都 ...

  7. PAT甲级——1035 Password (20分)

    To prepare for PAT, the judge sometimes has to generate random passwords for the users. The problem ...

  8. 分布式ID的简单总结

    来源:郴州网站优化 简单总结一下流行的分布式id的实现方法 雪花算法 snowflake是twitter开源的分布式ID生成算法. 核心思想是:分布式ID固定是一个long型的数字,一个long型占8 ...

  9. 与http协作的web服务器

    1.虚拟主机 一台web服务器可以搭建多个独立域名的web网站,也可以作为通信线路上的中转服务器提升传输效率.比如web托管服务供应商可以用一台服务器为多个不同域名的客户提供服务,这是利用了虚拟主机( ...

  10. QLIKVIEW-日期格式,数字格式写法

    LOAD T_SAL_ORDER.LE_ID, [T_SAL_ORDER.LCY CODE], T_SAL_ORDER.SYSTEM, T_SAL_ORDER.#DataDateTime, T_SAL ...