查看有那些topic
命令全在这里 https://www.orchome.com/454
删除toplic命令
登录zookeeper客户端:命令:./bin/zookeeper-client
找到topic所在的目录:ls /brokers/topics
找到要删除的topic,执行命令:rmr /brokers/topics/【topic name】
开机命令
nohup bin/kafka-server-start.sh config/server.properties > kafka.log 2>&1 &
关机命令
nohup bin/kafka-server-stop.sh config/server.properties > kafka.log 2>&1 &
kafka生产者压测
10万条消息 压测
bin/kafka-producer-perf-test.sh --topic test --record-size 100 --num-records 100000 --throughput -1 --producer-props bootstrap.servers=hadoop110:9092,hadoop111:9092,hadoop112:9092
Kafka 会打印下面的信息
100000 records sent, 95877.277085 records/sec (9.14 MB/sec),
187.68 ms avg latency, 424.00 ms max latency, 155 ms 50th, 411 ms
95th, 423 ms 99th, 424 ms 99.9th.
参数解析:本例中一共写入 10w 条消息,吞吐量为 9.14 MB/sec,
每次写入的平均延迟为 187.68 毫秒,最大的延迟为 424.00 毫秒。
kafka消费者压测
bin/kafka-consumer-perf-test.sh --zookeeper hadoop111:2181 --topic test --fetch-size 10000 --messages 10000000 --threads 1
参数说明:
--zookeeper 指定 zookeeper 的链接信息
--topic 指定 topic 的名称
--fetch-size 指定每次 fetch 的数据的大小
--messages 总共要消费的消息个数
测试结果说明:
start.time, end.time, data.consumed.in.MB, MB.sec, data.consumed.in.nMsg, nMsg.sec
2019-02-19 20:29:07:566, 2019-02-19 20:29:12:170, 9.5368, 2.0714, 100010, 21722.4153
开始测试 时间,测试结束数据,据 共消费数据 9.5368MB,吞吐量 2.0714MB/s ,
共消 费100010 条,平均每秒消费 21722.4153 条
- 进入到 bin目录
1.查看topic
bin/kafka-topics.sh \
--list \
--zookeeper hadoop111:2181 hadoop111:2181 hadoop111:2181
2.创建topic
bin/kafka-topics.sh \
--create \
--zookeeper hadoop111:2181 hadoop111:2181 hadoop111:2181\
--replication-factor 1 \
--partitions 1 \
--topic apperrorspark
- 模拟测试
- 一台节点当生产者,另一台节点当消费者
1.生产者节点 代码
bin/kafka-console-producer.sh \
--broker-list hadoop111:9092 hadoop112:9092 hadoop113:9092 \
--topic apperrorspark
删除topic
bin/kafka-topics.sh --delete --zookeeper hadoop111:2181 hadoop112:2181 hadoop113:2181 --topic test01
2.消费者节点 代码
bin/kafka-console-consumer.sh \
--zookeeper hadoop111:2181,hadoop112:2181,hadoop113:2181 \
--topic apperrorspark
2.消费者节点从头开始
bin/kafka-console-consumer.sh \
--zookeeper hadoop111:2181,hadoop112:2181,hadoop113:2181 \
--topic pachong \
--from-beginning
kafka集群数量
Kafka 机器数量(经验公式)=2*(峰值生产速度*副本数/100)+1
先拿到峰值生产速度,再根据设定的副本数,就能预估出需要部署 Kafka 的数量。
比如我们的峰值生产速度是 50M/s。副本数为 2。
Kafka 机器数量=2*(50*2/100)+ 1=3 台
3.重新partition
bin/kafka-topics.sh \
--zookeeper hadoop111:2181 hadoop111:2181 hadoop111:2181 \
--alter \
--topic apperrorspark\
--partitions 3
8.test
bin/kafka-producer-perf-test.sh \
--producer.config config/producer-test.properties \
--topic gnus-test \
--throughput 2000000 \
--num-records 6000000 \
--payload-file message.txt
bin/kafka-producer-perf-test.sh
--producer.config config/producer-test2.properties \
--topic gnus-test \
--throughput 2000000 \
--num-records 6000000 \
--payload-file message.txt
- 如何在zookeeper中查看生产者元数据
进入zookeeper/bin/zkCli.sh start
ls /
ls brokers/
ls brokers/topic
ls brokers/topic/partition
ls brokers/topic/partition/查看到 topic的分区
然后进入 ls 分区内
然后 get 分区内的stage 就可以看到数据了
- 如何在zookeeper中查看消费者元数据
ls /consumer
ls /consumer/......
一直往里进
里面肯定有一个 消费者组。是随机产生的组