Hallo Leute - ich hab heute mal eine etwas andere Frage, dazu ne kleine Einführung:
Was ich vorhabe zu erstellen ist ein web basierter Server Monitor der aber nicht nur sich selbst sondern auch andere Server "monitoren" kann. Erstmal reicht es mir dass ich so blödsinn wie cpu load, memory usage, uptime usw. messen und anzeigen kann.
Jedenfalls brauch ich einen Agent auf den zu überwachenden Servern - so, jetzt ist die Frage - wie designe ich den? Also designen im Sinne von, wie handle ich das Abfragen der web basierten Oberfläche zu den einzelnen Servern?
Soll ich den Umweg über MySQL gehen, dass der Daemon quasi einfach zeitgesteuert, sagen wir alle 10Sek alle Daten vom Server aufnimmt, also aktuelle CPU/Ram Auslastung usw. und die einfach an einen Webserver sendet und dieser wiederum trägt das dann in eine Tabelle in der SQLDB ein?
Oder soll lieber der Daemon alle Daten zwischenspeichern und auf einem Port einfach hören und dann kommt mein Monitor und holt sich die Daten direkt vom Agent ab...
Ich weiß nicht so richtig wie ichs machen soll, der Umweg über die Datenbank wäre schon nicht schlecht, weil wenn dann würde mein Monitor sowieso PHP bzw. Flashbasiert sein, und das lesen einer MySQL Datenbank is echt simpel mit PHP - dafür hab ich aber den Nachteil dass meine SQL Tabelle mit den "Rohdaten" wahrscheinlich explodieren wird wenn ich paar Server (wären ~10 Server) alle - sagen wir mal 10 Sekunden - in die SQL Tabelle dumpen... 1Stunde - 600 Datensätze...
Desweiteren könnte man natürlich genau sehen seit wann ein Server offline ist wenn der seit xxx-Sekunden nicht mehr in die Tabelle neue Daten schreibt. Auswertungen wären ebenfalls leichter...
Was meint ihr zu diesem Thema - welche Methode würdet ihr bevorzugen bzw. gibts vielleicht noch Alternativen?
Was ich vorhabe zu erstellen ist ein web basierter Server Monitor der aber nicht nur sich selbst sondern auch andere Server "monitoren" kann. Erstmal reicht es mir dass ich so blödsinn wie cpu load, memory usage, uptime usw. messen und anzeigen kann.
Jedenfalls brauch ich einen Agent auf den zu überwachenden Servern - so, jetzt ist die Frage - wie designe ich den? Also designen im Sinne von, wie handle ich das Abfragen der web basierten Oberfläche zu den einzelnen Servern?
Soll ich den Umweg über MySQL gehen, dass der Daemon quasi einfach zeitgesteuert, sagen wir alle 10Sek alle Daten vom Server aufnimmt, also aktuelle CPU/Ram Auslastung usw. und die einfach an einen Webserver sendet und dieser wiederum trägt das dann in eine Tabelle in der SQLDB ein?
Oder soll lieber der Daemon alle Daten zwischenspeichern und auf einem Port einfach hören und dann kommt mein Monitor und holt sich die Daten direkt vom Agent ab...
Ich weiß nicht so richtig wie ichs machen soll, der Umweg über die Datenbank wäre schon nicht schlecht, weil wenn dann würde mein Monitor sowieso PHP bzw. Flashbasiert sein, und das lesen einer MySQL Datenbank is echt simpel mit PHP - dafür hab ich aber den Nachteil dass meine SQL Tabelle mit den "Rohdaten" wahrscheinlich explodieren wird wenn ich paar Server (wären ~10 Server) alle - sagen wir mal 10 Sekunden - in die SQL Tabelle dumpen... 1Stunde - 600 Datensätze...
Desweiteren könnte man natürlich genau sehen seit wann ein Server offline ist wenn der seit xxx-Sekunden nicht mehr in die Tabelle neue Daten schreibt. Auswertungen wären ebenfalls leichter...
Was meint ihr zu diesem Thema - welche Methode würdet ihr bevorzugen bzw. gibts vielleicht noch Alternativen?