Nebula Dashboard 内存,硬盘,meta service 监控问题

提问参考模版:

  • nebula 版本:v2.0.1
  • 部署方式(分布式 / 单机 / Docker / DBaaS):分布式
  • 是否为线上版本:Y
  • 硬件信息
    • 磁盘( 推荐使用 SSD)
    • CPU、内存信息

我自己在搭建之后有以下几个问题:

  1. memoery_utilization 是如何计算的?我看了top 大概只有31.9%, 但是dashboard 显示很高 > 90%


    image

  2. disk 有修改mount 硬盘的参数吗?默认是系统盘,其实我更新监控数据盘
    image

  3. meta service 的heartbeat_latency_us 结果,我这边只有一个有数值,是哪里参数配的不对吗?
    image

  1. 可以在9090 prometheus的服务上查询这个指标,先排除数据是否有异常
  2. 这个磁盘数据显示规则是查询 device=~"(sd|nvme|hd)"
  3. 这个要看下你配置的nebula-stats-exporter中congfig.yaml文件,上面有关联进程服务,你检查配置和你进程所在的ip和port是否匹配

您好,我有一个硬盘是/dev/NVME02n1 挂载到了/new-data 目录下,Prometheus是可以读到数据的,但是在dashboard的设备监控里,只显示了我的/ 目录所在的磁盘,需要怎么修改才能显示出 我的这个/dev/NVME02n1盘呢?

你的问题和这位同学不一样的话建议再开一个贴,我们会跟进的,这样方便以后其他同学搜索查询。

  1. 留意到服务器的buff/cache 的占的空间比较大, 这个显示应该是正确的,如果想修改这个参数,具体怎么修改?例如修改成下面的表达式可能更符合需求

((node_memory_MemTotal_bytes{name=~“$name”} - node_memory_MemFree_bytes{name=~“$name”} - node_memory_Buffers_bytes{name=~“$name”} - node_memory_Cached_bytes{name=~“$name”}) / (node_memory_MemTotal_bytes{name=~“$name”} )) * 100

  1. 这个参数具体在哪里修改可以把监控系统盘改为其他盘
  2. 相关的meta 参数配置如下:
  - instanceName: metad0-250
    endpointIP: 10.0.7.250
    endpointPort: 19559
    componentType: metad
  - instanceName: metad1-251
    endpointIP: 10.0.7.251
    endpointPort: 19559
    componentType: metad
  - instanceName: metad2-252
    endpointIP: 10.0.7.252
    endpointPort: 19559
    componentType: metad

查看三个host 的nebula-metad.confg这个port 没有修改过

统一回答下哈:

  1. 如果数据没有问题,你想修改这个查询query来过滤数据是可以做到的。这也是我们开源的初衷之一,可以让用户根据自己的需求定制化二次开发。这里如何修改参数要根据你自己本身的需求来考虑的,你可以去看下PromQL的文档 Querying basics | Prometheus
  2. 这个也是可以修改PromQL的 query语句 目前默认是device=~"(sd|nvme|hd)"
  3. 其他metad没有数据可以先去prometheus服务9090上看看数据是否已经采集,先排查下采集的问题

好的,感谢。
针对第三个问题如下图:
确实prometheus 没有采集到数据,可能是哪里配置不太对呀?

可以继续往下排查
1 . 部署prometheus的服务环境能访问你所配置哪些ip吗?
2. 可以检查下你配置那些metad服务是否都在运行,有无异常

  1. 可以的,三个meta ip 都在同一个网段内,如果能访问,应该都能够访问
  2. meta 服务正常的
+--------------+------+----------+--------+--------------+
| Host         | Port | Status   | Role   | Git Info Sha |
+--------------+------+----------+--------+--------------+
| "10.0.7.251" | 9559 | "ONLINE" | "META" | "6ed8590"    |
+--------------+------+----------+--------+--------------+
| "10.0.7.250" | 9559 | "ONLINE" | "META" | "6ed8590"    |
+--------------+------+----------+--------+--------------+
| "10.0.7.252" | 9559 | "ONLINE" | "META" | "6ed8590"    |
+--------------+------+----------+--------+--------------+

你看下是接口返回是 没有其他两个节点的数据,还是其他节点的反回的数据值是0,这个要确认下,这性质不一样的

image

看起来是接口是有值的,prometheus 是没有值的

prometheus值应该也有的,因为这接口就是在prometheus服务中获取的,有值说明配置没问题,可能就是其他metad服务参数值就是0, 这个可以吧query语句复制一下在prometheus的9090服务网站上测试下

251正常,但是250,252 server 一直是0


看了nebula-exporter的采集数据,和相关同学确认了下,数据是没问题,metad这个指标数据只打在leader那台上

哦哦,好的,明白了,非常感谢~

此话题已在最后回复的 7 天后被自动关闭。不再允许新回复。