云原生监控(4)Node_Exporter配置参数详解
简介
当我们的监控点足够多的时候,部分我们不需要的数据聚会越积越多,因此对数据进行适当过滤来减轻服务器压力和更好的展示很有必要。对数据进行处理的方法有很多,
- 一是在Grafana展示的时候,通过标签进行过滤,这种治标不治本,中心节点的压力还是不变;
- 二是在联邦集群模式下,级联节点通过数据处理后生产新标签再传递给中心节点,比如我们知道内存使用率是通过(1-可用内存/总内存)计算得到,在不做任何处理的情况下,级联节点将这两个数据传递给中心节点,由中心节点进行计算,我们所要做的是在级联节点就将计算结果直接传递给中心节点,以减少中心节点的压力;
- 三是从最初Node_exporter采集端开始就不采集我们不需要的数据。
总结: 在监控点数量众多的情况下,三种方法都要搭配使用,第三种方法就需要我们对Exporter的配置参数有深入一点的了解。
1 所有参数
$ ./node_exporter --help
用法:node_exporter []
标志:
-h, --help 显示上下文相关的帮助(也可以尝试 --help-long 和 --help-man)。
--collector.bcache.priorityStats
公开昂贵的优先级统计数据。
--collector.cpu.info 启用指标 cpu_info
--collector.cpu.info.flags-include=COLLECTOR.CPU.INFO.FLAGS-INCLUDE
使用必须是正则表达式的值过滤 cpuInfo 中的 `flags` 字段
--collector.cpu.info.bugs-include=COLLECTOR.CPU.INFO.BUGS-INCLUDE
使用必须是正则表达式的值过滤 cpuInfo 中的 `bugs` 字段
--collector.diskstats.ignored-devices="^(ram|loop|fd|(h|s|v|xv)d[a-z]|nvme\\d+n\\d+p)\\d+$"
要忽略 diskstats 的设备的正则表达式。
--collector.filesystem.mount-points-exclude="^/(dev|proc|sys|var/lib/docker/.+)($|/)"
文件系统收集器要排除的挂载点的正则表达式。
--collector.filesystem.fs-types-exclude="^(autofs|binfmt_misc|bpf|cgroup2?|configfs|debugfs|devpts|devtmpfs|fusectl|hugetlbfs|iso9660|mqueue|nsfs|overlay|proc|procfs|pstore| rpc_pipefs|securityfs|selinuxfs|squashfs|sysfs|tracefs)$"
要为文件系统收集器排除的文件系统类型的正则表达式。
--collector.ipvs.backend-labels="local_address,local_port,remote_address,remote_port,proto,local_mark"
IPVS 后端统计标签的逗号分隔列表。
--collector.netclass.ignored-devices="^$"
netclass 收集器要忽略的网络设备的正则表达式。
--collector.netclass.ignore-invalid-speed
忽略速度无效的设备。这将是 2.x 中的默认行为。
--collector.netdev.device-include=COLLECTOR.NETDEV.DEVICE-INCLUDE
要包含的网络设备的正则表达式(与设备排除互斥)。
--collector.netdev.device-exclude=COLLECTOR.NETDEV.DEVICE-EXCLUDE
要排除的网络设备的正则表达式(与设备包含互斥)。
--collector.netstat.fields="^(.*_(InErrors|InErrs)|Ip_Forwarding|Ip(6|Ext)_(InOctets|OutOctets)|Icmp6?_(InMsgs|OutMsgs)|TcpExt_(Listen.*| Syncookies.*|TCPSynRetrans)|Tcp_(ActiveOpens|InSegs|OutSegs|OutRsts|PassiveOpens|RetransSegs|CurrEstab)|Udp6?_(InDatagrams|OutDatagrams|NoPorts|RcvbufErrors|SndbufErrors))$"
要为 netstat 收集器返回的字段的正则表达式。
--collector.ntp.server="127.0.0.1"
用于 ntp 收集器的 NTP 服务器
--collector.ntp.protocol-version=4
NTP协议版本
--collector.ntp.server-is-local
证明collector.ntp.server地址不是公共ntp服务器
--collector.ntp.ip-ttl=1 发送NTP查询时使用的IP TTL
--collector.ntp.max-distance=3.46608s
到根的最大累积距离
--collector.ntp.local-offset-tolerance=1ms
本地时钟和本地 ntpd 时间之间允许的偏移量
--path.procfs="/proc" procfs 挂载点。
--path.sysfs="/sys" sysfs 挂载点。
--path.rootfs="/" rootfs 挂载点。
--collector.perf.cpus="" 应从中收集性能指标的 CPU 列表
--collector.perf.tracepoint=COLLECTOR.PERF.TRACEPOINT ...
应该收集的性能跟踪点
--collector.powersupply.ignored-supplies="^$"
powersupplyclass 收集器要忽略的电源正则表达式。
--collector.qdisc.fixtures=""
用于 qdisc 收集器端到端测试的测试装置
--collector.runit.servicedir="/etc/service"
runit 服务目录的路径。
--collector.supervisord.url="http://localhost:9001/RPC2"
XML RPC 端点。
--collector.systemd.unit-include=".+"
要包含的 systemd 单元的正则表达式。单位必须同时匹配包括和不匹配排除才能被包括在内。
--collector.systemd.unit-exclude=".+\\.(automount|device|mount|scope|slice)"
要排除的 systemd 单位的正则表达式。单位必须同时匹配包括和不匹配排除才能被包括在内。
--collector.systemd.enable-task-metrics
启用服务单元任务指标 unit_tasks_current 和 unit_tasks_max
--collector.systemd.enable-restarts-metrics
启用服务单元指标 service_restart_total
--collector.systemd.enable-start-time-metrics
启用服务单位指标 unit_start_time_seconds
--collector.tapestats.ignored-devices="^$"
对于磁带统计要忽略的设备的正则表达式。
--collector.textfile.directory=""
从中读取带有指标的文本文件的目录。
--collector.vmstat.fields="^(oom_kill|pgpg|pswp|pg.*fault).*"
为 vmstat 收集器返回的字段的正则表达式。
--collector.wifi.fixtures=""
用于 wifi 收集器指标的测试装置
--collector.arp 启用 arp 收集器(默认值:启用)。
--collector.bcache 启用 bcache 收集器(默认值:启用)。
--collector.bonding 启用绑定收集器(默认值:启用)。
--collector.btrfs 启用 btrfs 收集器(默认值:启用)。
--collector.buddyinfo 启用 buddyinfo 收集器(默认值:禁用)。
--collector.conntrack 启用 conntrack 收集器(默认值:启用)。
--collector.cpu 启用 CPU 收集器(默认值:启用)。
--collector.cpufreq 启用 cpufreq 收集器(默认值:启用)。
--collector.diskstats 启用 diskstats 收集器(默认值:启用)。
--collector.drbd 启用 drbd 收集器(默认值:禁用)。
--collector.edac 启用 edac 收集器(默认值:启用)。
--collector.entropy 启用熵收集器(默认值:启用)。
--collector.ethtool 启用 ethtool 收集器(默认值:禁用)。
--collector.fiberchannel 启用光纤通道收集器(默认值:启用)。
--collector.filefd 启用 filefd 收集器(默认值:启用)。
--collector.filesystem 启用文件系统收集器(默认值:启用)。
--collector.hwmon 启用 hwmon 收集器(默认值:启用)。
--collector.infiniband 启用 infiniband 收集器(默认值:启用)。
--collector.interrupts 启用中断收集器(默认值:禁用)。
--collector.ipvs 启用 ipvs 收集器(默认值:启用)。
--collector.ksmd 启用 ksmd 收集器(默认值:禁用)。
--collector.loadavg 启用 loadavg 收集器(默认值:启用)。
--collector.logind 启用登录收集器(默认值:禁用)。
--collector.mdadm 启用 mdadm 收集器(默认值:启用)。
--collector.meminfo 启用 meminfo 收集器(默认值:启用)。
--collector.meminfo_numa 启用 meminfo_numa 收集器(默认值:禁用)。
--collector.mountstats 启用 mountstats 收集器(默认值:禁用)。
--collector.netclass 启用网络类收集器(默认:启用)。
--collector.netdev 启用 netdev 收集器(默认值:启用)。
--collector.netstat 启用 netstat 收集器(默认值:启用)。
--collector.network_route 启用 network_route 收集器(默认值:禁用)。
--collector.nfs 启用 nfs 收集器(默认值:启用)。
--collector.nfsd 启用 nfsd 收集器(默认值:启用)。
--collector.ntp 启用 ntp 收集器(默认值:禁用)。
--collector.nvme 启用 nvme 收集器(默认值:启用)。
--collector.perf 启用性能收集器(默认值:禁用)。
--collector.powersupplyclass
启用 powersupplyclass 收集器(默认值:启用)。
--collector.pressure 启用压力收集器(默认值:启用)。
--collector.processes 启用进程收集器(默认值:禁用)。
--collector.qdisc 启用 qdisc 收集器(默认值:禁用)。
--collector.rapl 启用 rapl 收集器(默认值:启用)。
--collector.runit 启用 runit 收集器(默认值:禁用)。
--collector.schedstat 启用 schedstat 收集器(默认值:启用)。
--collector.sockstat 启用 sockstat 收集器(默认值:启用)。
--collector.softnet 启用软网络收集器(默认值:启用)。
--collector.stat 启用统计收集器(默认值:启用)。
--collector.supervisord 启用 supervisord 收集器(默认值:禁用)。
--collector.systemd 启用 systemd 收集器(默认值:禁用)。
--collector.tapestats 启用tapestats 收集器(默认值:启用)。
--collector.tcpstat 启用 tcpstat 收集器(默认值:禁用)。
--collector.textfile 启用文本文件收集器(默认值:启用)。
--collector.thermal_zone 启用热区收集器(默认值:启用)。
--collector.time 启用时间收集器(默认:启用)。
--collector.timex 启用 timex 收集器(默认值:启用)。
--collector.udp_queues 启用 udp_queues 收集器(默认值:启用)。
--collector.uname 启用 uname 收集器(默认值:启用)。
--collector.vmstat 启用 vmstat 收集器(默认值:启用)。
--collector.wifi 启用 wifi 收集器(默认值:禁用)。
--collector.xfs 启用 xfs 收集器(默认值:启用)。
--collector.zfs 启用 zfs 收集器(默认值:启用)。
--collector.zoneinfo 启用 zoneinfo 收集器(默认值:禁用)。
--web.listen-address=":9100"
公开指标和 Web 界面的地址。
--web.telemetry-path="/metrics"
公开指标的路径。
--web.disable-exporter-metrics
排除有关导出器本身的指标(promhttp_*、process_*、go_*)。
--web.max-requests=40 最大并行抓取请求数。使用 0 禁用。
--collector.disable-defaults
默认情况下将所有收集器设置为禁用。
--web.config="" [实验] 可以启用 TLS 或身份验证的配置 yaml 文件的路径。
--log.level=info 仅记录具有给定严重性或更高级别的消息。其中之一:[调试、信息、警告、错误]
--log.format=logfmt 日志消息的输出格式。其中之一:[logfmt, json]
--version 显示应用程序版本。
2 参数配置
2.1 网络类
- --collector.netclass.ignored-devices
# 通过正则表达式忽略某些网络设备的信息收集,比如我们不需要收集lo回环网卡,可通过正则表达式过滤
--collector.netdev.device-exclude="^(tap.+|veth.+|br.+|docker.+|virbr.+|lo.+|cni.+|cali.+|flannel.+)"
2.2 服务类
- --collector.systemd.unit-whitelist
# 监控指定服务
--collector.systemd.unit-whitelist=(sshd|docker|mysql).service
2.3 磁盘类
- --collector.filesystem.mount-points-exclud
# 通过正则表达式忽略某些磁盘设备的信息收集
--collector.filesystem.mount-points-exclude="^/(dev|proc|sys|var/lib/docker/.+|var/lib/kubelet/.+|data/docker/containers/.+)($|/)"
版权声明:
本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自
运维小记!
喜欢就支持一下吧
打赏
微信
支付宝