Keresés

Új hozzászólás Aktív témák

  • pk3

    csendes tag

    Sziasztok,

    A topikot olvasva rendeltem én is, egy RT-AX56U-t vált le. Pár napja megérkezett, eddig software upgrade volt 4.8.2-re, Wireguard/AdGuard server beállítás, kliensek átmozgatása. Az overview alatti monitoring elég fapados, de létezik a prometheus féle node exporternek aarch64_cortex-a53-ra elérhető változata, gondoltam telepítem.
    Hátha valakinek hasznos lesz, ezeket a csomagokat tettem fel:
    prometheus-node-exporter-lua - 2022.04.18-1
    prometheus-node-exporter-lua-nat_traffic - 2022.04.18-1
    prometheus-node-exporter-lua-netstat - 2022.04.18-1
    prometheus-node-exporter-lua-openwrt - 2022.04.18-1
    prometheus-node-exporter-lua-textfile - 2022.04.18-1
    prometheus-node-exporter-lua-wifi - 2022.04.18-1
    prometheus-node-exporter-lua-wifi_stations - 2022.04.18-1
    Alapértelmezetten csak a loopback interface-en elérhető a metrika, így szerkesszük át az interface nevét a /etc/config/prometheus-node-exporter-lua config file alatt:

    config prometheus-node-exporter-lua 'main' option listen_interface 'lan' option listen_ipv6 '0' option listen_port '9100' config textfile 'textfile_metrics' option enable '1'
    A textfile config elhagyható, én saját metrikák felolvasása miatt engedélyeztem.
    Ahhoz, hogy a módosítások érvényre kerüljenek a service-t indítsuk újra: /etc/init.d/prometheus-node-exporter-lua restart Érdemes lehet limitálni hogy a hálózaton belül milyen eszközről engedjük ezt az endpoint-ot elérni. Ez opcionális, de én a prometheus serveremet és magát a router-t engedéllyeztem csak (utóbbit a könnyebb debug-olás miatt). Pl, esetemben a firewall config alatt: /etc/config/firewallaz alábbi sorokat adtam hozzá:
    config rule option name 'Allow Prometheus exporter from 192.168.8.6' option src 'lan' option src_ip '192.168.8.6' option dest_port '9100' option proto 'tcp' option target 'ACCEPT' option family 'ipv4' config rule option name 'Allow Prometheus exporter from localhost' option src 'lan' option src_ip '127.0.0.1' option dest_port '9100' option proto 'tcp' option target 'ACCEPT' option family 'ipv4' config rule option name 'Block Prometheus exporter from other LAN IPs' option src 'lan' option dest_port '9100' option proto 'tcp' option target 'REJECT' option family 'ipv4'
    Utána egy config reload: /etc/init.d/firewall reload. Ellenőrizzük le hogy hallgatózik, és ha igen akkor a megfelelő címen az exporter: netstat -tuln | grep 9100 Ezután felvehetjük pormetheus alatt a scrape config-ban, és ráhívhatunk cURL-el a router-en hogy meggyőződjünk a megfelelő metrikákat látjuk. Van egy előregyártott dashboard amit használhatunk: https://grafana.com/grafana/dashboards/18153-asus-openwrt-router/
    Itt jórészt ugyan ez a folyamat le van írva.
    Én annyit módosítottam a dashboard-on, hogy a hiányzó rootFS használati metrikát előállítom egy cron-alól futtatott script-el és textfile-exporterrel felolvasom.
    Azt jelezném, hogy másnak ne kelljen 1/2 órát szívnia vele:
    root@GL-MT6000:~# cat /usr/lib/lua/prometheus-collectors/textfile.lua #!/usr/bin/lua local fs = require "nixio.fs" local function scrape() for metrics in fs.glob("/var/prometheus/*.prom") do output(get_contents(metrics), '\n') end end return { scrape = scrape }
    Ez az exporter csak az adott útvonal alól olvassa fel a .prom file-okat és nem fogad el paraméterként más útvonalat. Szintén fontos, a /vartmpfs (ram disk) és nem perzisztens. Következő a logok küldése lesz syslog-al alloy felé.
    Dashboard:

Új hozzászólás Aktív témák