Einrichten des Grafana Dashboards
Jetzt, da Ihr Node läuft, möchten Sie wahrscheinlich eine bequeme Möglichkeit haben, alles auf einen Blick zu überwachen, um sicherzustellen, dass er korrekt funktioniert (und welche Art von Einnahmen er für Sie generiert).
Es gibt viele Tools, die diese Aufgabe erfüllen. Eines der beliebtesten heißt Grafana - ein benutzerfreundliches, universelles Dashboard-System, auf das Sie mit einem Browser zugreifen können.
Rocket Pool wird out-of-the-box mit Unterstützung für Grafana und seine Abhängigkeiten geliefert; es wird sogar mit einem vorgefertigten Dashboard für jeden Consensus Client geliefert. Hier ist zum Beispiel ein Snapshot, wie das Dashboard im Hoodi-Testnetzwerk aussieht:

Das Standard-Dashboard enthält die folgenden Informationen in einem praktischen Format:
- Oben links: einige wichtige Statistiken über die Gesundheit und Leistung Ihrer Maschine und alle ausstehenden Systemupdates
- Oben rechts: die Aktivität und Leistung Ihrer Validatoren auf der Beacon Chain, zusammen mit einigen Execution und Consensus Client Statistiken
- Unten links: Details über das gesamte Rocket Pool Netzwerk, als Referenz
- Unten rechts: Details über Ihre Staking-Belohnungen, sowohl ETH als auch RPL
In diesem Leitfaden zeigen wir Ihnen, wie Sie das Metriken-System von Rocket Pool aktivieren, damit Sie dieses Dashboard verwenden können - oder sogar Ihr eigenes erstellen!
Übersicht über den Rocket Pool Metrics Stack
Wenn Sie sich während des Smartnode-Konfigurationsprozesses dafür entscheiden, Metriken zu aktivieren, fügt Ihr Node die folgenden Prozesse hinzu:
- Prometheus - ein Datenerfassungs-, Speicher- und Berichtssystem, das alle oben genannten Metriken (und viele mehr) erfasst und speichert, damit sie im Laufe der Zeit betrachtet werden können
- Der Prometheus Node Exporter - ein Dienst, der Informationen über die Gesundheit Ihrer Maschine sammelt (wie CPU-Auslastung, RAM-Auslastung, freier Festplattenspeicher und Swap-Speicher usw.) und an Prometheus meldet
- Grafana, das Tool, das die Daten von Prometheus über eine praktische Website auf Ihrem Node verfügbar macht
- Ein optionales benutzerdefiniertes Set von Skripten, das alle verfügbaren Betriebssystem-Updates an Prometheus meldet, damit Sie wissen, ob Ihr System gepatcht werden muss
Die Standardkonfiguration erstellt Docker-Container mit all diesen Diensten, die neben den restlichen Docker-Containern der Smartnode leben. Sie öffnet einen Port auf Ihrer Node-Maschine für Grafana, damit Sie von jedem Gerät in Ihrem lokalen Netzwerk mit einem Browser auf das Dashboard zugreifen können.
Aktivieren des Metrics Server
Die Aktivierung von Metriken im Docker-Modus ist am einfachsten.
Führen Sie zunächst den Smartnode-Konfigurationsbefehl erneut aus:
Gehen Sie zum Abschnitt Monitoring / Metrics und aktivieren Sie das Kontrollkästchen Enable Metrics.
Für diejenigen, die ihre Port-Einstellungen feinabstimmen möchten, können Sie dies hier tun. Beachten Sie, dass alle diese Ports auf das interne Docker-Netzwerk beschränkt sind, mit Ausnahme des Grafana-Ports - dieser wird auf Ihrer Maschine geöffnet (damit Sie von anderen Geräten wie Ihrem Desktop oder Telefon mit einem Browser darauf zugreifen können), daher möchten Sie dies möglicherweise ändern, wenn der Standardport mit etwas kollidiert, das Sie bereits haben.
Speichern und beenden Sie, und die Smartnode startet die Prometheus-, Node Exporter- und Grafana-Docker-Container für Sie.
Sie modifiziert auch Ihre Consensus und Validator Clients, damit sie ihre eigenen Metriken an Prometheus weitergeben.
Der Betriebssystem- und Rocket Pool Update-Tracker ist standardmäßig nicht installiert für maximale Flexibilität, aber der Prozess ist einfach. Wenn Sie ihn installieren möchten, damit Ihr Dashboard Ihnen anzeigt, wie viele Updates für Ihr System verfügbar sind, können Sie dies mit diesem Befehl tun:
Unter der Haube installiert dies einen Dienst, der sich in den Paketmanager Ihres Betriebssystems einhängt, regelmäßig nach Updates sucht und diese Informationen an Prometheus sendet. Dieser Dienst ist für jedes Betriebssystem unterschiedlich, aber es wurde bestätigt, dass er auf folgenden funktioniert:
- Ubuntu 20.04+
- Debian 9 und 10
- CentOS 7 und 8
- Fedora 34
HINWEIS
Das automatische Aktivieren des Dienstes ist nicht mit SELinux kompatibel. Wenn Ihr System SELinux standardmäßig aktiviert hat (wie bei CentOS und Fedora der Fall), bringt Sie der Installationsbefehl zum größten Teil dorthin, gibt Ihnen aber am Ende auch Anweisungen, wie Sie den Prozess manuell abschließen.Während dieser Überprüfung vergleicht es auch Ihre installierte Rocket Pool Smartnode-Version mit der neuesten Version und informiert Sie, wenn eine neue Version verfügbar ist.
Wenn Sie den Update-Tracker aktiviert haben, besteht der letzte Schritt darin, den Node Exporter mit folgendem Befehl neu zu starten:
Danach sollten Sie fertig sein.
Firewall konfigurieren, um Verbindungen für die Überwachung zuzulassen
Wenn Sie UFW wie im Abschnitt Sichern Ihres Nodes referenziert aktiviert haben, müssen Sie einige Ports öffnen, um lokale Verbindungen zwischen Prometheus und Ihren Execution/Consensus Clients zu ermöglichen. Folgen Sie den nachstehenden Schritten.
Führen Sie Folgendes aus und ersetzen Sie die Ports bei Bedarf:
Sie können dann die Firewall öffnen, um externen Geräten Zugriff auf Ihr Grafana-Dashboard zu ermöglichen.
Verwenden Sie dies, wenn Sie von jedem Gerät in Ihrem lokalen Netzwerk auf Grafana zugreifen möchten, aber den Zugriff überall sonst verweigern möchten. Dies wird der häufigste Anwendungsfall sein.
Bitte überprüfen Sie zuerst, ob Ihr lokales Netzwerk die Struktur 192.168.1.xxx verwendet.
Möglicherweise müssen Sie den untenstehenden Befehl anpassen, um der Konfiguration Ihres lokalen Netzwerks zu entsprechen, wenn es eine andere Adressstruktur verwendet (z.B. 192.168.99.xxx).
Einrichten von Grafana
Jetzt, da der Metrics Server bereit ist, können Sie mit jedem Browser in Ihrem lokalen Netzwerk darauf zugreifen.
Beziehen Sie sich auf die nachstehenden Tabs für Ihren Smartnode-Installationsmodus.
Navigieren Sie zur folgenden URL und ersetzen Sie die Variablen entsprechend Ihrem Setup:
Wenn beispielsweise die IP Ihres Nodes 192.168.1.5 war und Sie den Standard-Grafana-Port 3100 verwendet haben, würden Sie diese URL in Ihrem Browser aufrufen:
Sie sehen einen Anmeldebildschirm wie diesen:
Die Standard-Grafana-Informationen sind:
Sie werden dann aufgefordert, das Standardpasswort für das admin-Konto zu ändern.
Wählen Sie etwas Starkes und vergessen Sie es nicht!
Wenn Sie das Admin-Passwort verlieren, können Sie es mit folgendem Befehl auf Ihrem Node zurücksetzen:
Sie können sich dann erneut mit den Standard-admin-Anmeldedaten bei Grafana anmelden und werden aufgefordert, das Passwort für das admin-Konto zu ändern.
Dank der Arbeit von Community-Mitglied tedsteen verbindet sich Grafana automatisch mit Ihrer Prometheus-Instanz, sodass es Zugriff auf die von ihr gesammelten Metriken hat. Alles, was Sie tun müssen, ist das Dashboard zu holen!
Importieren des Rocket Pool Dashboards
Jetzt, da Sie Grafana mit Prometheus verbunden haben, können Sie das Standard-Dashboard importieren (oder Ihr eigenes mit den von ihm bereitgestellten Metriken erstellen, wenn Sie mit diesem Prozess vertraut sind).
Beginnen Sie, indem Sie zum Menü Create (das Plus-Symbol in der rechten Seitenleiste) gehen und auf Import klicken:
Wenn Sie nach der Dashboard-ID im Feld Import via grafana.com gefragt werden, geben Sie 21863 ein oder verwenden Sie die vollständige URL ((https://grafana.com/grafana/dashboards/24900-rocket-pool-dashboard-v1-4-0/) und klicken Sie auf die Schaltfläche Load.
Sie werden hier mit einigen Informationen über das Dashboard aufgefordert, wie seinem Namen und wo Sie es speichern möchten (der Standard-General-Ordner ist in Ordnung, es sei denn, Sie verwenden viele Dashboards und möchten sie organisieren).
Unter dem Dropdown-Menü Prometheus unten sollten Sie nur eine Option mit der Bezeichnung Prometheus (default) haben. Wählen Sie diese Option.
Ihr Bildschirm sollte so aussehen:
Wenn Ihrer übereinstimmt, klicken Sie auf die Schaltfläche Import und Sie werden sofort zu Ihrem neuen Dashboard geleitet.
Auf den ersten Blick sollten Sie viele Informationen über Ihren Node und Ihre Validatoren sehen.
Jede Box kommt mit einem praktischen Tooltip in der oberen linken Ecke (das i-Symbol), über das Sie mehr darüber erfahren können.
Hier ist zum Beispiel der Tooltip für die Box Your Validator Share:
Wir sind jedoch noch nicht fertig mit der Einrichtung - es gibt noch ein wenig mehr Konfiguration zu tun.
Einige der Boxen (insbesondere die APR-Boxen) wurden vorübergehend deaktiviert aufgrund der Art und Weise, wie Shapella abgeschöpfte Belohnungen bereitstellt.
Sie werden in einer zukünftigen Version der Smartnode, die historische Belohnungen ordnungsgemäß verfolgen kann, wieder aktiviert.
Anpassen des Hardware-Monitors an Ihr System
Jetzt, da das Dashboard hochgefahren ist, bemerken Sie möglicherweise, dass einige Boxen leer sind, wie SSD Latency und Network Usage. Wir müssen das Dashboard an Ihre spezifische Hardware anpassen, damit es weiß, wie diese Dinge erfasst werden.
CPU Temp
Um Ihr CPU-Temperatur-Messgerät zu aktualisieren, klicken Sie auf den Titel der Box CPU Temp und wählen Sie Edit aus dem Dropdown-Menü. Ihr Bildschirm sieht nun ungefähr so aus:
Dies ist der Bearbeitungsmodus von Grafana, in dem Sie ändern können, was angezeigt wird und wie es aussieht. Wir interessieren uns für das rot hervorgehobene Abfragefeld rechts von der Schaltfläche Metrics browser.
Standardmäßig steht in diesem Feld Folgendes:
Es gibt zwei Felder in diesem Text, die derzeit leer sind: chip und sensor.
Diese sind für jede Maschine einzigartig, daher müssen Sie sie basierend darauf ausfüllen, was Ihre Maschine bereitstellt.
Folgen Sie dazu diesen Schritten:
- Entfernen Sie den Teil
, sensor="", sodass er mitchip=""}endet. Zur Klarheit sollte das Ganze jetztnode_hwmon_temp_celsius{job="node", chip=""}sein. - Setzen Sie Ihren Cursor zwischen die Anführungszeichen von
chip=""und drücken SieStrg+Leertaste. Dies öffnet ein Autovervollständigungsfeld mit den verfügbaren Optionen, das so aussieht:
- Wählen Sie die Option aus, die der CPU Ihres Systems entspricht.
- Sobald diese ausgewählt ist, fügen Sie
, sensor=""wieder in die Zeichenfolge ein. Setzen Sie Ihren Cursor zwischen die Anführungszeichen vonsensor=""und drücken SieStrg+Leertaste, um ein weiteres Autovervollständigungsmenü zu erhalten. Wählen Sie den Sensor aus, den Sie überwachen möchten.
Wenn Sie nicht wissen, welcher chip oder sensor korrekt ist, müssen Sie alle ausprobieren, bis Sie denjenigen finden, der richtig aussieht. Um dabei zu helfen, installieren Sie das lm-sensors-Paket (zum Beispiel sudo apt install lm-sensors auf Debian / Ubuntu) und führen Sie den Befehl sensors -u aus, um zu sehen, welche Sensoren Ihr Computer hat. Sie können versuchen, eine Chip-ID aus Grafanas Liste mit dem, was Sie hier sehen, basierend auf ihren Namen und IDs zu korrelieren.
Zum Beispiel ist dies eine der Ausgaben unseres sensors -u-Befehls:
In unserem Fall ist der entsprechende Chip in Grafana pci0000:00_0000:00:18_3 und der entsprechende Sensor ist temp1.
Sobald Sie mit Ihren Auswahlen zufrieden sind, klicken Sie auf die blaue Schaltfläche Apply in der oberen rechten Ecke des Bildschirms, um die Einstellungen zu speichern.
Nicht alle Systeme stellen CPU-Temperaturinformationen zur Verfügung - insbesondere virtuelle Maschinen oder cloudbasierte Systeme.
Wenn Ihres nichts im Autovervollständigungsfeld für chip hat, ist dies wahrscheinlich der Fall und Sie können Ihre CPU-Temperatur nicht überwachen.
SSD Latency
Das Diagramm SSD Latency verfolgt, wie lange Lese-/Schreibvorgänge dauern. Dies ist hilfreich, um zu messen, wie schnell Ihre SSD ist, damit Sie wissen, ob sie zu einem Engpass wird, wenn Ihr Validator unter schlechter Leistung leidet. Um die SSD zu aktualisieren, die Sie im Diagramm verfolgen möchten, klicken Sie auf den Titel SSD Latency und wählen Sie Edit.
Dieses Diagramm hat vier Abfragefelder (vier Textfelder) mit insgesamt acht device=""-Teilen.
Sie müssen die ersten vier dieser Teile mit dem Gerät aktualisieren, das Sie verfolgen möchten.
Setzen Sie einfach Ihren Cursor zwischen die Anführungszeichen und drücken Sie Strg+Leertaste, um Grafanas Autovervollständigungsliste zu erhalten, und wählen Sie die richtige Option für jeden der device=""-Teile aus.
Sie möchten von der am weitesten links liegenden leeren Einstellung aus beginnen, oder die Autovervollständigungsliste erscheint möglicherweise nicht.
Wenn Sie nicht wissen, welches Gerät Sie verfolgen sollen, führen Sie den folgenden Befehl aus:
Dies gibt einen Baum aus, der Ihre Geräte- und Partitionsliste zeigt, zum Beispiel:
Wenn Sie Dockers Standardspeicherort während Ihrer Smartnode-Installation nicht auf ein anderes Laufwerk geändert haben, ist das Laufwerk, das Sie verfolgen möchten, dasjenige, auf dem Ihr Betriebssystem installiert ist.
Suchen Sie in der Spalte MOUNTPOINT nach einem Eintrag mit der einfachen Bezeichnung /, und folgen Sie diesem zurück zu seinem übergeordneten Gerät (dasjenige mit disk in der Spalte TYPE).
Normalerweise ist dies sda für SATA-Laufwerke oder nvme0n1 für NVMe-Laufwerke.
Wenn Sie Dockers Standardspeicherort auf ein anderes Laufwerk geändert haben oder wenn Sie ein Hybrid-/Native-Setup ausführen, sollten Sie die gleiche Technik des "Folgens des Mount-Points" verwenden können, um zu bestimmen, auf welchem Gerät sich Ihre Chain-Daten befinden.
Optional können Sie auch die Latenz eines zweiten Laufwerks auf Ihrem System verfolgen.
Dies richtet sich an Personen, die ihr Betriebssystem und ihre Chain-Daten auf separaten Laufwerken aufbewahren.
Um dies einzurichten, folgen Sie einfach den obigen Anweisungen für die letzten beiden Abfragefelder und ersetzen die Werte des device=""-Teils durch die des Laufwerks, das Sie verfolgen möchten.
Sobald Sie mit Ihren Auswahlen zufrieden sind, klicken Sie auf die blaue Schaltfläche Apply in der oberen rechten Ecke des Bildschirms, um die Einstellungen zu speichern.
Network Usage
Dieses Diagramm verfolgt, wie viele Daten Sie über eine bestimmte Netzwerkverbindung senden und empfangen. Wie Sie vielleicht erwarten, muss das Dashboard wissen, welches Netzwerk es verfolgen soll.
Um es zu ändern, klicken Sie auf den Titel Network Usage und wählen Sie Edit.
Dieses Diagramm hat zwei Abfragefelder mit insgesamt zwei device=""-Teilen.
Sie müssen diese mit dem Netzwerk aktualisieren, das Sie verfolgen möchten.
Setzen Sie Ihren Cursor zwischen die Anführungszeichen und drücken Sie Strg+Leertaste, um Grafanas Autovervollständigungsliste zu erhalten, und wählen Sie die richtige Option für jeden der device=""-Teile aus.
Wenn Sie nicht wissen, welches Gerät Sie verfolgen sollen, führen Sie den folgenden Befehl aus:
Die Ausgabe sieht ungefähr so aus:
Schauen Sie in der Spalte Destination nach der Zeile mit dem Wert default.
Folgen Sie dieser Zeile bis zur Spalte Iface.
Das dort aufgeführte Gerät ist dasjenige, das Sie verwenden möchten - in diesem Beispiel eth0.
Sobald Sie mit Ihren Auswahlen zufrieden sind, klicken Sie auf die blaue Schaltfläche Apply in der oberen rechten Ecke des Bildschirms, um die Einstellungen zu speichern.
Total Net I/O
Dies verfolgt die Gesamtmenge der gesendeten und empfangenen Daten. Sie könnten es nützlich finden zu beobachten, wenn beispielsweise Ihr ISP Sie auf eine bestimmte Datenmenge pro Monat beschränkt.
Die Einrichtung ist identisch mit der Box Network Usage oben, folgen Sie also einfach diesen Anweisungen auch für diese Box.
Disk Space Used
Dies überwacht, wie voll Ihr Betriebssystem-Laufwerk wird, damit Sie wissen, wann es Zeit zum Aufräumen ist (und wenn Ihre Chain-Daten auf demselben Laufwerk liegen, Zeit zum Bereinigen von Geth oder Nethermind).
Die Schritte sind die gleichen wie bei der Box SSD Latency oben, folgen Sie also einfach diesen Anweisungen auch für diese Box.
Zur Erinnerung, Sie möchten das Laufwerk, das die Partition beherbergt, die / in der Spalte MOUNTPOINT hat, für diese, da das Ihr Betriebssystem-Laufwerk sein wird.
Füllen Sie dies in das erste Abfragefeld ein.
Optional können Sie auch den freien Speicherplatz eines zweiten Laufwerks auf Ihrem System verfolgen.
Dies richtet sich an Personen, die ihr Betriebssystem und ihre Chain-Daten auf separaten Laufwerken aufbewahren.
Richten Sie dies ein, indem Sie demselben Prozess folgen, aber anstatt zu schauen, welche Partition / in der Spalte MOUNTPOINT hat, möchten Sie nach derjenigen suchen, die den Mount-Point Ihres zweiten Laufwerks hat.
Aktualisieren Sie das zweite Abfragefeld mit dem Laufwerk, das mit dieser Partition verbunden ist.
Disk Temp
Dies verfolgt die aktuelle Temperatur Ihres Betriebssystem-Laufwerks. Die Schritte sind die gleichen wie bei der Box CPU Temp oben, folgen Sie also einfach diesen Anweisungen auch für diese Box und ersetzen CPU-Chip- und Sensorwerte durch die Ihres Betriebssystem-Laufwerks. Füllen Sie diese Werte in das erste Abfragefeld ein.
Optional können Sie auch die aktuelle Temperatur eines zweiten Laufwerks auf Ihrem System verfolgen. Richten Sie dies ein, indem Sie demselben Prozess folgen und die Chip- und Sensorwerte durch die Ihres zweiten Laufwerks ersetzen. Füllen Sie diese Werte in das zweite Abfragefeld ein.
Anpassen des Dashboards
Während das Standard-Dashboard versucht, alles, was Sie auf einen Blick sehen möchten, gut zu erfassen, ist es ziemlich einfach, ein Grafana-Dashboard nach Belieben anzupassen. Sie können neue Diagramme hinzufügen, die Art und Weise ändern, wie Diagramme aussehen, Dinge verschieben und vieles mehr!
Werfen Sie einen Blick auf Grafanas Tutorials Seite, um zu lernen, wie Sie damit spielen und es nach Ihren Wünschen einrichten können.
Anpassen des Metrics Stack
Die im Rocket Pool Metrics Stack verwendeten Tools bieten eine Vielzahl von Konfigurationsoptionen, die über das hinausgehen, was in der Standard-Rocket Pool Installation enthalten ist. Dieser Abschnitt enthält Konfigurationsbeispiele für verschiedene Anwendungsfälle.
Im Allgemeinen sollten Grafana-Konfigurationsoptionen über Umgebungsvariablen in override/grafana.yml übergeben werden. Jede Konfigurationsoption kann mit der folgenden Syntax in eine Umgebungsvariable umgewandelt werden:
Grafana SMTP-Einstellungen zum Senden von E-Mails
Um E-Mails von Grafana zu senden, z.B. für Benachrichtigungen oder um andere Benutzer einzuladen, müssen SMTP-Einstellungen im Rocket Pool Metrics Stack konfiguriert werden. Siehe die Grafana SMTP-Konfiguration Seite als Referenz.
Öffnen Sie ~/.rocketpool/override/grafana.yml in einem Texteditor.
Fügen Sie einen environment-Abschnitt unter der Zeile x-rp-comment: Add your customizations below this line hinzu und ersetzen Sie die untenstehenden Werte durch die Ihres SMTP-Anbieters.
Wenn Sie Gmail verwenden und 2-Schritt-Verifizierung aktiviert ist, erstellen Sie ein App-Passwort für diesen Dienst.
Nach diesen Änderungen führen Sie Folgendes aus, um die Änderungen anzuwenden:
Um die SMTP-Einstellungen zu testen, gehen Sie zum Menü Alerting und klicken Sie auf Contact points.
Klicken Sie auf New contact point und wählen Sie Email als Contact point type. Geben Sie eine E-Mail-Adresse im Abschnitt Addresses ein und klicken Sie auf Test.
Überprüfen Sie, ob die Test-E-Mail empfangen wurde. Klicken Sie auf Save contact point*, wenn Sie fertig sind.