GeeCloud

GeeCloud

NewRelic szerver monitoring rendszer

2014. december 01. - hrgy

A héten lehetőségem nyílt kipróbálni a NewRelic monitoring rendszerét, ezzel kapcsolatban szeretném összegezni a tapasztalataimat.

NewRelic neve elsősorban a különböző webalkalmazások teljesítményprofilozásában segítő hasonló nevű plugin kapcsán lehet ismerős, a cég ad PHP-hoz, Ruby-hoz, Python-hoz és NodeJS-hez is modult/plugint mellyel lehetőség nyílik az alkalmazás teljesítményének teljes körű profilozására, akár osztály- vagy metódusszinten is.

Ilyen háttérrel egyértelmű döntés volt a cég részéről, hogy biztosítson egy olyan eszközt is, mellyel az alkalmazás backendjét adó szerverek teljesítményét is lehet monitorozni. A továbbiakban a szolgáltatás ezen részét igyekszem bemutatni.

Az egyik nagyon fontos dolog, amit még az elején le kell szögezni: ez - pl. a Nagios-szal ellentétben - részben egy hosted szolgáltatás - az adatok megtekintésére szolgáló felület közvetlenül nem telepíthető - következésképpen azok, akik nem akarják a szervereik használati adatait harmadik féllel megosztani, jobb ha óvatosak.

Természetesen a NewRelic biztosítja, hogy adatainkat kizárólag mi láthassuk, egy licenc kulcs segítségével azonosíthatjuk magunkat az API-t használó eszközökben, a felületen pedig egy e-mail / jelszó páros alapján mutatkozhatunk be.

newrelic-kiosk.png

De lássuk, hogy miképpen is működik a rendszer.

Telepítés

Mivel a monitoring felület hosted, így a legtöbb monitoring rendszerrel ellentétben csak a különféle agenteket kell telepíteni az operációs rendszerekre, maga a kezelőpult a NewRelic szerverein fog futni. Szerencsére elég sokféle operációs rendszert támogat az eszköz, Ubuntu-t, Debian-t, CentOS-t, Smart OS-t és más Linux disztribúciókat, valamint Windows-t (2003 és felette).

Minden telepítésben közös, hogy egy ponton meg kell adnunk azt a licenc kulcsot, amit a telepítési segédletben látunk, Linuxon ezt a csomag telepítése után a konfigurációs állományba (/etc/newrelic/nrsysmond.cfg) kell beleírni, Windows esetében pedig a telepítő segítőkészen megkérdezi, és beállítja (ezért is érdemes a telepítő exe-t választani a ZIP-es megoldás helyett).

Ha elindult az agent, várjunk egy másfél-két percet, és ellenőrizzük, hogy a gép megjelenik-e a kezelőpulton. Ha nem jelenik meg öt percen keresztül, szinte bizonyos, hogy valamilyen hálózati probléma van, vagy a gép tűzfala blokkolja a kimenő forgalmat.

Linux esetében van egy érdekes lehetőség még, fel lehet rakni egy plugin agentet is, ami a standard processzor / memória / merevlemez adatokon felül a különböző szerver szoftvereket is tudja monitorozni (MySQL, PostgreSQL, Redis, Apache, Nginx, stb.), méghozzá egészen részletekbe menően (pl. kezeli az Apache és az Nginx státuszoldalát, a Postgre és a MySQL különböző statisztikai változóit is), a rögzített értékeket pedig beküldi ugyanarra a vezérlőpultra, ahova a fő agent is dolgozik (az általa rögzített adatok a Plugins fülön érhetőek el).

A telepítése során a konfigfájlban (/etc/newrelic/newrelic-plugin-agent.cfg) a kötelező licenckulcs mellett a különféle modulokat is engedélyezni kell, illetve meg kell nézni, hogy a kapcsolódó függőségek fel vannak-e telepítve (az agent Pythonban íródott, így pl. PostgreSQL-hez fel kell rakni a megfelelő Python könyvtárat is a korrekt működéshez).

Napi használat

A mindennapokban az agentek stabilak, folyamatosan riportolnak a NewRelic központi gépére, a grafikonban szakadás nem fedezhető fel. Az egyetlen problémát a plugin agent automatikus indítása jelenti, ugyanis mivel az agentet Python modulként kell telepíteni, az nem rak fel init scriptet a működéshez. Én a gépen már korábban telepített Monit-ot használtam fel az eszköz életciklusának menedzsmentjére, de az Ubuntu Upstart rendszerével sem bonyolult integrálni, hiszen az eszköz rendelkezik olyan kapcsolóval, melynek hatására nem forkolódik, így az Upstart minden nehézség nélkül le tudja kezelni az indítás/leállítás ciklussát.

A NewRelic kezelőpultja áttekinthető, jól használható, a problémák azonnal szembetűnő módon vannak jelezve, és a szerverekhez kérhető kiosk mód is, ahol egy képernyőre optimalizálva láthatjuk a kiválasztott szerver fontosabb grafikonjait, illetve az aktuálisan felmerült problémákat.

Összegzés

Összességében a NewRelic monitorozó rendszere egy jó kezdeményezés, dizájnjában is újszerű a monitoring rendszerek piacán, a könnyű telepíthetőség és a korlátlan ingyenesség pedig vonzó lehet azoknak, akik nem akarnak a monitoringra sokat költeni, és/vagy amúgy is felhő alapú infrastruktúrával dolgoznak.

Külön hasznos azoknak, akik már amúgy is használják a NewRelic alkalmazásokba beépülő modulját, hiszen ez a két eszköz együtt segíthet egy nagyon pontos terhelésanalízisben, valamint a korai proaktív beavatkozásban mind szerver- mind alkalmazásoldalon. Ez különösen fontos felhős infrastruktúra esetén, hiszen nagyon nem mindegy, hogy meddig és mennyi backend szerver üzemben tartásáért kell fizetni, és mikor nincs már rá szükség.

Egyetlen hátránya, hogy a fő agent és a plugin agent által gyűjtött információk nem egy oldalon érhetőek el, nincs lehetőség a kiosk képernyőre bekérni mondjuk a processzor- és az Apache grafikonokat is. Azonban nem szabad elfelejteni, hogy ez egy relatíve új kezdeményezés, kell neki egy kis idő, míg kiforr.

Végül egy kis szubjektív pontozás:

Kezelhetőség: 8 / 10 Telepíthetőség: 9 / 10 Ár-érték: 9 / 10

A bejegyzés trackback címe:

https://geecloud.blog.hu/api/trackback/id/tr476948501

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.
süti beállítások módosítása