当前位置:   article > 正文

kafka创建topic配置分区和副本_kafka 如何设置topic分区

kafka 如何设置topic分区

创建分区:

/path/to/kafka_home/bin/kafka-topics.sh --bootstrap-server 192.168.233.128:9092 --create --topic quickstart76-events --partitions 6 --replication-factor 2

说明:

--bootstrap-serverkafka集群的一个或多个broker地址,通过这个地址和整个kafka集群交互,也可以通过--zookeeper 参数来连接集群

--create:创建命令,同级别的还有--delete(删除)、--alter(修改)、--describe(查看详情)

--topic:制定topic的名称

--partitions:指定这个topic的分区数,分区可以将数据均衡开,不管是对生产端还是消费端。

--replication-factor:指定这个topic的每个分区的副本数,默认是1,表示只有leader,没有follower。这个参数不能设置大于集群中broker的数量,否则会报错。副本数越大写的代价就越高,但是数据丢失的可能性就越小。

查看刚刚创建好的topic

/path/to/kafka_home/bin/kafka-topics.sh --bootstrap-server 192.168.233.132:9092 --topic quickstart76-events --describe

得到结果

  1. Topic: quickstart76-events TopicId: RTYJMgt-SbSPERLyUkAI6Q PartitionCount: 6 ReplicationFactor: 2 Configs: segment.bytes=1073741824
  2. Topic: quickstart76-events Partition: 0 Leader: 3 Replicas: 3,2 Isr: 3,2
  3. Topic: quickstart76-events Partition: 1 Leader: 1 Replicas: 1,3 Isr: 1,3
  4. Topic: quickstart76-events Partition: 2 Leader: 0 Replicas: 0,1 Isr: 1,0
  5. Topic: quickstart76-events Partition: 3 Leader: 2 Replicas: 2,0 Isr: 2,0
  6. Topic: quickstart76-events Partition: 4 Leader: 3 Replicas: 3,1 Isr: 3,1
  7. Topic: quickstart76-events Partition: 5 Leader: 1 Replicas: 1,0 Isr: 1,0

可以看到有6个分区,因为我的集群总共有4个broker,所以leader被尽可能分配到了全部的broker中,

然后是follower副本,每个分区的follower副本都不会被分配到leader所在的broker,而且会尽量分散

Replicas:follower副本的brokerId

Isr:可用的follower副本的brokerId,如果某个broker宕掉了,那Isr中会没掉,但Replicas还在

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号