Узел валидатора
Эта страница переведена сообществом на русский язык, но нуждается в улучшениях. Если вы хотите принять участие в переводе свяжитесь с @alexgton.
Минимальные требования к оборудованию
- 16-ядерный процессор
- 128 ГБ оперативной памяти
- Твердотельный накопитель объемом 1 ТБ или Оборудованное хранилище с более 64 000 операций ввода/вывода в секунду (IOPS)
- Подключение к сети со скоростью 1 Гбит/с
- общедоступный IP-адрес (фиксированный IP-адрес)
- 100 ТБ/месяц трафика при пиковой нагрузке
Как правило, для обеспечения надежной работы с пиковыми нагрузками вам потребуется подключение со скоростью не менее 1 Гбит/с (средняя нагрузка, как ожидается, составит около 100 Мбит/с).
Мы обращаем особое внимание валидаторов на требования к IOPS диска, это критически важно для бесперебойной работы сети.
Переадресация портов
Для всех типов узлов требуется статический внешний IP-адрес, один UDP-порт, который должен быть перенаправлен для входящих подключений и все исходящие подключения должны быть открыты - узел использует случайные порты для новых исходящих подключений. Это необходимо, чтобы узел был виден извне через NAT.
Это можно сделать через вашего провайдера услуг связи или аренду сервера.
Используйте команду netstat -tulpn
, чтобы определить, какой UDP-порт открыт.
Обязательное условие
Изучите политику штрафов
Если валидатор обработал менее 90% ожидаемого количества блоков во время раунда валидации, этот валидатор будет оштрафован на 101 TON. Узнайте больше о политике штрафов.
Запустите полный узел
Запустите полный узел перед выполнением этого руководства.
Проверьте, что режим валидатора включен с помощью команды status_modes
. Если это не так, выполните команду mytonctrl enable_mode.
Архитектура
Просмотрите список кошельков
Список доступных кошельков можно посмотреть в консоли MyTonCtrl с помощью команды wl
:
wl
Во время установки mytonctrl создается кошелек validator_wallet_001:
Активация кошельков
-
Отправьте необходимое количество монет в кошелек и активируйте его.
В последнее время (на конец 2023 года) приблизительные цифры были такими: минимальный стейк составлял около 340 тыс. TON и максимальный - около 1 млн. TON.
Для понимания нужного количества монет проверьте текущий стейк на tonscan.com.
Узнайте больше о том, [как рассчитываются максимальный и минимальный стейки] (/v3/documentation/infra/nodes/validation/staking-incentives#values-of-stakes-max-effective-stake).
-
Используйте команду
vas
для отображения истории переводов:vas [wallet name]
-
Активируйте кошелек с помощью команды
aw
(имя кошелька необязательно, если аргументы не указаны, то будут активированы все доступные)aw [wallet name]
Теперь ваш валидатор готов
mytoncore автоматически участвует в выборах. Он делит баланс кошелька на две части и использует их как стейк для участия в выборах. Вы также можете вручную установить размер стейка:
set stake 50000
set stake 50000
- это устанавливает размер стейка в 50 тысяч монет. Если ставка принята и наш узел становится валидатором, ставку можно вывести только во вторых выборах (в соответствии с правилами избирательного комитета).
Следуйте рекомендациям
Узнайте подробнее о политике штрафов.
Как валидаторы TON, убедитесь, что вы следуете этим ключевым шагам для обеспечения стабильности сети и избежания штрафов в будущем.
Ключевые действия:
- Следуйте уведомлениям @tonstatus, и готовьтесь к немедленным обновлениям при необходимости.
- Убедитесь, что ваше оборудование соответствует или превышает [минимальные системные требования] (/v3/guidelines/nodes/running-nodes/validator-node#minimal-hardware-requirements).
- Мы настоятельно просим вас использовать mytonctrl.
- Обновляйте
mytonctrl
в соответствии с уведомлениями и включите телеметрию:set sendTelemetry true
- Обновляйте
- Настройте панели мониторинга использования оперативной памяти, дисков, сети и процессора. Для технической помощи свяжитесь с @mytonctrl_help_bot.
- Отслеживайте эффективность вашего валидатора с помощью панелей мониторинга.
- Проверьте эффективность
mytonctrl
с помощью командыcheck_ef
. - Создайте панель мониторинга с помощью API.
- Проверьте эффективность
mytonctrl
позволяет проверить эффективность валидаторов с помощью команды check_ef
, которая выводит данные о вашей эффективности валидатора за последний и текущий период.
Эта команда получает данные, вызывая утилиту checkloadall
.
Убедитесь, что ваша эффективность превышает 90% (за весь период полного цикла).
В случае низкой эффективности - принимайте меры для решения проблемы. Если это необходимо, свяжитесь с технической поддержкой @mytonctrl_help_bot.
API-интерфейсы валидации и эффективности
Пожалуйста, настройте информационные панели для мониторинга ваших валидаторов с помощью этих API.
Отслеживание валидаторов, подвергшихся штрафам
Вы можете отслеживать валидаторов, подвергшихся штрафам, в каждом раунде с помощью @tonstatus_notifications.
API для валидации
https://elections.toncenter.com/docs - используйте этот API для получения информации о текущих и прошлых раундах (циклах) валидации - время раундов, какие валидаторы участвовали в них, их ставки и т.д.
Также доступна информация о текущих и прошедших выборах (для раунда валидации).
API для эффективности
https://toncenter.com/api/qos/index.html#/ - используйте этот API для получения информации об эффективности валидаторов с течением времени.
Этот API анализирует информацию, полученную из catchain, и строит оценку эффективности валидатора. Этот API не использует утилиту checkloadall, но является ее альтернативой.
В отличие от checkloadall
, который работает только в циклах валидации, в этом API вы можете установить любой временной интервал для анализа эффективности валидатора.
Рабочий процесс:
-
Передайте ADNL адрес вашего валидатора и временной интервал (
from_ts
,to_ts
) в API. Для точного результата полезно выбирать достаточно большой интервал, например, с 18 часов назад до текущего момента. -
Извлеките результат. Если в вашем поле процент эффективности меньше 80%, ваш валидатор работает неправильно.
-
Важно, чтобы ваш валидатор участвовал в валидации и имел один и тот же ADNL адрес на весь указанный период времени.
Например, если валидатор участвует в валидации каждый второй раунд - тогда вам нужно указывать только те интервалы, когда он участвовал в валидации. В противном случае вы получите неверное значение.
Это работает не только для валидаторов Masterchain (с индексом < 100), но и для других валидаторов (с индексом > 100).
Поддержка
Свяжитесь с технической поддержкой @mytonctrl_help_bot. Этот бот предназначен только для валидаторов и не будет помогать с вопросами для обычных узлов.
Если у вас обычный узел, обратитесь в группу: @mytonctrl_help.