collectd:Überwachungsserver zeigt keine Clients an

collectd:Überwachungsserver zeigt keine Clients an

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 Bildbeschreibung hier eingeben

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 HostParameter standardmäßig auf setzt localhost. Ich habe festgestellt, dass Ihr Server-Collector durcheinander kommt, wenn einer der Client-Collectors denselben globalen HostNamen 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-availableDatei 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-binOrdner), 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.

verwandte Informationen