Kafka集群管理工具Kafka-manager安装使用
Kafka集群管理工具Kafka-manager安装使用
一、kafka-manager简介
kafka-manager是目前最受欢迎的kafka集群管理工具,最早由雅虎开源,用户可以在Web界面执行一些简单的集群管理操作。具体支持以下内容:
- 管理多个集群
- 轻松检查群集状态(主题,消费者,偏移,代理,副本分发,分区分发)
- 运行首选副本选举
- 使用选项生成分区分配以选择要使用的代理
- 运行分区重新分配(基于生成的分配)
- 使用可选主题配置创建主题(0.8.1.1具有与0.8.2+不同的配置)
- 删除主题(仅支持0.8.2+并记住在代理配置中设置delete.topic.enable = true)
- 主题列表现在指示标记为删除的主题(仅支持0.8.2+)
- 批量生成多个主题的分区分配,并可选择要使用的代理
- 批量运行重新分配多个主题的分区
- 将分区添加到现有主题
- 更新现有主题的配置
kafka项目地址;https://github.com/yahoo/kafka-manager
二、kafka-manager安装
2.1 安装kafa-manager
下载最新版是要求是jdk11
下载地址:https://github.com/yahoo/kafka-manager/releases
# cd /opt
# git clone https://github.com/yahoo/kafka-manager
# ./sbt clean distcd #编译时间久需要耐心等待
得到cmak-3.0.0.1.zip包
cd /opt/kafka-manager/target/universal
unzip cmak-3.0.0.1.zip -d /usr/local/kafka-manager
#修改配置
vim /usr/local/kafka-manager/conf/application.conf
kafka-manager.zkhosts="172.21.140.31:2181,172.21.140.32:2181,172.21.140.33:2181"
启动
kafka-manager 默认的端口是9000,可通过 -Dhttp.port,指定端口; -Dconfig.file=conf/application.conf指定配置文件:
nohup bin/cmak -Dconfig.file=conf/application.conf -Dhttp.port=8080 &
2.2 浏览器访问
访问:IP:8080
三、测试
对Kafka进行测试。分别创建topic,producer,consumer,最好是在不同的节点上创建。在producer的控制台上输入信息,观察consumer控制台是否能够接收到
3.1 创建topic
[root@node1 bin]# ./kafka-topics.sh --create --zookeeper 172.21.140.31:2181,172.21.140.32:2181,172.21.140.33:2181 --replication-factor 3 --partitions 3 --topic oneplus-kafka
Created topic oneplus-kafka.
--replication-factor 指定partition的replicas数,建议设置为2;
--partitions 指定分区数,这个参数需要根据broker数和数据量决定,正常情况下,每个broker上两个partition最好;
--topic xuel 主题为oneplus-kafka
3.2 查看topic
Topic: xuel Partition: 2 Leader: 2 Replicas: 2,3,1 Isr: 2,3,1
[root@node1 bin]# ./kafka-topics.sh --describe --zookeeper 172.21.140.31:2181,172.21.140.32:2181,172.21.140.33:2181 --topic oneplus-kafka
Topic: oneplus-kafka PartitionCount: 3 ReplicationFactor: 3 Configs:
Topic: oneplus-kafka Partition: 0 Leader: 2 Replicas: 2,3,1 Isr: 2,3,1
Topic: oneplus-kafka Partition: 1 Leader: 3 Replicas: 3,1,2 Isr: 3,1,2
Topic: oneplus-kafka Partition: 2 Leader: 1 Replicas: 1,2,3 Isr: 1,2,3
[root@node1 bin]#
通过web界面创建kafka-{1-4}
3.3 删除topic
# ./kafka-topics.sh --delete --zookeeper 172.21.140.31:2181,172.21.140.32:2181,172.21.140.33:2181 --topic kafka-3
3.4 创建发布者
创建broker
./kafka-console-producer.sh --broker-list 172.21.130.31:9092,172.21.140.32:9092,172.21.140.33:9092 --topic oneplus-kafka
3.5 创建消费者
./kafka-console-consumer.sh --topic oneplus-kafka --bootstrap-server 172.21.140.32:9092 --from-beginning