Ganglia (Software)
| {{#if: Ganglia | Ganglia | {{#invoke:WLink|getArticleBase}} }}
{{#if: | | ||||||||
|---|---|---|---|---|---|---|---|---|
colspan="2" class="notheme" style="text-align:center; background:#Vorlage:Standardfarbe; color:#202122;" | {{{Logo}}} |
{{#if: {{#invoke:Wikidata|claim|P154}} |
| ||||||||
[[Datei:{{#invoke:Wikidata|claim|P154}}|150px]]
}} }}{{#if: Screenshot | | ||||||||
| Screenshot{{#if: Ganglia bei Wikimedia | Ganglia bei Wikimedia }}| }} | ||||||||
| Basisdaten
{{#if: | | ||||||||
| Hauptentwickler |
{{#if: {{#invoke:Wikidata|claim|P126}} |
| |||||||
| Maintainer | claim|P126|parameter=link|references=ja|list=, }}
}} }}{{#if: | | |||||||
| Entwickler |
{{#if: {{#invoke:Wikidata|claim|P178}} |
| |||||||
| Entwickler | claim|P178|parameter=link|references=ja|list=, }}
}} }}{{#if: | | |||||||
| Erscheinungsjahr |
{{#if: {{#invoke:Wikidata|claim|P577}} |
| |||||||
| Erscheinungsjahr | claim|P577|references=ja|list=, }} |
{{#if: {{#invoke:Wikidata|claim|P571}} |
| |||||||
| Erscheinungsjahr | claim|P571|references=ja|list=, }}
}} }} }}{{#ifeq: | KEINE_ANGABE || {{#if: | | |||||||
| Aktuelle Version | ({{#if: | Vorlage:Datum – die Form mit drei unbenannten Parametern oder anderen einzelnen Zeiteinheiten ist veraltet und wird nicht mehr unterstützt. Bitte gib das Datum einfach im Klartext an. |
format | http://ganglia.info/?p=619 | {{#timefl:now|date}}}} | {{{2}}} | T._Monat JJJJ}} | lang= {{#switch: | -|=de | #default=de-AT
}} }} }}) }} |
{{#if: {{#invoke:Wikidata|claim|P348|P548|!Q3295609,Q51930650,Q2122918,Q21727724,Q1072356,Q6736813}} |
|
| Aktuelle Version | claim|P348|P548|!Q3295609,Q51930650,Q2122918,Q21727724,Q1072356,Q6736813|references=ja}} {{#if: {{#invoke:Wikidata|claim|P348|P548|!Q3295609,Q51930650,Q2122918,Q21727724,Q1072356,Q6736813|qualifier=P577}} | ({{#invoke:Wikidata|claim|P348|P548|!Q3295609,Q51930650,Q2122918,Q21727724,Q1072356,Q6736813|qualifier=P577}}) }}}}}} }}{{#ifeq: {{{AktuelleVorabVersion}}} | KEINE_ANGABE || {{#if: | | |||||||
| Aktuelle Vorabversion | ({{#if: | Vorlage:Datum – die Form mit drei unbenannten Parametern oder anderen einzelnen Zeiteinheiten ist veraltet und wird nicht mehr unterstützt. Bitte gib das Datum einfach im Klartext an. |
format | {{{AktuelleVorabVersionFreigabeDatum}}} | {{#timefl:now|date}}}} | {{{2}}} | T._Monat JJJJ}} | lang= {{#switch: | -|=de | #default=de-AT
}} }} }}) }} |
{{#if: {{#invoke:Wikidata|claim|P348|P548|Q1072356,Q51930650,Q3295609,Q2122918,Q21727724}} |
|
| Aktuelle Vorabversion | claim|P348|P548|Q1072356,Q51930650,Q3295609,Q2122918,Q21727724|references=ja}} {{#if: {{#invoke:Wikidata|claim|P348|P548|Q1072356,Q51930650,Q3295609,Q2122918,Q21727724|qualifier=P577}} | ({{#invoke:Wikidata|claim|P348|P548|Q1072356,Q51930650,Q3295609,Q2122918,Q21727724|qualifier=P577}}) }}}}}} }}{{#if: | | |||||||
| Ausführungsumgebung |
{{#if: plattformunabhängig |
| |||||||
| Betriebssystem | plattformunabhängig |
{{#if: {{#invoke:Wikidata|claim|P306}} |
| |||||||
| Betriebssystem | claim|P306|parameter=link|references=ja|list=, }}
}} }} }}{{#if: | | |||||||
| Programmiersprache |
{{#if: {{#invoke:Wikidata|claim|P277}} |
| |||||||
| Programmiersprache | claim|P277|parameter=link|references=ja|list=, }}
}} }}{{#if: Netzwerk-Monitoring | | |||||||
| Kategorie | Netzwerk-Monitoring
}}{{#if: | | |||||||
| Lizenz |
{{#if: {{#invoke:Wikidata|claim|P275}} |
| |||||||
| Lizenz | claim|P275|parameter=link|references=ja|list=, }}
}} }}{{#if: | | |||||||
| deutschsprachig | faculty|}} | ja | nein }}
}}{{#if: | | |||||||
| Sonstiges | {{{Sonstiges}}}
}}{{#if: | | |||||||
|
{{#if: {{#invoke:Wikidata|claim|P856|notdeprecated=1}} |
| ||||||||
{{#invoke: WLink | formatURL | {{#invoke:Wikidata|claim|P856|parameter=link|notdeprecated=1}}}}
}} }}{{#if: | | ||||||||
| Dateien | [[c:Category:Created with {{{Dateien}}}|{{{Dateien}}}]]
}} | |||||||
Ganglia ist ein skalierbares, verteiltes System-Monitoring-Tool für High-Performance-Computing-Systeme wie Cluster und Grids. Es ermöglicht dem Benutzer per Fernzugriff Live- oder historische Statistiken (z. B. Mittelwert der CPU-Last oder Netzauslastung) für alle überwachten Maschinen abzufragen.<ref><templatestyles src="Webarchiv/styles.css" />{{#if:20070126032700
| {{#ifeq: 20070126032700 | *
| {{#if: Ganglia:: Wikimedia Wikimedia Cloud Report | {{#invoke:WLink|getEscapedTitle|Ganglia:: Wikimedia Wikimedia Cloud Report}} | {{#invoke:Webarchiv|getdomain|http://ganglia.wikimedia.org/}} }} (Archivversionen)
| {{#iferror: {{#time: j. F Y|20070126032700}}
| {{#if: || }}Der Wert des Parameters {{#if: wayback | wayback | Datum }} muss ein gültiger Zeitstempel der Form YYYYMMDDHHMMSS sein!
| {{#if: Ganglia:: Wikimedia Wikimedia Cloud Report | {{#invoke:WLink|getEscapedTitle|Ganglia:: Wikimedia Wikimedia Cloud Report}} | {{#invoke:Webarchiv|getdomain|http://ganglia.wikimedia.org/}} }} {{#ifeq: | [] | [ | ( }}{{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer }} vom {{#time: j. F Y|20070126032700}} im Internet Archive{{#if: | ; }}{{#ifeq: | [] | ] | ) }}
}}
}}
| {{#if:
| {{#iferror: {{#time: j. F Y|{{{webciteID}}}}}
| {{#switch: {{#invoke:Str|len|{{{webciteID}}}}}
| 16= {{#if: Ganglia:: Wikimedia Wikimedia Cloud Report | {{#invoke:WLink|getEscapedTitle|Ganglia:: Wikimedia Wikimedia Cloud Report}} | {{#invoke:Webarchiv|getdomain|http://ganglia.wikimedia.org/}} }} {{#ifeq: | [] | [ | ( }}{{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer }} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{{webciteID}}}|1|10}}/86400}} }} days}} auf WebCite{{#if: | ; }}{{#ifeq: | [] | ] | ) }}
| 9 = {{#if: Ganglia:: Wikimedia Wikimedia Cloud Report | {{#invoke:WLink|getEscapedTitle|Ganglia:: Wikimedia Wikimedia Cloud Report}} | {{#invoke:Webarchiv|getdomain|http://ganglia.wikimedia.org/}} }} {{#ifeq: | [] | [ | ( }}{{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer}} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{#invoke:Expr|base62|{{{webciteID}}}}}|1|10}}/86400}} }} days}} auf WebCite{{#if: | ; }}{{#ifeq: | [] | ] | ) }}
| #default= Der Wert des Parameters {{#if: webciteID | webciteID | ID }} muss entweder ein Zeitstempel der Form YYYYMMDDHHMMSS oder ein Schüsselwert mit 9 Zeichen oder eine 16-stellige Zahl sein!{{#if: || }}
}}
| c|{{{webciteID}}}}} {{#if: Ganglia:: Wikimedia Wikimedia Cloud Report | {{#invoke:WLink|getEscapedTitle|Ganglia:: Wikimedia Wikimedia Cloud Report}} | {{#invoke:Webarchiv|getdomain|http://ganglia.wikimedia.org/}} }} ({{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer}} vom {{#time: j. F Y|{{{webciteID}}}}} auf WebCite{{#if: | ; }}{{#ifeq: | [] | ] | ) }}
}}
| {{#if:
| Vorlage:Webarchiv/Today
| {{#if:
| Vorlage:Webarchiv/Generisch
| {{#if: Ganglia:: Wikimedia Wikimedia Cloud Report | {{#invoke:WLink|getEscapedTitle|Ganglia:: Wikimedia Wikimedia Cloud Report}} | {{#invoke:Webarchiv|getdomain|http://ganglia.wikimedia.org/}} }}
}}}}}}}}{{#if:
| Vorlage:Webarchiv/archiv-bot
}}{{#invoke:TemplatePar|check
|all = url=
|opt = text= wayback= webciteID= archive-is= archive-today= archiv-url= archiv-datum= ()= archiv-bot= format= original=
|cat = Wikipedia:Vorlagenfehler/Vorlage:Webarchiv
|errNS = 0
|template = Vorlage:Webarchiv
|format = *
|preview = 1
}}{{#ifexpr: {{#if:20070126032700|1|0}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}} <> 1
| {{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Genau einer der Parameter 'wayback', 'webciteID', 'archive-today', 'archive-is' oder 'archiv-url' muss angegeben werden.|1}}
}}{{#if:
| {{#switch: {{#invoke:Webarchiv|getdomain|{{{archiv-url}}}}}
| web.archive.org =
{{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von Internet Archive erkannt, bitte Parameter 'wayback' benutzen.|1}}
| webcitation.org =
{{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von WebCite erkannt, bitte Parameter 'webciteID' benutzen.|1}}
| archive.today |archive.is |archive.ph |archive.fo |archive.li |archive.md |archive.vn =
{{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von archive.today erkannt, bitte Parameter 'archive-today' benutzen.|1}}
}}{{#if:
| {{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}
| {{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Wert des Parameter 'archiv-datum' ist ungültig oder hat ein ungültiges Format.|1}}
| }}
| {{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Pflichtparameter 'archiv-datum' wurde nicht angegeben.|1}}
}}
| {{#if:
| {{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Parameter 'archiv-datum' ist nur in Verbindung mit 'archiv-url' angebbar.|1}}
}}
}}{{#if:{{#invoke:URLutil|isHostPathResource|http://ganglia.wikimedia.org/}}
|| {{#if: || }}
}}{{#if: Ganglia:: Wikimedia Wikimedia Cloud Report
| {{#if: {{#invoke:WLink|isBracketedLink|Ganglia:: Wikimedia Wikimedia Cloud Report}}
| {{#if: || }}
}}
| {{#if: || }}
}}{{#switch:
|addlarchives|addlpages= {{#if: || }}{{#if: 1 |}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: enWP-Wert im Parameter 'format'.|1}}
}}{{#ifeq: {{#invoke:Str|find|http://ganglia.wikimedia.org/%7Carchiv}} |-1
|| {{#ifeq: {{#invoke:Str|find|{{#invoke:Str|cropleft|http://ganglia.wikimedia.org/%7C4}}%7Chttp}} |-1
|| {{#switch: {{#invoke:Webarchiv|getdomain|http://ganglia.wikimedia.org/ }}
| abendblatt.de | daserste.ndr.de | inarchive.com | webcitation.org =
| #default = {{#if: || }}{{#if: 1 |}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Archiv-URL im Parameter 'url' anstatt URL der Originalquelle. Entferne den vor der Original-URL stehenden Mementobestandteil und setze den Archivierungszeitstempel in den Parameter 'wayback', 'webciteID', 'archive.today' oder 'archive-is' ein, sofern nicht bereits befüllt.|1}}
}}
}}
}}</ref>
Ganglia
Ganglia entstand aus dem Millennium Project der University of California, Berkeley, und basiert auf einem hierarchischen Design von Cluster-Verbänden.<ref>millennium.berkeley.edu</ref> Es stützt sich auf ein multicast-basiertes Listen/Announce-Protokoll, um die Status im Cluster zu überwachen. Es erzeugt einen Baum von Punkt-zu-Punkt-Verbindungen zwischen repräsentativen Cluster-Knoten und nutzt weit verbreitete Technologien wie XML für Datendarstellung, XDR für den kompakten, portablen Datentransport und RRDtool für die Datenspeicherung und Visualisierung. Es nutzt sorgfältig konstruierte Datenstrukturen und Algorithmen zu sehr niedrigen Pro-Knoten-Kosten, um hohe Parallelität zu erreichen. Die Implementierung ist robust und wurde auf eine umfangreiche Liste von Betriebssystemen und Prozessor-Architekturen portiert. Derzeit ist Ganglia auf über 500 Clustern in aller Welt im Einsatz. Es wurde verwendet, um Cluster in Universitäten und der ganzen Welt zu verbinden und kann in Cluster mit 2000 Knoten betrieben werden.<ref>Ganglia Monitoring System</ref>
Das Ganglien-System besteht aus zwei einzigartigen Diensten, einem PHP-basierten Web-Front-End und ein paar anderen kleinen Hilfsprogrammen.
Ganglia Monitoring Daemon (gmond)
Gmond ist ein Multi-Threaded Daemon, der auf jedem zu überwachenden Cluster-Knoten läuft. Für die Installation ist weder ein gemeinsames NFS-Dateisystem oder Datenbank-Backend, noch das Anlegen bestimmter Benutzerkonten oder das Pflegen von Konfigurationsdateien erforderlich.
Gmond hat vier Hauptaufgaben:
- Überwachen von Änderungen im Cluster-Verbund.
- Relevante Veränderungen bekanntmachen.
- Abhören des Status aller anderen Knoten über einen Ganglien Unicast oder Multicast-Kanal.
- Ausgabe des Cluster-Zustandes im XML-Format.
Jeder gmond überträgt Information in zwei verschiedene Arten:
- der Knotenstatus wird in Unicast oder Multicast Verfahren im XDR Format unter Nutzung von UDP-Nachrichten versendet.
- Versenden von XML Daten geschieht über eine TCP -Verbindung.
Ganglia Meta Daemon (gmetad)
Der Verbund in Ganglia erfolgt über einen Baum von Punkt-zu-Punkt-Verbindungen zwischen repräsentativen Cluster-Knoten der aggregieren Knoten mehrere Cluster. An jedem Knoten im Baum, arbeitet ein Ganglia Meta Daemon (gmetad), periodisch erfragt dieser eine Auflistung von untergeordneten Datenquellen, analysiert die gesammelten Daten und exportiert diese als aggregierte XML über einen TCP-Socket an den Client. Datenquellen können entweder gmond Dämonen, die ein bestimmtes Cluster oder andere gmetad Dämonen, welche Sätze von Clustern, representiern sein. Die Datenquellen nutzen Source IP-Adressen für die Zutrittskontrolle und können unter Verwendung mehrerer IP-Adressen für Failover verwendet werden. Die letztere Möglichkeit ist die Aggregation der Daten von Clustern, da jeder gmond Daemon den gesamten Zustand der Cluster enthält.
Ganglia PHP-Web-Front-End
Das Ganglia Web-Frontend bietet einen Blick auf die gesammelten Daten über dynamische Web-Seiten in Echtzeit. Das Web-Frontend zeigt die Ganglia Daten in einer sinnvollen Art und Weise für Systemadministratoren und Computer-Nutzer an. Das Web-Frontend von Ganglia begann als eine einfache HTML Ansicht der XML-Struktur und hat sich zu einem bunten System, das alle gesammelten Daten enthält, entwickelt.
Das Ganglia Web-Frontend richtet sich an Systemadministratoren und Anwender. Es visualisiert zum Beispiel die CPU-Auslastung während der letzten Stunden, Tage, Wochen, Monat oder Jahr. Das Web-Frontend zeigt ähnliche Kurven für die Speichernutzung, Festplattennutzung, Netzwerk-Statistiken, die Anzahl der laufenden Prozesse und alle anderen Ganglia-Metriken.
Das Web-Frontend ist abhängig von der Existenz des gmetad, es bietet Daten aus mehreren Ganglia Quellen. Das Web-Frontend öffnet den lokalen Port 8651 (Standard) und erwartet von dort eine Ganglia XML-Struktur, welches auf einer übersichtlichen Webseite dargestellt wird, erfordert aber, dass die volle XML-Struktur auf jeder Seite geparst wird. Daher sollte das Ganglia Web-Frontend auf einem ziemlich starken, dedizierten Maschine laufen, wenn es eine große Datenmenge präsentiert.
Das Ganglia Web-Frontend ist in der PHP-Skriptsprache entwickelt worden und nutzt Graphen, die gmetad generiert, um den Verlauf anzuzeigen. Es wurde auf vielen Systemen getestet, Unix (hauptsächlich Linux) mit dem Apache Webserver und PHP 4.1.
Weblinks
Einzelnachweise
<references />