网络中断3分钟后pulsar集群宕机
故障原因:
因为集群节点间网络故障,bookie 在心跳时间内(和 Zookeeper 交互数据)未获取到其他副本数据,认为副本丢失,继而发生集群级别的副本补齐动作(触发 Autorecovery)。海量数据复制会跟 Zookeeper 出现短时间高频次的访问,会导致 zk 几乎无法返回响应,导致整个集群Hang住,不可用。
解决办法:
- 分离 Autorecovery 程序,将其独立部署(默认是随着 bookie 一起部署),部署 3 个左右。
- 设置不敏感时间,例如 10 分钟,即如果 10 分钟内 bookie 宕机或者网络抖动,都不会触发 Autorecovery。