美文网首页
第三章 kafka集群部署 2019-01-

第三章 kafka集群部署 2019-01-

作者: simok | 来源:发表于2019-01-25 19:39 被阅读0次
  • 请先访问阅读底部的kafka文档链接

一、部署模版

  • 四台服务器实现,kafka集群
    server=192.168.122.4
    server=192.168.122.5
    server=192.168.122.6
    server=192.168.122.7
  • 下载安装

wget http://mirror.bit.edu.cn/apache/kafka/2.1.0/kafka_2.12-2.1.0.tgz
tar  -xf  kafka_2.12-2.1.0.tgz   -C   /home/program
ln -s  /home/program/kafka_2.12-2.1.0.tgz    /home/xxb/kafka
mkdir  /home/xxb/kafka-logs       #配置文件使用
cd /home/xxb/kafka/config
cp server.properties{,.bak}   
  • server.properties配置

1. broker.id=1
2. listeners=PLAINTEXT://192.168.122.1:9092
3. num.network.threads=3
4. num.io.threads=6
5. socket.send.buffer.bytes=102400
6. socket.receive.buffer.bytes=102400
7. log.dirs=/home/xxb/kafka-logs
8. num.partitions=4
9. num.recovery.threads.per.data.dir=1
10.log.retention.hours=48
11.log.segment.bytes=1073741824
12.log.roll.hours=1
13.log.retention.check.interval.ms=300000
14.zookeeper.connect=zk1-ip:2181,zk2-ip:2181,zk3-ip:2181
15.zookeeper.connection.timeout.ms=6000
16.auto.create.topics.enable=true
17.message.max.bytes=1000012
18.num.replica.fetchers=2
19.unclean.leader.election.enable=false
20.default.replication.factor=2
21. log.flush.interval.messages=10000
22. log.flush.interval.ms=1000

  • server.properties解释(数字对应)

1.服务器的broker id
2. 监听列表 - 监听逗号分隔的URL列表和协议。指定hostname为0.0.0.0 绑定到所有接口,将hostname留空则绑定到默认接口。合法的listener列表是:PLAINTEXT://myhost:9092,TRACE://:9091PLAINTEXT://0.0.0.0:9092, TRACE://localhost:9093
3. 服务器用于处理网络请求的线程数 cpu核数+1
4. 服务器用于执行网络请求的io线程数 cpu核数两倍,不超过三倍
5. socket服务的SO_SNDBUF缓冲区。如果是-1,则默认使用OS的。
6. socket服务的SO_RCVBUF缓冲区。如果是-1,则默认使用OS的。
7. 保存日志数据的目录
8. topic的默认分区数
9. 每个数据的目录线程数,用于启动时日志恢复和关闭时flush
10.删除日志文件保留的小时数
11.段文件配置1GB,有利于快速回收磁盘空间,重启kafka加载也会加快
12.新建一个日志段的最大时间
13.日志清除程序检查日志是否满足被删除的频率
14.与zookeeper集群连接
15.zookeeper.connection.timeout.ms=6000,连接延迟
16.启用自动创建topic
17.服务器可以接收的消息的最大大小
18.从源broker复制消息的提取线程数。递增该值可提高follower broker的I/O的并发。配置多可以提高follower的I/O并发度,单位时间内leader持有跟多请求,相应负载会增大,需要根据机器硬件资源做权衡
19.是否启用不在ISR中的副本参与选举leader的最后的手段。这样做有可能丢失数据
20.自动创建topic的默认的副本数,一个备份数量为n的集群允许n-1个节点失败
21. 每当producer写入10000条消息时,刷数据到磁盘
22. 每间隔1秒钟时间,刷数据到磁盘

二、kafka部署

kafka1——192.168.122.4

  • 按照模版部署

  • 配置区别

broker.id=1
listeners=PLAINTEXT://192.168.122.4:9092

kafka2——192.168.122.5

  • 按照模版部署

  • 配置区别

broker.id=2
listeners=PLAINTEXT://192.168.122.5:9092

kafka3——192.168.122.6

  • 按照模版部署

  • 配置区别

broker.id=3
listeners=PLAINTEXT://192.168.122.6:9092

kafka4——192.168.122.7

  • 按照模版部署

  • 配置区别

broker.id=4
listeners=PLAINTEXT://192.168.122.7:9092

三、kafka操作

  • 启动

cd kafka/bin
./kafka-server-start.sh config/server.properties &

四、kafka文档

1 kafka apache.org

2 kafka参考文档网址

3 kafak配置优化参考

相关文章

网友评论

      本文标题:第三章 kafka集群部署 2019-01-

      本文链接:https://www.haomeiwen.com/subject/kglvjqtx.html