Statistika kogumine collectd abil03. Jan '16

Sissejuhatus

Linux-põhiste serverite monitoorimiseks leiab mitmesuguseid vahendeid Nagiosest Zabbixini. Tüüpilise monitooringu lahenduse jaoks on vaja sättida üles andmebaas ning monitooringutarkvara reguaarselt uuendada. Käesolevas näites on välja toodud collectd, mis on minimalistik statistika kogumise tarkvara, mis kasutab RRD-põhist andmebaasi ning millel on palju erinevaid pistikprogramme funktsionaalsuse laiendamiseks.

Important

RRD andmebaasi majutamiseks on kõige sobilikum SSD, kirjutades RRD andmebaasi pöörlevatele ketastele võib kogu masin talumatult aeglaseks muutuda!

Paigaldus

apt-get install collectd

Esmalt lähtesta collectd konfiguratsioon failis /etc/collectd/collectd.conf järgnevalt:

FQDNLookup true

LoadPlugin logfile
LoadPlugin syslog
LoadPlugin cpu             # Protsessori kasutus
LoadPlugin df              # Kettakasutus
LoadPlugin disk            # Ketaste koormus
LoadPlugin interface       # Võrguliidesed
LoadPlugin load            # Süsteemi koormus
LoadPlugin memory          # Mälukasutus
LoadPlugin network
LoadPlugin processes
LoadPlugin swap            # Saaleala
LoadPlugin uptime
LoadPlugin users

<Plugin syslog>
        LogLevel err
</Plugin>

<Plugin df>
        FSType rootfs
        FSType sysfs
        FSType proc
        FSType devtmpfs
        FSType devpts
        FSType tmpfs
        FSType fusectl
        FSType cgroup
        IgnoreSelected true
</Plugin>

<Plugin disk>
        Disk "/[sv]d[a-z]/"    # Raporteeri ainult SATA ja VirtIO kettaid
</Plugin>

<Include "/etc/collectd/collectd.conf.d">
        Filter "*.conf"
</Include>

Vaikimisi seadetega kirjutatakse RRD andmebaas välja /var/lib/collectd kataloogi. Kasutades Btrfs failisüsteemi tuleks copy-on-write funktsionaalsus välja lülitada:

chattr +C -Rf /var/lib/collectd

Lõpuks tuleks teenus ka käivitada:

sudo service collectd restart

Keskne statistika kogumine

Statistikat saatvates masinates lisa täiendav konfiguratsioon:

cat << EOF | sudo tee /etc/collectd/collectd.conf.d/client.conf
<Plugin network>
Server "serveri.aadress.siia.ee"
</Plugin>
EOF

Statistikat vastu võtvas masinas lisa vastav konfiguratsioon:

cat << EOF | sudo tee /etc/collectd/collectd.conf.d/server.conf
<Plugin network>
Listen "0.0.0.0"
</Plugin>
EOF

Tähelepanu peaks pöörama sellele, et vaikimisi seadetega on võimatu tuvastada kes statistikat saadab. Kohtvõrgus võib see aksepteeritav olla, kuid üle Interneti saates peaks vähemasti tulemüüris blokeerima võõrad aadressid, turvama ühendust VPN abil või kasutama paroole/sertifikaate ühenduse autentimiseks.

Sensorite sisse lülitamine

Esmalt paigalda lm-sensors tarkvarapakett:

sudo apt-get install lm-sensors

Vaikimisi seadetega tuvastab lm-sensors juba ära päris palju riistvara:

sensors

Täiendavate sensorite tuvastamiseks:

sudo sensors-detect

Selleks, et collectd neid näite raporteeriks tuleb täiendada collectd konfiguratsiooni:

echo "LoadPlugin sensors" | sudo tee /etc/collectd/collectd.conf.d/sensors.conf

Seejärel taaskäivita teenus:

sudo service collect restart

Veebiliides

Kuna collectd on tarkvara puhtalt andmete kogumiseks, ei sisaldu selles ka veebiliidest. Collectd Graph Panel on PHP-s kirjutatud veebiliides collectd graafikute kuvamiseks, selle saab paigaldada järgnevalt:

sudo apt-get install apache2 libapache2-mod-php5
sudo git clone https://github.com/pommi/CGP /var/www/html/cgp
collectd monitoring statistika