Monitorowanie Geth za pomocą InfluxDB i Grafana
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
- Powinieneś już mieć uruchomioną instancję Geth.
- Większość kroków i przykładów dotyczy środowiska Linux, pomocna będzie podstawowa znajomość terminala.
- Obejrzyj ten przegląd wideo zestawu metryk Geth: Monitorowanie infrastruktury Ethereum autorstwa Pétera Szilágyiego (opens in a new tab).
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:
- Prometheus (opens in a new tab) (model pull)
- InfluxDB (opens in a new tab) (model push)
- Telegraf (opens in a new tab)
- Grafana (opens in a new tab)
- Datadog (opens in a new tab)
- Chronograf (opens in a new tab)
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 add2source /etc/lsb-release3echo "deb https://repos.influxdata.com/${DISTRIB_ID,,} ${DISTRIB_CODENAME} stable" | sudo tee /etc/apt/sources.list.d/influxdb.list4sudo apt update5sudo apt install influxdb -y6sudo systemctl enable influxdb7sudo systemctl start influxdb8sudo apt install influxdb-clientPo 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 geth2create user geth with password choosepasswordZweryfikuj utworzone wpisy za pomocą:
1show databases2show usersWyjdź z powłoki InfluxDB.
1exitInfluxDB 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 geth2show measurementsKonfiguracja 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.list3sudo apt update4sudo apt install grafana5sudo systemctl enable grafana-server6sudo systemctl start grafana-serverGdy 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.
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”.
Nie ma jeszcze utworzonych żadnych źródeł danych, kliknij „Dodaj źródło danych”, aby zdefiniować jedno.
W tej konfiguracji wybierz „InfluxDB” i kontynuuj.
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.
Jeśli wszystko jest gotowe, a InfluxDB jest osiągalny, kliknij „Zapisz i przetestuj” i poczekaj na pojawienie się potwierdzenia.
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”.
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:
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







