我使用框架在一个DC / OS集群中安装了Kafka。
我想获得一些监控它的指标,我看到有这样的配置:
"TASKCFG_ALL_KAFKA_METRICS_REPORTERS": "com.airbnb.kafka.kafka08.StatsdMetricsReporter",
我在代码中查看了一下,在server.properties.mustache中看到了一些配置参数:
external.kafka.statsd.port={{STATSD_UDP_PORT}}
external.kafka.statsd.host={{STATSD_UDP_HOST}}
external.kafka.statsd.reporter.enabled=true
然后我查看了其中一个代理正在运行的节点,并且配置具有以下值:
external.kafka.statsd.port=57925
external.kafka.statsd.host=198.51.100.1
external.kafka.statsd.reporter.enabled=true
external.kafka.statsd.tag.enabled=true
在此节点中,在该端口上,有一个进程在其名称中使用mesos-agent进行侦听。
如何查看Kafka经纪人报告的指标?
答案 0 :(得分:0)
目前无法使用dcos kafka配置文件或环境变量(DCOS使用Kafka-Mesos Framework)打开JMX端口并监控群集生成的kafka指标 如下所述:Enable JMX on Kafka Brokers。 (更改dcos v1.12请求)
然而,DC / OS提供了一个REST-API,用于接收群集,主机,容器和应用程序特定指标: 例如v 1.9(我目前正在使用的那个) https://docs.mesosphere.com/1.9/metrics/metrics-api/#/
示例强>
如果您知道agent_id(运行代理的dcos节点) 例如你的agent_id是“ed14928-04d1-4f7e-b544-0a3e9d58645b-S9” 然后:
https:/// system / v1 / agent / 2ed14928-04d1-4f7e-b544-0a3e9d58645b-S9 / metrics / v0 / containers / a8b0d630-c55a-4e1c-a456-69e9a3ad1c16 / app - >查看kafka-metrics
{ “名称”: “kafka.server.BrokerTopicMetrics.BytesOutPerSec.1MinuteRate”, “值”:0, “单元”: “”, “时间戳”: “2018-01-29T15:33:10Z”,”标签 “:{” 主题 “:” XXXX “}},{” 名称 “:” kafka.log.Log.NumLogSegments “ ”值“:2, ”单元“: ”“, ”时间戳“:” 2018-01 -29T15:32:39Z “ ”标签“:{ ”分区“: ”1“, ”主题“: ”XXXXX“}},{ ”名称“: ”kafka.network.RequestMetrics.ThrottleTimeMs.p98“,” 值“:0,” 单元 “:” “ ”时间戳“:” ... ....
如果你不知道agent_id,你必须遍历所有奴隶(代理人) HTTPS:/// mesos /主/从站 例如{slaves ....“id”:“2ed14928-04d1-4f7e-b544-0a3e9d58645b-S13”...}并且适合合适的人。 或者,如果您拥有经纪人节点的IP地址,则可以使用 dcos cli (您必须先登录!)
$ dcos node
找出代理商ID。
答案 1 :(得分:0)
Dcos提供了cli来获取节点和应用程序(任务)的指标。 此cli使用valentin在上面指定的dcos指标API。
$ dcos task metrics details <task-id> [--json]
metrics details
Print a table of all metrics for the task specified by <task-id>
$ dcos task metrics summary <task-id> [--json]
metrics summary
Print a table of key metrics for the task specified by <task-id>
<task-id>
A full task ID, a partial task ID, or a regular expression.
--json
Print JSON-formatted list of tasks.
$ dcos node metrics details <mesos-id> [--json]
metrics details
Print a table of all metrics for the agent node specified by <mesos-id>.
$ dcos node metrics summary <mesos-id> [--json]
metrics summary
Print CPU, memory and disk metrics for the agent node specified by
<mesos-id>.
--mesos-id=<mesos-id>
The agent ID of a node.
--json
Print JSON-formatted list of nodes.