Przejdź do głównej zawartości

Monitorowanie Geth za pomocą InfluxDB i Grafana

klienci
węzły
Średnio zaawansowany
Mario Havel
13 stycznia 2021
5 minuta czytania

Ten samouczek pomoże Ci skonfigurować monitorowanie węzła Geth, abyś mógł lepiej zrozumieć jego wydajność i zidentyfikować potencjalne problemy.

Wymagania wstępne

Stos monitorowania

Klient Ethereum zbiera wiele danych, które można odczytać w formie chronologicznej bazy danych. Aby ułatwić monitorowanie, możesz wprowadzić te dane do oprogramowania do wizualizacji danych. Dostępnych jest wiele opcji:

Istnieje również Geth Prometheus Exporter (opens in a new tab), opcja wstępnie skonfigurowana z InfluxDB i Grafana.

W tym samouczku skonfigurujemy Twojego klienta Geth tak, aby przesyłał dane do InfluxDB w celu utworzenia bazy danych, a Grafana posłuży do stworzenia wizualizacji graficznej tych danych. Ręczne wykonanie tych czynności pomoże Ci lepiej zrozumieć proces, modyfikować go i wdrażać w różnych środowiskach.

Konfiguracja InfluxDB

Najpierw pobierzmy i zainstalujmy InfluxDB. Różne opcje pobierania można znaleźć na stronie wydań Influxdata (opens in a new tab). Wybierz tę, która pasuje do Twojego środowiska. Możesz również zainstalować go z repozytorium (opens in a new tab). Na przykład w dystrybucji opartej na Debianie:

1curl -tlsv1.3 --proto =https -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add
2source /etc/lsb-release
3echo "deb https://repos.influxdata.com/${DISTRIB_ID,,} ${DISTRIB_CODENAME} stable" | sudo tee /etc/apt/sources.list.d/influxdb.list
4sudo apt update
5sudo apt install influxdb -y
6sudo systemctl enable influxdb
7sudo systemctl start influxdb
8sudo apt install influxdb-client

Po pomyślnej instalacji InfluxDB upewnij się, że działa on w tle. Domyślnie jest on dostępny pod adresem localhost:8086. Przed użyciem klienta influx musisz utworzyć nowego użytkownika z uprawnieniami administratora. Ten użytkownik będzie służył do zarządzania na wysokim poziomie, tworzenia baz danych i użytkowników.

1curl -XPOST "http://localhost:8086/query" --data-urlencode "q=CREATE USER username WITH PASSWORD 'password' WITH ALL PRIVILEGES"

Teraz możesz użyć klienta influx, aby wejść do powłoki InfluxDB (opens in a new tab) z tym użytkownikiem.

1influx -username 'username' -password 'password'

Komunikując się bezpośrednio z InfluxDB w jego powłoce, możesz utworzyć bazę danych i użytkownika dla metryk Geth.

1create database geth
2create user geth with password choosepassword

Zweryfikuj utworzone wpisy za pomocą:

1show databases
2show users

Wyjdź z powłoki InfluxDB.

1exit

InfluxDB jest uruchomiony i skonfigurowany do przechowywania metryk z Geth.

Przygotowanie Geth

Po skonfigurowaniu bazy danych musimy włączyć zbieranie metryk w Geth. Zwróć uwagę na METRICS AND STATS OPTIONS w geth --help. Można tam znaleźć wiele opcji, w tym przypadku chcemy, aby Geth przesyłał dane do InfluxDB. Podstawowa konfiguracja określa punkt końcowy, pod którym InfluxDB jest osiągalny, oraz uwierzytelnianie dla bazy danych.

1geth --metrics --metrics.influxdb --metrics.influxdb.endpoint "http://0.0.0.0:8086" --metrics.influxdb.username "geth" --metrics.influxdb.password "chosenpassword"

Te flagi można dołączyć do polecenia uruchamiającego klienta lub zapisać w pliku konfiguracyjnym.

Możesz zweryfikować, czy Geth pomyślnie przesyła dane, na przykład wyświetlając listę metryk w bazie danych. W powłoce InfluxDB:

1use geth
2show measurements

Konfiguracja Grafany

Następnym krokiem jest instalacja Grafany, która zinterpretuje dane graficznie. Postępuj zgodnie z procesem instalacji dla swojego środowiska w dokumentacji Grafany. Upewnij się, że instalujesz wersję OSS, jeśli nie chcesz inaczej. Przykładowe kroki instalacji dla dystrybucji Debian przy użyciu repozytorium:

1curl -tlsv1.3 --proto =https -sL https://packages.grafana.com/gpg.key | sudo apt-key add -
2echo "deb https://packages.grafana.com/oss/deb stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list
3sudo apt update
4sudo apt install grafana
5sudo systemctl enable grafana-server
6sudo systemctl start grafana-server

Gdy Grafana jest uruchomiona, powinna być dostępna pod adresem localhost:3000. Użyj preferowanej przeglądarki, aby uzyskać dostęp do tej ścieżki, a następnie zaloguj się przy użyciu domyślnych poświadczeń (użytkownik: admin i hasło: admin). Gdy pojawi się monit, zmień domyślne hasło i zapisz.

Zrzut ekranu panelu Grafana do monitorowania Geth (panel 1)

Zostaniesz przekierowany na stronę główną Grafany. Najpierw skonfiguruj dane źródłowe. Kliknij ikonę konfiguracji na lewym pasku i wybierz „Źródła danych”.

Zrzut ekranu panelu Grafana do monitorowania Geth (panel 2)

Nie ma jeszcze utworzonych żadnych źródeł danych, kliknij „Dodaj źródło danych”, aby zdefiniować jedno.

Zrzut ekranu dashboardu Grafana do monitorowania Geth (panel 3)

W tej konfiguracji wybierz „InfluxDB” i kontynuuj.

Zrzut ekranu dashboardu Grafana do monitorowania Geth (panel 4)

Konfiguracja źródła danych jest dość prosta, jeśli uruchamiasz narzędzia na tej samej maszynie. Musisz ustawić adres InfluxDB i szczegóły dostępu do bazy danych. Zapoznaj się z poniższym obrazkiem.

Zrzut ekranu dashboardu Grafana do monitorowania Geth (panel 5)

Jeśli wszystko jest gotowe, a InfluxDB jest osiągalny, kliknij „Zapisz i przetestuj” i poczekaj na pojawienie się potwierdzenia.

Zrzut ekranu dashboardu Grafana do monitorowania Geth (panel 6)

Grafana jest teraz skonfigurowana do odczytu danych z InfluxDB. Teraz musisz utworzyć pulpit nawigacyjny, który będzie go interpretował i wyświetlał. Właściwości pulpitów nawigacyjnych są zakodowane w plikach JSON, które mogą być tworzone przez każdego i łatwo importowane. Na lewym pasku kliknij „Utwórz i importuj”.

Zrzut ekranu dashboardu Grafana do monitorowania Geth (panel 7)

W przypadku pulpitu nawigacyjnego do monitorowania Geth skopiuj identyfikator tego pulpitu (opens in a new tab) i wklej go na stronie „Importuj” w Grafanie. Po zapisaniu pulpitu nawigacyjnego powinien on wyglądać tak:

Zrzut ekranu dashboardu Grafana do monitorowania Geth (panel 8)

Możesz modyfikować swoje pulpity nawigacyjne. Każdy panel można edytować, przesuwać, usuwać lub dodawać. Możesz zmieniać swoje konfiguracje. To zależy od Ciebie! Aby dowiedzieć się więcej o działaniu pulpitów nawigacyjnych, zapoznaj się z dokumentacją Grafany (opens in a new tab). Może Cię również zainteresować Alerting (opens in a new tab). Umożliwia to skonfigurowanie powiadomień o alertach, gdy metryki osiągną określone wartości. Obsługiwane są różne kanały komunikacji.

Strona ostatnio zaktualizowana: 26 lutego 2026

Czy ten samouczek był pomocny?