Skip to content

sunnywalden/nodes_exporters_discovery

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nodes_exporters_discovery

License

客户端自动发现

概述

发现原因

通过nmap逐一扫描config配置里的网段所有主机,判断9100端口启停状态及操作系统类型是否为Linux,如果满足条件,则判定该主机已部署监控客户端。


[nodes]

node_hosts = [ '192.168.1.0/24', '10.10.1.0/24', '10.1.3.0/24' ]

node_port = 9100


原始数据

data路径下记录有所有主机的原始数据,文件信息


[file_ds]

file_sd_filename = data/nodes.json


原始文件

[ {
"labels": { "job": "nodes" }, "targets": [ "192.168.1.11:9100", "192.168.1.12:9100", ...

主机增删逻辑

主机的增加

适用情境:新部署监控客户端主机 触发:当下一次扫描任务触发后,即可扫描到该客户端。需要立即添加到监控采集目标时,请手动执行主程序。

增加逻辑

采用nmap扫描网络发现客户端,存在因网络原因导致的某些客户端主机丢失问题。基于改原因,扫描完成后所有本次发现的客户端写入缓存,读取上面原始文件中所有的主机信息,再求并集将得到的所有主机信息存入原始文件。

主机的删除

适用情境:主机故障、被清除或卸载客户端 触发:手动从原始文件删除该主机信息

删除逻辑

因上述并集逻辑,主机关机或卸载客户端后,仍会出现在文件中。只有从原始文件中将对应主机的IP删除,才能完全将该客户端信息去除。