何为副本

为何需要副本

Leader副本分布

重平衡

  1. bin/kafka-preferred-replica-election.sh --bootstrap-server localhost:9092

副本数据同步

ISR

In-sync Replicas的缩写。处于Follower副本ISR列表中的副本就是和Leader同步的副本。是否处于ISR列表有一些判定标准,这些标准可以通过参数配置修改。从而可以在可用性和数据一致性之前做权衡,就是CAP中的C和A之间平衡。

配置

ISR列表判定配置

  • replica.lag.time.max.ms=10000。10秒没发起fetch请求就移除。
  • rerplica.lag.max.messages=4。相差4条就移除。

Failover相关配置

  • min.insync.replicas=2。ISR中至少一个副本。
  • unclean.leader.election.enable=false。