Real-Time Iwwerwaachung mat Ganglia fir Gitter a Cluster vu Linux Serveren opzestellen


Zënter datt Systemadministrateuren zoustänneg sinn fir Serveren a Gruppe vu Maschinnen ze managen, sinn Tools wéi Iwwerwaachungsapplikatiounen hir bescht Frënn. Dir wäert wahrscheinlech mat Tools wéi Icinga, an Centreon vertraut sinn. Wärend dës d'Schwieregkeete vun der Iwwerwaachung sinn, se opzestellen an hir Features voll ze profitéieren kann e bësse schwéier fir nei Benotzer sinn.

An dësem Artikel wäerte mir Iech Ganglia virstellen, e Iwwerwaachungssystem deen liicht skalierbar ass an et erlaabt eng grouss Varietéit vu Systemmetriken vu Linux Server a Cluster (plus Grafike) an Echtzäit ze gesinn.

Ganglia léisst Iech Gitter (Plazen) a Cluster (Gruppe vu Serveren) fir eng besser Organisatioun opsetzen.

Also kënnt Dir e Gitter erstellen, deen aus all de Maschinnen an engem Fernëmfeld besteet, an dann dës Maschinnen a méi kleng Sätze gruppéieren op Basis vun anere Critèren.

Zousätzlech ass d'Web-Interface vum Ganglia fir mobilen Apparater optimiséiert, an erlaabt Iech och Daten en .csv an .json Formater ze exportéieren.

Eis Testëmfeld besteet aus engem zentrale CentOS 7 Server (IP Adress 192.168.0.29) wou mir Ganglia installéiere wäerten, an eng Ubuntu 14.04 Maschinn (192.168.0.32), d'Këscht déi mir iwwer d'Webinterface vum Ganglia iwwerwaache wëllen.

Während dësem Guide wäerte mir op den CentOS 7 System als Master Node bezéien, an op d'Ubuntu Box als iwwerwaacht Maschinn.

Ganglia installéieren an konfiguréieren

Fir d'Iwwerwaachungs Utilities am Master Node z'installéieren, befollegt dës Schrëtt:

1. Aktivéiert den EPEL Repository an installéiert dann Ganglia a verbonne Utilities vun do aus:

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

D'Packagen déi am Schrëtt uewen installéiert sinn zesumme mat Ganglia, der Applikatioun selwer, maachen déi folgend Funktiounen:

  1. rrdtool, d'Round-Robin Datebank, ass en Tool dat benotzt gëtt fir d'Variatioun vun Daten iwwer Zäit mat Grafiken ze späicheren an ze weisen.
  2. ganglia-gmetad ass den Daemon deen Iwwerwaachungsdaten sammelt vun den Hosten déi Dir iwwerwaache wëllt. An deene Hosten an am Master Node ass et och noutwendeg fir Ganglia-gmond (den Iwwerwaachungsdaemon selwer) z'installéieren:
  3. ganglia-web bitt de Webfrontend wou mir déi historesch Grafiken an Daten iwwer déi iwwerwaachte Systemer kucken.

2. Authentifizéierung fir d'Ganglia Web-Interface opsetzen (/usr/share/ganglia). Mir wäerte Basis Authentifikatioun benotzen wéi vun Apache geliwwert.

Wann Dir méi fortgeschratt Sécherheetsmechanismen entdecken wëllt, kuckt op d'Autorisatioun an d'Authentifikatioun Sektioun vun den Apache Dokumenter.

Fir dëst Zil z'erreechen, erstellt e Benotzernumm a gitt e Passwuert un fir Zougang zu enger Ressource déi vun Apache geschützt ass. An dësem Beispill wäerte mir e Benotzernumm mam Numm adminganglia erstellen an e Passwuert vun eisem Choix zouginn, dat an /etc/httpd/auth.basic gespäichert gëtt (fillt Iech gratis en anere Verzeechnes an/oder Datei ze wielen Numm - soulaang Apache Permissiounen op dës Ressourcen gelies huet, wäert Dir gutt sinn):

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

Gitt d'Passwuert fir adminganglia zweemol ier Dir weidergeet.

3. Änneren /etc/httpd/conf.d/ganglia.conf wéi follegt:

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

Als éischt, benotzt d'Gridname-Direktiv gefollegt vun engem deskriptive Numm fir de Gitter, deen Dir opstellt:

gridname "Home office"

Dann benotzt data_source gefollegt vun engem deskriptiven Numm fir de Stärekoup (Grupp vu Serveren), e Polling-Intervall a Sekonnen an d'IP Adress vum Master an iwwerwaachte Noden:

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

5. Änneren /etc/ganglia/gmond.conf.

a) Gitt sécher datt de Clusterblock esou ausgesäit:

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

b) Am udp_send_chanel Block, kommentéiert d'mcast_join Direktiv aus:

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

c) Endlech, kommentéiert d'mcast_join a bind Direktiven am udp_recv_channel Block:

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

Späichert d'Ännerungen a gitt eraus.

6. Open Port 8649/udp an erlaabt PHP Scripten (iwwer Apache lafen) fir mam Netz ze verbannen mat der néideger SELinux Boolean:

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

7. Restart Apache, gmetad, an gmond. Gitt och sécher datt se aktivéiert sinn fir beim Boot ze starten:

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

Zu dësem Zäitpunkt sollt Dir fäeg sinn d'Ganglia Webinterface op http://192.168.0.29/ganglia opzemaachen a mat den Umeldungsinformatiounen vum #Step 2 aloggen.

8. Am Ubuntu Host wäerte mir nëmmen Ganglia-Monitor installéieren, den Äquivalent vu Ganglia-gmond an CentOS:

$ sudo aptitude update && aptitude install ganglia-monitor

9. Änneren d'Datei /etc/ganglia/gmond.conf an der iwwerwaachter Këscht. Dëst sollt identesch mat der selwechter Datei am Master Node sinn, ausser datt déi kommentéiert Linnen am Cluster, udp_send_channel, an udp_recv_channel sollen aktivéiert sinn:

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
}

Da starten de Service nei:

$ sudo service ganglia-monitor restart

10. Erfrëschen d'Web-Interface an Dir sollt fäeg sinn d'Statistiken an d'Grafike fir béid Hosten am Home Office Gitter/Labs Cluster ze gesinn (benotzt den Dropdown-Menü nieft dem Home Office Gitter fir e Cluster ze wielen, Labs an eisem Fall):

Mat de Menü-Tabs (uewe beliicht) kënnt Dir vill interessant Informatioun iwwer all Server individuell a Gruppen zougräifen. Dir kënnt souguer d'Statistike vun all de Serveren an engem Cluster niewentenee vergläichen andeems Dir de Tab Hosts vergläichen.

Wielt einfach eng Grupp vu Serveren mat engem regulären Ausdrock an Dir wäert fäeg sinn e schnelle Verglach vu wéi se Leeschtunge gesinn:

Ee vun de Fonctiounen, déi ech perséinlech am meeschten attraktiv fannen, ass de mobilfrëndleche Resumé, deen Dir mat der Mobile Tab kënnt zougräifen. Wielt de Cluster an deem Dir interesséiert sidd an dann den individuellen Host:

Resumé

An dësem Artikel hu mir Ganglia agefouert, eng mächteg a skalierbar Iwwerwaachungsléisung fir Gitter a Cluster vu Serveren. Fillt Iech gratis mat Ganglia z'installéieren, z'entdecken an ze spillen sou vill wéi Dir wëllt (iwwregens, Dir kënnt souguer Ganglia ausprobéieren an enger Demo déi op der offizieller Websäit vum Projet geliwwert gëtt.

Wärend Dir do sidd, entdeckt Dir och datt verschidde bekannte Firmen souwuel an der IT Welt oder net Ganglia benotzen. Et gi vill gutt Grënn dofir, nieft deenen, déi mir an dësem Artikel gedeelt hunn, mat einfacher Benotzung a Grafiken zesumme mat Statistiken (et ass schéin, e Gesiicht op den Numm ze setzen, ass et net?) wahrscheinlech un der Spëtzt.

Awer net nëmmen eis Wuert huelen fir et, probéiert et selwer an zéckt net fir eis eng Zeil ze schécken mat dem Kommentarformular hei ënnen wann Dir Froen hutt.