Kafka配置 Configuration

Kafka使用property格式的配置文件来维护键值对形式的配置信息。这些配置信息可以是通过文件的形式定义的,也可以是通过编程的方式定义。

1.Kafka服务器配置Broker Configs

一台Kafka服务器就是一个broker,所以这里讲的是Kafka服务器的配置。

配置参数有很多,其中的关键配置项是以下三个。

n broker.id

n log.dirs

n zookeeper.connect

Kafka服务器的配置参数项有一百多个,详情参照Broker Configs 。

Kafka topic级别的配置参数。首先是可以在配置文件中设置全局性的topic配置参数,其次是可以针对每个topic再额外设置自定义的配置。自定义的配置项优先级别会高于全局配置。

这是在创建一个topic时自定义了最大的消息字节数和消息持久化参数:

> bin/kafka-topics.sh --zookeeper localhost:2181 --create --topic my-topic --partitions 1

        --replication-factor 1 --config max.message.bytes=64000 --config flush.messages=1

可以在创建topic后继续使用命令修改topic中已经定义了的参数:

 > bin/kafka-topics.sh --zookeeper localhost:2181 --alter --topic my-topic

    --config max.message.bytes=128000

或者是删除指定的topic中的某个自定义参数:

> bin/kafka-topics.sh --zookeeper localhost:2181 --alter --topic my-topic

    --deleteConfig max.message.bytes

在Kafka官方文档中针对topic级别的配置项定义了14个可配置的参数,参见Topic-level configuration 。

2.消息生产端的配置 Producer Configs

Kafka面向多种开发语言提供了客户端开发支持,在这里我们以Java为例了解在消息发送端可以配置使用的参数是哪些——Java producer 。

如果需要了解和使用旧版本中的Scala producer 实现,可以参考 here.

3.消费端的配置 Consumer Configs

(1)Old Consumer Configs

在0.8版本中的Kafka consumer端有两个关键配置项:group.id和zookeeper.connect,以及其它一些有特定作用的配置参数。Group.id唯一确定了消费者从属的consumer group,而zookeeper.connect指定了zookeeper集群的连接信息(hostname1:port1,hostname2:port2,hostname3:port3)。

Old Consumer Configs配置项列表

更详细的使用说明请参见scala class kafka.consumer.ConsumerConfig.

(2)New Consumer Configs

从0.9.0.0版本后转为推广使用新的Kafka Consumer工具,在消费端的参数配置项目上新旧客户端大多参数是相似的,有少部分的不同,详见New Consumer Configs 。

(3)Kafka Connect Configs

Kafka Connect就从0.9版本新增的一个特性,可以更方便的创建和管理数据流管道。它为Kafka和其它系统创建规模可扩展的、可信赖的流数据提供了一个简单的模型,通过 connectors可以将大数据从其它系统导入到Kafka中,也可以从Kafka中导出到其它系统。Kafka Connect可以将完整的数据库注入到Kafka的Topic中,或者将服务器的系统监控指标注入到Kafka,然后像正常的Kafka流处理机制一样进行数据流处理。而导出工作则是将数据从Kafka Topic中导出到其它数据存储系统、查询系统或者离线分析系统等,比如数据库、 Elastic Search、 Apache Ignite等。

Kafka Connect的开发说明参见 Kafka Connect 。Kafka Connect 的配置参数参见Kafka Connect Configs 。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值