[转帖]Kafka 核心技术与实战学习笔记(七)kafka集群参数配置(上)
一.Broker 端参数
Broke存储信息配置
- log.dirs:非常重要,指定Broker需要使用的若干文件目录路径,没有默认值必须亲自指定。
- log.dir:他只能表示单个路径,补充上一个参数用。
如何设置:
- 只要设置log.dirs,不要设置log.dir
- 线上环境一定要为log.dirs配置多个路径,具体格式为CSV格式,比如:/home/kafka1,/home/kafka2,/home/kafka3
最好保证这些目录挂载到不同的物理磁盘上:
- 提升读写性能:多块磁盘同时读写数据有更高吞吐量
- 能实现故障转移:Failover
- kafka1.1以前:Broker使用的任何一块磁盘挂掉,整个Broker进程都会被关闭
- 1.1之后:坏掉的磁盘的数据会自动转移到其他正常的磁盘上,而且Broker还能正常工作。
二.Zookeeoer的相关配置:
- Zookeeper是什么
- 分布式协调框架,负责协调管理并保存kafka集群的所有元数据信息,比如集群中有哪些Broker运行,创建哪些Topic,每个Topic多个分区,以及分区的Leader副本在哪些机器上等信息。
Zookeeper.connect
- 这也是CSV格式的参数,比如zk1:2181,zk2:2181,zk3:2181
- 多个kafka使用同一套zookeeper集群,使用chroot,类似于别名。
三.客户端程序或者其他Broker与该Broker的配置:
- listeners:监听器,告诉外部连接者要通过什么协议访问指定主机名和端口开放kafka的服务。
- advertised.listeners:和listeners相比多了个advertised。Advertised含义是公开的,因此这组 监听器是Broker对外公布的。
监听器的概念:
- 他是由若干个逗号分隔的三元组,每个三元组格式为<协议名称,主机号,端口号>
- listener.security.protocol.map参数告诉这个协议底层使用了哪种安全协议
- 这里我给出统一的建议:最好全部使用主机名,即 Broker 端和 Client 端应用配置中全部填写主机名。
四.Topic 配置
auto.create.topics.enable:是否允许自动创建Topic
- 参数建议最好设置成false,避免创建名字稀奇古怪的Topic。
unclean.leader.election。enable
- 能否让落户的副本竞选Leader。
- 如果是false:坚决不让落后太多的副本竞选Leader,这样会导致分区不可用,因为没有Leader选出
- 如果是true,那么kafka允许从慢的副本中选出一个Leader,这样会导致数据丢失,因为副本数据本身就不全,当成为Leader以后就会以他的为准。
- 这个参数新版默认false;
auto.leader.rebalance.enable:是否允许定期选举Leader
- 对生产环境影响较大
- 换Leader,本身没有收益建议换成false;
五.数据存留配置
log.retention.{hours|minutes|ms}
- 控制一条消息数据保存多长时间,优先级是ms>minutes>hours
- 通常情况下设置hours级别多一些,比如log.retention.hours=168表示7天后删除,自动删除7天前的数据。
log.retention.bytes:
- 指定 Broker 为消息保存的总磁盘容量大小。
message.max.bytes:控制 Broker 能够接收的最大消息大小。
- 默认的 1000012 太少了,还不到 1MB。实际场景中突破 1MB 的消息都是屡见不鲜的,因此在线上环境中设置一个比较大的值还是比较保险的做法。毕竟它只是一个标尺而已,仅仅衡量 Broker 能够处理的最大消息大小,即使设置大一点也不会耗费什么磁盘空间的。
[转帖]Kafka 核心技术与实战学习笔记(七)kafka集群参数配置(上)的更多相关文章
- Redis学习笔记八:集群模式
作者:Grey 原文地址:Redis学习笔记八:集群模式 前面提到的Redis学习笔记七:主从复制和哨兵只能解决Redis的单点压力大和单点故障问题,接下来要讲的Redis Cluster模式,主要是 ...
- ZooKeeper学习笔记一:集群搭建
作者:Grey 原文地址:ZooKeeper学习笔记一:集群搭建 说明 单机版的zk安装和运行参考:https://zookeeper.apache.org/doc/r3.6.3/zookeeperS ...
- Elasticsearch核心技术与实战-学习笔记
学习资源: Elasticsearch中文社区日报https://elasticsearch.cn/article/ Elasticsearch 官网 https://www.elastic.co/ ...
- redis 学习笔记(6)-cluster集群搭建
上次写redis的学习笔记还是2014年,一转眼已经快2年过去了,在段时间里,redis最大的变化之一就是cluster功能的正式发布,以前要搞redis集群,得借助一致性hash来自己搞shardi ...
- Hadoop学习笔记—13.分布式集群中节点的动态添加与下架
开篇:在本笔记系列的第一篇中,我们介绍了如何搭建伪分布与分布模式的Hadoop集群.现在,我们来了解一下在一个Hadoop分布式集群中,如何动态(不关机且正在运行的情况下)地添加一个Hadoop节点与 ...
- 开源流媒体服务器SRS学习笔记(4) - Cluster集群方案
单台服务器做直播,总归有单点风险,利用SRS的Forward机制 + Edge Server设计,可以很容易搭建一个大规模的高可用集群,示意图如下 源站服务器集群:origin server clus ...
- 吴裕雄--天生自然HADOOP学习笔记:hadoop集群实现PageRank算法实验报告
实验课程名称:大数据处理技术 实验项目名称:hadoop集群实现PageRank算法 实验类型:综合性 实验日期:2018年 6 月4日-6月14日 学生姓名 吴裕雄 学号 15210120331 班 ...
- Redis学习总结(七)--Redis集群之客户端访问
我们来试试进行数据的存储 127.0.0.1:7000> set name marklogzhu OK 127.0.0.1:7000> get name "marklogzhu& ...
- Redis学习笔记~conf自主集群模式
回到目录 Redis自主提供了集群模式,当然也只是比较简单的读写分离模式,或者叫主从模式,它在各个redis服务端自己做数据同步机制,当然就是将主服务端的信息同步到各个slave服务器上,在客户端集成 ...
- K8S学习笔记之CentOS7集群使用Chrony实现时间同步
0x00 概述 容器集群对时间同步要求高,实际使用环境中必须确保集群中所有系统时间保持一致,openstack官方也推荐使用chrony代替ntp做时间同步. Chrony是一个开源的自由软件,像Ce ...
随机推荐
- OpenCV计算机视觉学习(15)——浅谈图像处理的饱和运算和取模运算
如果需要其他图像处理的文章及代码,请移步小编的GitHub地址 传送门:请点击我 如果点击有误:https://github.com/LeBron-Jian/ComputerVisionPractic ...
- curl使用小记(三)——获取远端数据到内存缓冲区
目录 1. 概述 2. 实现 3. 参考 1. 概述 我在博文<curl使用小记(二)--远程下载一张图片>中介绍了如何通过Curl获取远端的文件.不过在那个例子中,将获取远端数据与写入数 ...
- STM32CubeMX教程14 ADC - 多通道DMA转换
1.准备材料 开发板(正点原子stm32f407探索者开发板V2.4) ST-LINK/V2驱动 STM32CubeMX软件(Version 6.10.0) keil µVision5 IDE(MDK ...
- 618大促,电商企业如何拔得头筹,“敏捷+ DevOps”有话说
前言 当今企业发展不再以大为目标,而更多追求强和快,因为只有后者才能适应时代变化让企业处以不败之地,我们称这个时代为快鱼吃大鱼的时代,追求快和强也是企业的新形态. 传统行业小到菜场经济,大到航空航天, ...
- 先收藏!关于Java类、接口、枚举的知识点大汇总
摘要:Java知识点精选之类.接口.枚举30问,算是比较基础的,希望大家一起学习进步. 整理了一些JAVA语言的在类.接口.枚举等方面的知识点以及大家常遇到的问题.希望能帮助到大家. Q: 各修饰符所 ...
- Shell:Lite OS在线调试工具知多少
摘要:Shell作为Huawei Liteos在线调试工具,可以通过串口工具输入输出,支持常用的基本调试功能.同时用户可以新增定制的命令,新增命令需重新编译烧录后才能执行 本文分享自华为云社区< ...
- python指定大小文件生成
使用特定大小的随机数生成,使用随机数生成器生成特定大小的字节,并将其写入文件中 import os def generate_file(file_path, file_size_bytes): wit ...
- RabbitMQ--工作模式
单一模式 即单机不做集群 普通模式 即默认模式,对于消息队列载体,消息实体只存在某个节点中,每个节点仅有 相同的元数据,即队列的结构 当消息进入A节点的消息队列载体后,消费 者从B节点消费时,rabb ...
- 自用 | Rust 基础学习资料
Rust语言圣经:Github,GitBook Rustt,RusttT 翻译小组的官方仓库,这里有国外优秀的技术文章.学习教程.新闻资讯的高质量翻译. Rust语言周刊,每周五发布,精选过去一周的技 ...
- #2045:不容易系列之三LELE的RPG难题(dp递推)
Problem Description 人称"AC女之杀手"的超级偶像LELE最近忽然玩起了深沉,这可急坏了众多"Cole"(LELE的粉丝,即"可乐 ...