Debian linux Nginx munin plugin beállítás

Debian linux Nginx munin plugin beállítás

Egy a címben jelzett konfiguráció esetén volt szükségünk, hogy az egyébként már használatban lévő munin segítségével monitorozhassuk az Nginx működését.

A nálunk lévő konfiguráció:

  • Debian Lenny (Debian linux 5.0.10)
  • Munin 1.2.6-10
  • Nginx 0.6.32

Ebben a konfigurációban nem tartalmazta a munin-plugins csomag az nginx monitozásához szükséges szkripteket.

Az nginx beállítása, hogy elérjük a szükséges adatokat a monitorozáshoz

Az nginx default konfigurációs fájlban engedélyeznünk kell, hogy a nginx státuszt le tudjuk kérni a működő szervertől. A Debian linux operációs rendszeren a /etc/nginx/sites-enabled/default fájlról van szó az alap beállítások esetében. Ez egy symlink a /etc/nginx/sites-available/default fájlra.

Az ebben található default nginx beálltás részébe kell a status megjelenítést – kék színnel kiemelt részt – elhelyezni:

server {
    listen   88;
    server_name  localhost;
    access_log  /var/log/nginx/localhost.access.log;
    location /nginx_status {
         stub_status on;    # activate stub_status module
         access_log off;    
         allow 127.0.0.1;   # restrict access to local only
         deny all;
    }
}

Mint a példa kódban látszik, az Nginx a tcp/88-as porton helyezkedik el, a localhost-on figyel és a hozzáférési logot állítottuk még be.

Az /nginx_status location esetén pedig beállítjuk, hogy a stub_status modul működjön.

Az nginx újraindítása után már a 127.0.0.1 IP cím irányából le tudjuk kérdezni a státuszt. A lekérdezés hatására a kimenet ilyesmi lesz:

Active connections: 25 
server accepts handled requests
 168676 168676 412402 
Reading: 2 Writing: 1 Waiting: 22

Az nginx munin plugin letöltése és beállítása a linux rendszeren

Az nginx munin plugin, a github-ről tölthető le: https://github.com/perusio/nginx-munin

Letölthetjük a teljes csomagot egy zip fájlként, vagy raw formátumban is csak a szükséges fájlokat.

A letöltött fájlokat a Debian linux esetén az /usr/share/munin/plugins/ könyvtárba tölthetjük le a többi szkript mellé. A Jogosultságot szintén az ott található fájlok alapján root:root tulajdonban és 755 fájl móddal állítjuk be. Ezeknek a szkripteknek futtathatónak kell lenniük.

Beléphetünk a /etc/munin/plugins/ könyvtárba, majd belinkelhetjük a azokat a modulokat, amiket monitorozni szeretnénk:

sudo ln -sf /usr/share/munin/plugins/nginx_* .

Itt jegyzem meg gyorsan, hogy a perl-ben megírt modul előfeltétele a perl és a LWP::UserAgent perl modul. Persze ezeket ki tudjuk olvasni a szkriptekből is, és ha a munin-node-ot már telepítettük, akkor ezek a feltételek szinte biztosan teljesülnek.

Ellenőrizzük, hogy minden szükséges csomag a rendelkezésre áll:

sudo munin-node-configure --suggest

Tegyük be a /etc/munin/plugins-conf.d/munin-node fájlba az nginx_* modulok szükséges konfigurációit:

[nginx*]
 env.url http://localhost:88/nginx_status
 env.ua nginx-status-verifier/0.1

A példa konfig alapján beállítjuk az a linket, amin keresztül lekérdezhetjük a státuszt a feldolgozáshoz.

A munin-node újraindítása után a monitorozott szerverünknél meg kell jelennie a Nginx állapotoknak. Majd idővel láthatjuk a nginx működését.

 

Comments are closed, but trackbacks and pingbacks are open.