Reaalajas jälgimise seadistamine Ganglia abil Linuxi serverite võrkudele ja klastritele


Sellest ajast peale, kui serverite ja masinagruppide haldamine on olnud süsteemiadministraatorite ülesanne, on sellised tööriistad nagu rakenduste jälgimine olnud nende parimad sõbrad. Tõenäoliselt olete tuttav selliste tööriistadega nagu Icinga ja Centreon. Ehkki need on jälgimise raskekaalulised, võib nende seadistamine ja nende funktsioonide täielik ärakasutamine uutele kasutajatele olla mõnevõrra keeruline.

Selles artiklis tutvustame teile hõlpsasti skaleeritavat jälgimissüsteemi Ganglia, mis võimaldab reaalajas vaadata mitmesuguseid Linuxi serverite ja klastrite süsteemimõõdikuid (pluss graafikud).

Ganglia võimaldab teil paremaks korraldamiseks seadistada võrgud (asukohad) ja klastrid (serverite rühmad).

Seega saate luua võrgu, mis koosneb kõigist kaugemas keskkonnas asuvatest masinatest, ja seejärel grupeerida need masinad muude kriteeriumide alusel väiksemateks komplektideks.

Lisaks on Ganglia veebiliides optimeeritud mobiilseadmete jaoks ja võimaldab teil eksportida andmeid ka vormingutes .csv ja .json .

Meie testikeskkond koosneb kesksest CentOS 7 serverist (IP-aadress 192.168.0.29), kuhu installime Ganglia, ja Ubuntu 14.04 masinast (192.168.0.32), kastist, mida soovime jälgida Ganglia veebiliidese kaudu.

Selles juhendis viidatakse CentOS 7 süsteemile kui põhisõlmele ja Ubuntu kastile kui jälgitavale masinale.

Ganglia installimine ja konfigureerimine

Jälgimisutiliitide installimiseks põhisõlmesse toimige järgmiselt.

1. Lubage EPEL-hoidla ja installige seejärel Ganglia ja sellega seotud utiliidid:

# yum update && yum install epel-release
# yum install ganglia rrdtool ganglia-gmetad ganglia-gmond ganglia-web 

Ülalolevas etapis installitud paketid koos rakendusega ganglionidega täidavad järgmisi funktsioone:

  1. rrdtool , Round-Robini andmebaas, on tööriist, mida kasutatakse andmete variatsioonide salvestamiseks ja kuvamiseks aja jooksul graafikute abil.
  2. ganglia-gmetad on deemon, mis kogub jälgimisandmeid hostidelt, mida soovite jälgida. Nendes hostides ja põhisõlmes on vaja installida ka ganglion-gmond (jälgimisdemon ise):
  3. ganglia-web pakub veebi esiosa, kus vaatame jälgitavate süsteemide ajaloolisi graafikuid ja andmeid.

2. Seadistage Ganglia veebiliidese autentimine (/ usr/share/ganglia). Kasutame Apache'i pakutavat põhilist autentimist.

Kui soovite uurida täpsemaid turvamehhanisme, vaadake Apache'i dokumentide jaotist Autoriseerimine ja autentimine.

Selle eesmärgi saavutamiseks looge kasutajanimi ja määrake parool, et pääseda juurde Apache'i kaitstud ressursile. Selles näites loome kasutajanime nimega adminganglia ja määrame enda valitud parooli, mis salvestatakse kataloogi /etc/httpd/auth.basic (valige julgelt mõni muu kataloog ja/või fail nimi - seni, kuni Apache'il on nende ressursside lugemisõigused, on teil kõik korras):

# htpasswd -c /etc/httpd/auth.basic adminganglia

Enne jätkamist sisestage adminganglia parool kaks korda.

3. Muutke faili /etc/httpd/conf.d/ganglia.conf järgmiselt:

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. Muutke faili /etc/ganglia/gmetad.conf:

Kõigepealt kasutage seadistatava ruudustiku käsku ruudustikunime käsk ja sellele järgnev kirjeldav nimi:

gridname "Home office"

Seejärel kasutage data_source, millele järgneb klastri (serverite rühma) kirjeldav nimi, sekundite küsitlusintervall ning pea- ja jälgitavate sõlmede IP-aadress:

data_source "Labs" 60 192.168.0.29:8649 # Master node
data_source "Labs" 60 192.168.0.32 # Monitored node

5. Muutke faili /etc/ganglia/gmond.conf.

a) Veenduge, et klastriplokk näeb välja järgmine:

cluster {
name = "Labs" # The name in the data_source directive in gmetad.conf
owner = "unspecified"
latlong = "unspecified"
url = "unspecified"
}

b) Kommenteerige plokis udp_send_chanel direktiiv mcast_join:

udp_send_channel   {
  #mcast_join = 239.2.11.71
  host = localhost
  port = 8649
  ttl = 1
}

c) Lõpuks kommenteerige mcast_join ja sidumisdirektiivid plokis udp_recv_channel:

udp_recv_channel {
  #mcast_join = 239.2.11.71 ## comment out
  port = 8649
  #bind = 239.2.11.71 ## comment out
}

Salvestage muudatused ja väljuge.

6. Avage port 8649/udp ja lubage PHP-skriptidel (käivitada Apache kaudu) võrguga ühenduse loomiseks, kasutades vajalikku SELinuksi tõeväärtust:

# firewall-cmd --add-port=8649/udp
# firewall-cmd --add-port=8649/udp --permanent
# setsebool -P httpd_can_network_connect 1

7. Taaskäivitage Apache, gmetad ja gmond. Samuti veenduge, et neil oleks käivitamisel käivitamine lubatud:

# systemctl restart httpd gmetad gmond
# systemctl enable httpd gmetad httpd

Siinkohal peaksite saama avada Ganglia veebiliidese aadressil http://192.168.0.29/ganglia ja logida sisse # 2. sammu mandaatidega.

8. Ubuntu hostis installime CentOS-i ainult ganglionid-monitori, mis on samaväärne ganglionide-gmondidega:

$ sudo aptitude update && aptitude install ganglia-monitor

9. Muutke jälgitavas kastis faili /etc/ganglia/gmond.conf. See peaks olema identne sama failiga põhisõlmes, välja arvatud see, et klastri kommenteeritud read, udp_send_channel ja udp_recv_channel peaksid olema lubatud:

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
}

Seejärel taaskäivitage teenus:

$ sudo service ganglia-monitor restart

10. Värskendage veebiliidest ja kodukontori ruudustiku/laborite klastri sees peaksite saama vaadata mõlema hosti statistikat ja graafikuid (klastri valimiseks kasutage rippmenüüd Kodukontori ruudustiku kõrval, meie puhul Labs):

Menüükaartide abil (ülal esile tõstetud) pääsete juurde palju huvitavat teavet iga serveri kohta eraldi ja rühmiti. Vahekaardil Võrgu hostide abil saate isegi kõrvuti võrrelda kõigi klastri serverite statistikat.

Valige lihtsalt regulaaravaldist kasutades serverirühm ja näete nende toimivuse kiiret võrdlust:

Üks funktsioonidest, mis mulle isiklikult kõige enam meeldivad, on mobiilisõbralik kokkuvõte, millele saate juurde pääseda vahekaardi Mobiil abil. Valige huvipakkuv klaster ja seejärel üksikisik:

Kokkuvõte

Selles artiklis oleme tutvustanud Ganglia, võimsat ja skaleeritavat seirelahendust võrkude ja serveriklastrite jaoks. Võite vabalt installida, uurida ja Gangliaga ringi mängida nii palju kui soovite (muide, võite isegi proovida Gangliat projekti ametlikul veebisaidil esitatud demos.

Sellega tegeledes avastate ka, et mitmed tuntud ettevõtted nii IT-maailmas kui ka ei kasuta Ganglia. Selleks on lisaks põhjustele, mida oleme selles artiklis jaganud, ohtralt häid põhjuseid, ilmselt ka tipus olev kasutusmugavus ja graafikud koos statistikaga (nimele on tore nägu panna?)

Kuid ärge võtke lihtsalt sõna, proovige seda ise ja ärge kartke, kui teil on küsimusi, lisage meile rida, kasutades allolevat kommentaarivormi.