作者介绍:简历上没有一个精通的运维工程师。请点击上方的蓝色《运维小路》关注我,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。
我们上一章介绍了中间件:Zookeeper,本章将介绍另外一个中间件:Kafka。目前这2个中间件都是基于JAVA语言的。
我们上一个小节介绍Kafka的监控信息,但是这个监控适合接入到云原生的监控系统,如果没有云原生监控,光使用JVM监控则会更麻烦,而我们今天介绍另外一个监控:Kafka Manager,Kafka Manager也是在云原生流行之前的普遍使用的Kafka监控。
Kafka Manager 是由 Yahoo 开源 的 Kafka 集群管理工具,最初由雅虎团队开发并维护。CMAK(全称 Cluster Manager for Apache Kafka)是 Kafka Manager 的社区维护分支。由于雅虎逐渐停止了对原项目的维护,社区接手后将其重命名为 CMAK,并持续更新和改进。
原本打算使用二进制部署,但是由于这个程序是使用scala编写(早期的Kafka也是scala编写,现在核心部分已经使用JAVA重新,但是还有部分scala编写。),所以部署起来比较麻烦,所以我这里实际Docker来部署。
1.前提条件
一个运行的Kafka的集群,为了更好的查看监控信息,所以这里我们采用的是多节点部署。
2.运行CMAK
这里的ZooKeeper地址是用于存储CMAK元数据,并非读取``ZooKeeper里面的Kafka信息。
#具体的信息根据现在情况修改docker run -d \ -p 9000:9000 \ -e ZK_HOSTS="zookeeper:2181" \ -e KAFKA_MANAGER_AUTH_ENABLED="false" \ cmakio/cmak:3.0.0.5
下面的ZooKeeper就是注册启动成功的信息:
#当然这里已经添加了集群的配置 [zk: localhost:2181(CONNECTED) 63] ls /kafka/kafka-manager [clusters, configs, deleteClusters][zk: localhost:2181(CONNECTED) 64] get /kafka/kafka-manager 172.17.0.2
3.配置Kafaka Manager
默认里面是空的,什么都没有,需要我们手工添加Kafka集群。
3.1添加集群
需要根据给你添加的集群取一个名字,然后还需要输入Kafka的版本(虽然不知道有什么用),然后就是核心ZooKeeper地址,它就通过读取ZK里面的信息获取Kafka的元数据。
3.2查看Kafka集群
添加成功以后,它就会获取Kafka信息,比如集群节点(broker),主题消息(Topic),通过对应的链接点击进去就可以看到。
当然在页面最上面的功能都可以去看看。
下面就是核心Topic的信息,可以看到前面讲解过的信息,都是可以看到的。
运维小路
一个不会开发的运维!一个要学开发的运维!一个学不会开发的运维!欢迎大家骚扰的运维!
关注微信公众号《运维小路》获取更多内容。