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

Полный узел

warning

Эта страница переведена сообществом на русский язык, но нуждается в улучшениях. Если вы хотите принять участие в переводе свяжитесь с @alexgton.

Требования к ОС

Мы настоятельно рекомендуем установить mytonctrl с использованием поддерживаемых операционных систем:

  • Ubuntu 20.04
  • Ubuntu 22.04
  • Debian 11

Требования к аппаратному обеспечению

Использование узла на персональном локальном компьютере

Не следует запускать какой-либо тип узла на вашем персональном локальном компьютере в течение длительного времени, даже если он удовлетворяет требованиям. Узлы активно используют диски и могут быстро их повредить.

С валидатором

  • 16-ядерный процессор
  • 128 ГБ оперативной памяти
  • Твердотельный накопитель объемом 1 ТБ или Оборудованное хранилище с более 64 000 операций ввода/вывода в секунду (IOPS)
  • Подключение к сети со скоростью 1 Гбит/с
  • Общедоступный IP-адрес (фиксированный IP-адрес)
  • Трафик 64 ТБ/месяц (100 ТБ/месяц при пиковой нагрузке)
Будьте готовы к пиковым нагрузкам

Как правило, для обеспечения надежной работы с пиковыми нагрузками вам потребуется подключение со скоростью не менее 1 Гбит/с (средняя нагрузка, как ожидается, составит около 100 Мбит/с).

Переадресация портов

Все типы узлов требуют статического внешнего IP-адреса, один UDP-порт для проброса входящих соединений и все исходящие соединения должны быть открыты - узел использует случайные порты для новых исходящих соединений. Необходимо, чтобы узел был виден извне через NAT.

Это можно сделать с помощью вашего сетевого провайдера или арендовав сервер для запуска узла.

к сведению

Вы можете определить открытый UDP-порт с помощью команды netstat -tulpn.

Рекомендованные провайдеры

TON Foundation рекомендует следующих провайдеров для запуска валидатора:

Облачный провайдерТип экземпляраCPURAMХранилищеСетьОбщедоступный IPТрафик
GCPn2-standard-1632 vCPUs128 ГБ1 ТБ NVMe SSD16 Гбит/сЗарезервируйте статический внешний IP64 ТБ/месяц.
Alibaba Cloudecs.g6.4xlarge32 vCPUs128 ГБ1 ТБ NVMe SSDДо 10 Гбит/сВыделенный Elastic IP64 ТБ/месяц.
Tencent CloudM5.4XLARGE32 vCPUs128 ГБ1 ТБ NVMe SSDДо 10 Гбит/сДоступ к Elastic IP64 ТБ/месяц.
Vultrbare metal Intel E-2388G16 ядер / 32 потока128 ГБ1,92 ТБ NVMe SSD10 Гбит/сФиксированный IP-адрес, включенный в экземпляр64 ТБ/месяц.
DigitalOceangeneral purpose premium Intel32 vCPUs128 ГБ1 ТБ NVMe SSD10 Гбит/сФиксированный IP-адрес, включенный в экземпляр64 ТБ/месяц.
Latitudec3.medium.x8616 ядер / 32 потока128 ГБ1,9 ТБ NVMe SSD10 Гбит/сФиксированный IP-адрес, включенный в экземпляр64 ТБ/месяц.
AWSi4i.8xlarge32 vCPUs256 ГБ2 x 3,750 AWS Nitro SSD (фиксированный)До 25 Гбит/сВыделенный Elastic IP64 ТБ/месяц.
к сведению

Примечание: Цены, конфигурации и доступность могут отличаться. Рекомендуется всегда проверять официальную документацию и страницы с ценами соответствующего облачного провайдера, прежде чем принимать какие-либо решения.

Запуск узла (видео)

Пожалуйста, ознакомьтесь с этим пошаговым видео-руководством, чтобы сразу приступить к работе:

Запуск узла (текст)

Переключитесь на пользователя без root прав

warning

Этот шаг **необходим ** для успешной установки и использования mytonctrl — не игнорируйте создание пользователя, без root прав**. Без этого шага ошибок при установке не возникнет, но mytonctrl не будет работать должным образом.

Если у вас нет пользователя без root прав, вы можете создать его с помощью следующих шагов (в противном случае пропустите первые два шага и перейдите к третьему).

  1. Войдите в систему как пользователь root и создайте нового пользователя:
sudo adduser <username>
  1. Добавьте своего пользователя в группу sudo:
sudo usermod -aG sudo <username>
  1. Войдите под именем нового пользователя (если вы используете ssh, необходимо будет завершить текущую сессию и переподключиться с правильным пользователем)
ssh <username>@<server-ip-address>

Установите MyTonCtrl

Скачайте и запустите скрипт установки из учетной записи пользователя без root привилегий, используя права sudo:

wget https://raw.githubusercontent.com/ton-blockchain/mytonctrl/master/scripts/install.sh
sudo bash install.sh
  • -d - mytonctrl загрузит дамп последнего состояния блокчейна. Это сократит время синхронизации в несколько раз.
  • -c <path> - если вы хотите использовать для синхронизации не общедоступные liteservers. (не обязательно)
  • -i - Игнорировать минимальные требования, используйте только для проверки процесса компиляции без реального использования узла.
  • -m - Режим, может быть validator или liteserver.
  • -t - Отключить телеметрию.

Чтобы использовать testnet, флагу -c должно быть присвоено значение https://ton.org/testnet-global.config.json.

Значение по умолчанию для флага -c равно https://ton-blockchain.github.io/global.config.json, что является конфигурацией по умолчанию для основной сети (mainnet).

Запуск mytonctrl

  1. Запустите консоль MyTonCtrl из учетной записи локального пользователя, которая была использована при установке:
mytonctrl
  1. Проверьте состояние MyTonCtrl с помощью команды status:
status

В testnet вместо status необходимо использовать команду status fast.

Должны отобразиться следующие статусы:

  • mytoncore status: Должен быть зеленым.
  • local validator status: Должен быть также зеленым.
  • local validator out of sync: Сначала отображается строка n/a. Как только вновь созданный валидатор подключится к другим валидаторам, число будет около 250 000. По мере выполнения синхронизации это число уменьшается. Когда оно падает ниже 20, валидатор считается синхронизированным.

Пример вывода команды status:

status

Убедитесь, что у вас такой же вывод для команды status

Для всех узлов должен появиться раздел Local Validator status. Если это не так, проверьте раздел устранения неполадок и проверьте журналы узла.

Подождите, пока Local validator out of sync не станет меньше 20 секунд.

При запуске нового узла, даже из дампа, необходимо подождать до 3 часов, прежде чем количество рассинхронизаций начнет уменьшаться. Это связано с тем, что узел все еще должен установить свое положение в сети и распространить свои адреса через таблицы DHT.

Удаление mytonctrl

Загрузите скрипт и запустите его:

sudo bash /usr/src/mytonctrl/uninstall.sh

Проверьте владельца mytonctrl

Выполните:

ls -lh /var/ton-work/keys/

Советы и рекомендации

Список доступных команд

  • Вы можете использовать help, чтобы получить список доступных команд:

Команда Help

Проверьте логи mytonctrl

  • Чтобы проверить логи mytonctrl, откройте ~/.local/share/mytoncore/mytoncore.log для локальной учетной записи или /usr/local/bin/mytoncore/mytoncore.log для пользователя Root.

Логи

Проверьте логи узла

В случае сбоя проверьте логи узла:

tail -f /var/ton-work/log.thread*

Поддержка

Обратитесь в службу технической поддержки по ссылке @mytonctrl_help.