broker.id | Kafka使用唯一的一个整数来标识每个bro-ker,这就是broker.id。该参数默认是-1。如果不指定,Kafka会自动生成一个唯一值。必须保证该值在Kafka集群中是唯一的,不能与其他broker冲突。 |
log.dirs | kafka里数据文件也交log,log.dirs是存放数据的目录。 不设置默认是:/tmp/kafka-logs 可以指定多个目录,用逗号分隔。 如果硬盘充足,可以多个磁盘的目录,增加写入速度。 |
zookeeper.connect | zookeeper地址 如果要使用一套ZooKeeper环境管理多套Kafka集群,那么设置该参数的时候就必须指定ZooKeeper的chroot,比如zk1:2181,zk2:2181,zk3:2181/kafka_cluster1。结尾的/kafka_cluster1就是chroot,它是可选的配置,如果不指定则默认使用ZooKeeper的根路径。 |
listeners | [[协议]]://[主机名]:[端口]] 逗号分隔可以多个 broker端开放给clients的监听端口。如果不指定主机名,则表示绑定默认网卡;如果主机名是0.0.0.0,则表示绑定所有网卡。Kafka当前支持的协议类型包括PLAINTEXT、SSL及SASL_SSL等。 |
advertised.listeners | 参数也是用于发布给clients的监听器,不过该参数主要用于IaaS环境,比如云上的机器通常都配有多块网卡(私网网卡和公网网卡)。对于这种机器,用户可以设置该参数绑定公网IP供外部clients使用,然后配置上面的listeners来绑定私网IP供broker间通信使用。当然不设置该参数也是可以的,只是云上的机器很容易出现clients无法获取数据的问题,原因就是listeners绑定的是默认网卡,而默认网卡通常都是绑定私网IP的。在实际使用场景中,对于配有多块网卡的机器而言,这个参数通常都是需要配置的。 |
kafka broker关键参数配置
最新推荐文章于 2025-02-28 11:47:41 发布