kafka学习(二)--windows下安装配置

Kafka版本是kafka_2.10-0.8.2.1
(本地zookeeper已正常启动,或则启动kafka的自带zookeeper,详见http://blog.csdn.net/shangboerds/article/details/39033677)

单节点kafka配置

1.修改配置文件conf\server.properties:
    20行:broker.id=0;
    28行:host.name= localhost;
    118行:zookeeper.connect= localhost:2181; 可逗号分隔配置多个

2.启动服务:
    bin\windows\kafka-server-start.bat   config\server.properties

//启动报错Unrecognized VM option '+UseCompressedOops'
查看 bin \windows\kafka-run-class.bat
找到  IF ["%KAFKA_JVM_PERFORMANCE_OPTS%"] EQU [""]   第110行
去掉-XX:+UseCompressedOops

3.创建topic
    bin\windows\kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
    或则
    bin\windows\kafka-topics.bat --zookeeper 10.100.5.9:2181 --replica 3 --partition 1 --topic test

4.查看topic
    bin\windows\kafka-topics.bat --list --zookeeper localhost:2181

5.查看topic描述
    bin\windows\kafka-topics.bat --describe --zookeeper localhost:2181 --topic test

6.生产者发送消息:
    bin\windows\kafka-console-producer.bat --broker-list localhost:9092 --topic test

7.消费者接收消息:
    bin\windows\kafka-console-consumer.bat --zookeeper localhost:2181 --topic test --from-beginning


集群配置与单节配置差不多,只是额外要注意下server.properties中broker.id要区分开。



linux下命令:

Start the server:
    bin/kafka-server-start.sh config/server.properties

    bin/kafka-server-start.sh -daemon config/server.properties

Create a topic:
    bin/kafka-topics.sh --create --zookeeper localhost:2282 --replication-factor 1 --partitions 1 --topic test
Show topic:
    bin/kafka-topics.sh --list --zookeeper localhost:2282
Send messages:
    bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
Start a consumer:
    bin/kafka-console-consumer.sh --zookeeper localhost:2282 --topic test --from-beginning



kafka日志清理
       kafka将会保留所有发布的消息,不论是否被消费过。如果需要清理,则需要进行配置。server.properties配置如下:

log.cleanup.policy=delete
    日志清理策略

log.retention.hours=240
    数据存储的最大时间超过这个时间会根据log.cleanup.policy设置的策略处理数据,也就是消费端能够多久去消费数据。
    log.retention.bytes和log.retention.minutes任意一个达到要求,都会执行删除。

log.retention.bytes=-1
    topic每个分区的最大文件大小,一个topic的大小限制=分区数*log.retention.bytes,-1表示没有大小限制。
    log.retention.bytes和log.retention.minutes任意一个达到要求,都会执行删除。

log.retention.check.interval.ms=5minutes
    文件大小检查的周期时间。

你可能感兴趣的:(Kafka)