Ich habe einen Überwachungsserver mit folgendem Setup eingerichtet.
<Plugin network>
Listen "0.0.0.0" "25826"
</Plugin>
Jetzt senden meine Clients Daten an den Überwachungsserver (überprüft durch tcpdump). Sogar der Sammlungsordner zeigt, dass die Daten ausgegeben werden
/var/lib/collectd/rrd
[ec2-user at x rrd]$ ll
total 4
drwxr-xr-x 11 root root 4096 Nov 20 17:53 x-web-1.y.com
[ec2-user at x rrd]$
Ich habe auch mit find. -mmin 1 überprüft, ob es ständig aktualisiert wird.
[ec2-user@x rrd]$ find . -mmin 1
./x-web-1.y.com/interface-eth0/if_errors.rrd
./x-web-1.y.com/interface-eth0/if_packets.rrd
./x-web-1.y.com/interface-eth0/if_octets.rrd
./x-web-1.y.com/disk-xvda1/disk_time.rrd
./x-web-1.y.com/disk-xvda1/disk_ops.rrd
./x-web-1.y.com/disk-xvda1/disk_octets.rrd
./x-web-1.y.com/disk-xvda1/disk_merged.rrd
Aber wenn ich es über collectd-web nachschaue, sehe ich die Kunden nicht
Was könnte an meinem Setup falsch sein?
Antwort1
Das gepostete Bild scheint nicht Teil von collectd-web zu sein. Jedenfalls gibt es bei Firefox eine Art Cache-Effekt, der den Neuaufbau von collectd-web-Menüs, einschließlich der Hosts-Liste, verhindert. Leeren Sie den Cache von Firefox und versuchen Sie es erneut.
Antwort2
Wie bereits erwähnt, hatte ich dasselbe Problem mit der Standarddatei „collectd.conf“, die den globalen Host
Parameter standardmäßig auf setzt localhost
. Ich habe festgestellt, dass Ihr Server-Collector durcheinander kommt, wenn einer der Client-Collectors denselben globalen Host
Namen verwendet. Dies wird normalerweise durch Fehler in der Protokolldatei angezeigt, die darauf hinweisen, dass zu viele Aktualisierungen für denselben Zeitstempel erfolgen.
Die Lösung besteht darin, sicherzustellen, dass alle Ihre Clients einen eindeutigen globalen Host-Parameter verwenden. An diesem Punkt sollte der rrd-Ordner Ihres Collector-Servers mit Ordnern gefüllt sein, die die einzelnen Client-Hostnamen mit erfassten Unterinhalten enthalten.
Antwort3
Ich hatte dieses Problem auch. Es trat auf, als ich collectd-web über Apache bereitstellte, anstatt den integrierten Python-Server zu verwenden (wo es einwandfrei funktionierte).
Was passierte, war, dass Apache die gci-Dateien in collectd-web nicht verarbeitete. Um das zu beheben, müssen Sie nur sicherstellen, dass Sie mod_gci installiert haben, und dann Ihre /etc/apache2/sites-available
Datei bearbeiten, um Apache das Überschreiben von Konfigurationen in Ihrem collectd-web-Ordner zu erlauben:
<Directory /var/www/collectd-web>
AllowOverride all
</Directory>
Dadurch lädt Apache die .htacccess-Datei von collectd-web (im cgi-bin
Ordner), die die Anweisungen zum Ausführen der CGI-Skripte enthält.
Dieses kleine Problem wird in den Dokumenten erwähnt:http://collectdweb.appspot.com/documentation/
Ich bin nicht sicher, ob Sie auch Apache verwenden, aber egal, welchen Server Sie verwenden: Überprüfen Sie, ob die CGI-Skripte ausgewertet werden. Andernfalls werden die dynamischen Teile der Schnittstelle nicht geladen.
Antwort4
Erwägen Sie eine Umstellung auf Prometheus oder ein anderes aktuelles Überwachungssystem.
Derzeit verfügt collectd nicht einmal über ein Ubuntu 22 LTS-Paket.
Wir sind von collectd zu Prometheus gewechselt. Viel einfacher zu handhaben und mehr Möglichkeiten.