kafka环境部署和常见的命令

介绍:

包含:生产者、topic、消费者。

topic的创建可以分区

生产者:可以指定分区,指定均衡策略

消费者:一个消费者可以消费多个分区,但是一个分区只能给一个消费者

kafka的broker

1.kafka环境的搭建

找寻kafka的目录,在目录下下载kafka的文件:

wget https://archive.apache.org/dist/kafka/0.8.2.2/kafka_2.9.2-0.8.2.2.tgz

解压tar kafka压缩文件名

在kafka的安装文件里面创建日志目录datas/kafkalogs

配置kafka的config下的server.properties文件。(特别说明一下,如果是要建立kafka的伪集群只需要在kafka的config下创建server_1.properties...然后配置

broker.id=1

port=9002

host.name=172.16.37.114

num.network.threads=3

num.io.threads=8

socket.send.buffer.bytes=102400

socket.receive.buffer.bytes=102400

socket.request.max.bytes=104857600

num.partitions=8

num.recovery.threads.per.data.dir=1

##################################

zookeeper.connect=172.16.37.107:2181,172.16.37.108:2181,172.16.37.223:2183

zookeeper.connection.timeout.ms=6000

zookeeper.sync.time.ms=2000

##################################

auto.create.topics.enable=false

delete.topic.enable=true

#####################################

log.dirs=/usr/local/kafka/datas/server1

log.flush.interval.ms=30000

log.retention.check.interval.ms=30000

log.retention.bytes=-1

log.retention.minutes=60

#log.retention.ms=1000

#log.retention.hours=1

log.cleaner.enable=true

log.cleanup.policy=delete

log.segment.bytes=1073741824

配置好之后启动:

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

2.补充知识https://www.cnblogs.com/5iTech/articles/6043224.html

3、停止:./bin/kafka-server-stop.sh

4.查看topic

./bin/kafka-topics.sh --zookeeper 172.16.37.112:2181 -describe

./kafka-topics.sh --list --zookeeper 172.16.37.107:2181

5.创建topic

./kafka-topics.sh --create --zookeeper 172.16.37.107:2181 --replication-factor 1 --partitions 1 --topic test

6.生产者发送消息

./kafka-console-producer.sh  --broker-list 172.16.37.223:9092 --topic test

执行完毕之后会进入这样一个编辑页:

7、消费者接收消息:

低版本为:./kafka-console-consumer.sh --zookeeper 172.16.37.107:2181 --from-beginning --topic test

高版本为:./kafka-console-consumer.sh --bootstrap-server 172.16.37.223:9092 --from-beginning --topic test

执行完之后会接受到生产者发送的消息

8、删除topic:

./bin/kafka-topics.sh --zookeeper 172.16.37.181:2181 --delete --topic test

9、为topic增加副本

./kafka-reassign-partitions.sh -zookeeper127.0.0.1:2181-reassignment-json-file json/partitions-to-move.json -execut

命令说明:http://172.16.37.181:7080/display/PUB/Topics+Config

10、为topic增加partition

./bin/kafka-topics.sh –zookeeper 127.0.0.1:2181–alter –partitions20–topic testKJ1

11、下线broker

./kafka-run-class.sh kafka.admin.ShutdownBroker --zookeeper127.0.0.1:2181--broker #brokerId# --num.retries3--retry.interval.ms60

shutdown broker

12、kafka的性能测试

kafka中有自带的性能测试代码,测试结果均来自kafka自带的测试代码 ,位于bin/kafka-producer-perf-test.sh。

 

 

集群扩容,生成扩容文件:./bin/kafka-reassign-partitions.sh --zookeeper 172.16.37.112:2181,172.16.37.112:2182,172.16.37.112:2183 --topics-to-move-json-file bin/topics-to-move.json -

·-broker-list "0,1,2,3" --generate
主要参数有以下四个,

messages 生产者发送总的消息数量

message-size 每条消息大小(单位为b)

batch-size 每次批量发送消息的数量

topics 生产者发送的topic

threads 生产者使用几个线程同时发送

例如bin/kafka-producer-perf-test.sh --messages 100000 --message-size 1000 --batch-size 10000 --topics test4 --threads 4 --broker-list hadoop234:9092,hadoop237:9092,hadoop238:9092

 

返回信息为

start.time, end.time, compression, message.size, batch.size, total.data.sent.in.MB, MB.sec, total.data.sent.in.nMsg, nMsg.sec

2015-10-15 18:56:27:542, 2015-10-15 18:56:30:880, 0, 1000, 10000, 95.37, 28.5702, 100000, 29958.0587

可以通过调节参数进行性能测试。

参考博客:

https://www.cnblogs.com/hei12138/p/7805475.html

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值