Перейти до основного контенту

Моніторинг Geth за допомогою InfluxDB і Grafana

клієнти
вузли
Середнячок
Mario Havel
13 січня 2021 р.
5 читається за хвилину

Цей посібник допоможе вам налаштувати моніторинг для вашого вузла Geth, щоб краще зрозуміти його продуктивність та визначити потенційні проблеми.

Передумови

Стек моніторингу

Клієнт Ethereum збирає багато даних, які можна прочитати у вигляді хронологічної бази даних. Щоб спростити моніторинг, ви можете передати ці дані в програмне забезпечення для візуалізації. Існує декілька доступних варіантів:

Також існує Geth Prometheus Exporter (opens in a new tab) — варіант, попередньо налаштований для роботи з InfluxDB і Grafana.

У цьому посібнику ми налаштуємо ваш клієнт Geth для передавання даних в InfluxDB для створення бази даних і в Grafana для створення графічної візуалізації цих даних. Виконання цих кроків вручну допоможе вам краще зрозуміти процес, змінювати його та розгортати в різних середовищах.

Налаштування InfluxDB

Спочатку давайте завантажимо та встановимо InfluxDB. Різні варіанти завантаження можна знайти на сторінці випусків Influxdata (opens in a new tab). Виберіть той, що підходить для вашого середовища. Ви також можете встановити його з репозиторію (opens in a new tab). Наприклад, у дистрибутиві на основі Debian:

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

Після успішного встановлення InfluxDB переконайтеся, що він працює у фоновому режимі. За замовчуванням він доступний за адресою localhost:8086. Перш ніж використовувати клієнт influx, ви повинні створити нового користувача з правами адміністратора. Цей користувач буде слугувати для управління вищого рівня, створення баз даних і користувачів.

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

Тепер за допомогою цього користувача ви можете увійти в оболонку InfluxDB (opens in a new tab), використовуючи клієнт influx.

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

Безпосередньо взаємодіючи з InfluxDB в його оболонці, ви можете створити базу даних і користувача для метрик Geth.

1create database geth
2create user geth with password choosepassword

Перевірте створені записи за допомогою:

1show databases
2show users

Вийдіть з оболонки InfluxDB.

1exit

InfluxDB працює і налаштований для зберігання метрик з Geth.

Підготовка Geth

Після налаштування бази даних, нам потрібно увімкнути збір метрик в Geth. Зверніть увагу на METRICS AND STATS OPTIONS в geth --help. Там можна знайти декілька варіантів. У нашому випадку нам потрібно, щоб Geth передавав дані в InfluxDB. Базове налаштування визначає кінцеву точку, за якою доступний InfluxDB, та дані для автентифікації в базі даних.

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

Ці прапори можна додати до команди запуску клієнта або зберегти у файлі конфігурації.

Ви можете перевірити, що Geth успішно передає дані, наприклад, переглянувши список метрик у базі даних. В оболонці InfluxDB:

1use geth
2show measurements

Налаштування Grafana

Наступний крок — встановлення Grafana, яка буде інтерпретувати дані графічно. Дотримуйтесь інструкцій зі встановлення для вашого середовища в документації Grafana. Переконайтеся, що ви встановили версію OSS, якщо не хочете іншу. Приклад кроків встановлення для дистрибутивів Debian з використанням репозиторію:

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

Коли Grafana буде запущено, програма має бути доступна за адресою localhost:3000. Відкрийте цю адресу у бажаному браузері, а потім увійдіть, використовуючи облікові дані за замовчуванням (користувач: admin, пароль: admin). Коли надійде запит, змініть пароль за замовчуванням та збережіть.

Знімок панелі інструментів Grafana для моніторингу Geth (панель 1)

Вас буде перенаправлено на головну сторінку Grafana. Спочатку налаштуйте вихідні дані. Натисніть значок конфігурації на панелі ліворуч і виберіть "Джерела даних".

Знімок панелі інструментів Grafana для моніторингу Geth (панель 2)

Джерел даних ще не створено; натисніть "Додати джерело даних", щоб його визначити.

Знімок панелі інструментів Grafana для моніторингу Geth (панель 3)

Для цього налаштування виберіть "InfluxDB" і продовжуйте.

Знімок панелі інструментів Grafana для моніторингу Geth (панель 4)

Налаштування джерела даних є досить простим, якщо ви запускаєте інструменти на тому ж комп'ютері. Вам потрібно вказати адресу InfluxDB та дані для доступу до бази даних. Дивіться зображення нижче.

Знімок панелі інструментів Grafana для моніторингу Geth (панель 5)

Якщо все заповнено правильно й InfluxDB доступний, натисніть "Зберегти та перевірити" і дочекайтеся спливаючого вікна з підтвердженням.

Знімок панелі інструментів Grafana для моніторингу Geth (панель 6)

Тепер Grafana налаштовано для читання даних з InfluxDB. Тепер вам потрібно створити інформаційну панель, яка буде інтерпретувати та відображати ці дані. Властивості інформаційних панелей закодовані у файлах JSON, які може створити будь-хто, і їх можна легко імпортувати. На панелі ліворуч натисніть "Створити та імпортувати".

Знімок панелі інструментів Grafana для моніторингу Geth (панель 7)

Для інформаційної панелі моніторингу Geth скопіюйте ID цієї панелі (opens in a new tab) і вставте його на "Сторінці імпорту" в Grafana. Після збереження інформаційна панель повинна мати такий вигляд:

Знімок панелі інструментів Grafana для моніторингу Geth (панель 8)

Ви можете змінювати свої інформаційні панелі. Кожну панель можна редагувати, переміщувати, видаляти або додавати. Ви можете змінювати свої конфігурації. Усе залежить від вас! Щоб дізнатися більше про те, як працюють інформаційні панелі, зверніться до документації Grafana (opens in a new tab). Вас також може зацікавити розділ Сповіщення (opens in a new tab). Це дає змогу налаштувати сповіщення, які спрацьовуватимуть, коли метрики досягають певних значень. Підтримуються різні канали зв'язку.

Останні оновлення сторінки: 26 лютого 2026 р.

Чи була ця інструкція корисною?