Valós idejű megfigyelés beállítása „Ganglia” segítségével Linux szerverek gridjeihez és klasztereihez
Amióta a rendszergazdák felelősek a szerverek és gépcsoportok kezeléséért, az olyan eszközök, mint az alkalmazások figyelése, a legjobb barátaik. Valószínűleg ismeri az olyan eszközöket, mint a Nagios, a Zabbix, az Icinga és a Centreon. Bár ezek a felügyelet nagy súlya, beállításuk és funkcióik teljes kihasználása némi nehézséget jelenthet az új felhasználók számára.
Ebben a cikkben bemutatjuk a Gangliát, egy könnyen skálázható megfigyelőrendszert, amely lehetővé teszi a Linux-kiszolgálók és -fürtök sokféle rendszermetrikájának (plusz grafikonok) valós időben történő megtekintését.
A Ganglia lehetővé teszi rácsok (helyek) és fürtök (szervercsoportok) beállítását a jobb szervezés érdekében.
Így létrehozhat egy rácsot, amely egy távoli környezetben lévő összes gépből áll, majd ezeket a gépeket kisebb készletekbe csoportosíthatja más kritériumok alapján.
Ezenkívül a Ganglia webes felülete mobileszközökre van optimalizálva, és lehetővé teszi az adatok .csv
és .json
formátumú exportálását.
Tesztkörnyezetünk egy központi CentOS 7 szerverből fog állni (IP-cím: 192.168.0.29), amelyre telepítjük a Gangliát, valamint egy Ubuntu 14.04 gép (192.168.0.32), a doboz, amelyet a Ganglia webes felületén keresztül szeretnénk figyelni.
Ebben az útmutatóban a CentOS 7 rendszert főcsomópontként, az Ubuntu dobozt pedig felügyelt gépként fogjuk használni.
A Ganglia telepítése és konfigurálása
A megfigyelő segédprogramok főcsomópontba történő telepítéséhez kövesse az alábbi lépéseket:
1. Engedélyezze az EPEL-tárat, majd telepítse onnan a Gangliát és a kapcsolódó segédprogramokat:
yum update && yum install epel-release
yum install ganglia rrdtool ganglia-gmetad ganglia-gmond ganglia-web
A fenti lépésben telepített csomagok a ganglionokkal, az alkalmazással együtt a következő funkciókat látják el:
- Az
rrdtool
, a Round-Robin-adatbázis egy olyan eszköz, amely az adatok időbeli változásainak tárolására és megjelenítésére szolgál grafikonok segítségével. - A
ganglia-gmetad
az a démon, amely megfigyelési adatokat gyűjt a megfigyelni kívánt gazdagépektől. Azokon a gazdagépeken és a főcsomópontban szintén telepíteni kell a ganglia-gmond-ot (maga a megfigyelő démon): - A
ganglia-web
biztosítja a webes felületet, ahol megtekinthetjük a megfigyelt rendszerek történeti grafikonjait és adatait.
2. Állítsa be a hitelesítést a Ganglia webes felülethez (/usr/share/ganglia). Az Apache által biztosított alapszintű hitelesítést fogjuk használni.
Ha fejlettebb biztonsági mechanizmusokat szeretne felfedezni, tekintse meg az Apache dokumentumok Engedélyezés és hitelesítés szakaszát.
A cél eléréséhez hozzon létre egy felhasználónevet, és rendeljen hozzá egy jelszót az Apache által védett erőforrás eléréséhez. Ebben a példában létrehozunk egy adminganglia
nevű felhasználónevet, és hozzárendelünk egy választott jelszót, amelyet a /etc/httpd/auth.basic mappában tárolunk (bátran válasszon másik könyvtárat és/vagy fájlnevet – amíg az Apache rendelkezik olvasási jogosultsággal ezeken az erőforrásokon, minden rendben lesz):
htpasswd -c /etc/httpd/auth.basic adminganglia
A folytatás előtt adja meg kétszer az adminganglia jelszavát.
3. Módosítsa az /etc/httpd/conf.d/ganglia.conf fájlt az alábbiak szerint:
Alias /ganglia /usr/share/ganglia
<Location /ganglia>
AuthType basic
AuthName "Ganglia web UI"
AuthBasicProvider file
AuthUserFile "/etc/httpd/auth.basic"
Require user adminganglia
</Location>
4. Szerkessze a /etc/ganglia/gmetad.conf fájlt:
Először használja a gridname direktívát, majd írja be a beállítandó rács leíró nevét:
gridname "Home office"
Ezután használja a data_source paramétert, majd írja be a fürt (szervercsoport) leíró nevét, egy lekérdezési intervallumot másodpercben, valamint a fő és a megfigyelt csomópontok IP-címét:
data_source "Labs" 60 192.168.0.29:8649 # Master node
data_source "Labs" 60 192.168.0.32 # Monitored node
5. Szerkessze a /etc/ganglia/gmond.conf fájlt.
a) Győződjön meg arról, hogy a fürtblokk a következőképpen néz ki:
cluster {
name = "Labs" # The name in the data_source directive in gmetad.conf
owner = "unspecified"
latlong = "unspecified"
url = "unspecified"
}
b) Az udp_send_chanel blokkban írja le az mcast_join direktívát:
udp_send_channel {
#mcast_join = 239.2.11.71
host = localhost
port = 8649
ttl = 1
}
c) Végül írja le az mcast_join és a bind direktívákat az udp_recv_channel blokkban:
udp_recv_channel {
#mcast_join = 239.2.11.71 ## comment out
port = 8649
#bind = 239.2.11.71 ## comment out
}
Mentse el a változtatásokat és lépjen ki.
6. Nyissa meg a 8649/udp portot, és engedélyezze a PHP-szkriptek számára (Apache-on keresztül), hogy csatlakozzanak a hálózathoz a szükséges SELinux logikai értékkel:
firewall-cmd --add-port=8649/udp
firewall-cmd --add-port=8649/udp --permanent
setsebool -P httpd_can_network_connect 1
7. Indítsa újra az Apache-t, a gmetad-ot és a gmond-ot. Ezenkívül győződjön meg arról, hogy engedélyezve vannak a rendszerindításkor:
systemctl restart httpd gmetad gmond
systemctl enable httpd gmetad httpd
Ezen a ponton meg kell tudnia nyitni a Ganglia webes felületét a http://192.168.0.29/ganglia
címen, és be kell jelentkeznie a #2. lépésben megadott hitelesítő adatokkal.
8. Az Ubuntu gazdagépen csak a ganglia-monitor programot telepítjük, amely a megfelelője. ganglia-gmond a CentOS rendszerben:
sudo aptitude update && aptitude install ganglia-monitor
9. Szerkessze az /etc/ganglia/gmond.conf fájlt a felügyelt mezőben. Ennek meg kell egyeznie a főcsomópont fájllal, kivéve, hogy a megjegyzésekkel ellátott sorok a fürtben, udp_send_channel és udp_recv_channel. engedélyezni kell:
cluster {
name = "Labs" # The name in the data_source directive in gmetad.conf
owner = "unspecified"
latlong = "unspecified"
url = "unspecified"
}
udp_send_channel {
mcast_join = 239.2.11.71
host = localhost
port = 8649
ttl = 1
}
udp_recv_channel {
mcast_join = 239.2.11.71 ## comment out
port = 8649
bind = 239.2.11.71 ## comment out
}
Ezután indítsa újra a szolgáltatást:
sudo service ganglia-monitor restart
10. Frissítse a webes felületet, és megtekintheti mindkét gazdagép statisztikáit és grafikonjait az Otthoni iroda grid/Labs fürtjében ( az Otthoni irodai rács melletti legördülő menü segítségével válasszon klasztert, esetünkben a Labs-t):
A (fent kiemelt) menülapok segítségével sok érdekes információt érhet el az egyes szerverekről külön-külön és csoportosan. A Gazdagépek összehasonlítása lapon akár egymás mellett is összehasonlíthatja a fürt összes kiszolgálójának statisztikáit.
Egyszerűen válassza ki a kiszolgálók egy csoportját egy reguláris kifejezés használatával, és gyorsan összehasonlíthatja, hogyan teljesítenek:
Személy szerint az egyik legvonzóbb funkció a mobilbarát összefoglaló, amelyet a Mobil lapon érhet el. Válassza ki az Önt érdeklő klasztert, majd az egyes gazdagépet:
Összegzés
Ebben a cikkben bemutattuk a Gangliát, amely egy hatékony és méretezhető felügyeleti megoldás a rácsokhoz és kiszolgálófürtökhöz. Nyugodtan telepítheti, fedezze fel és játsszon a Ganglia-val, amennyit csak akar (mellesleg, a Gangliát is kipróbálhatja a projekt hivatalos weboldalán található demóban.
Miközben ezen jársz, azt is felfedezni fogod, hogy számos ismert cég használja az IT-világban és nem is a Gangliát. Ennek számos jó oka van a cikkünkben megosztottakon kívül, a könnyű használhatóság és a grafikonok, valamint a statisztikák (jó lenne egy arcot adni a névnek, nem igaz?) valószínűleg a csúcson vannak.
De ne csak higgyen a szavunkon, próbálja ki Ön is, és ha bármilyen kérdése van, ne habozzon, írjon nekünk az alábbi megjegyzés űrlap segítségével.