Узел Liteserver
Прочитайте о Полном узле перед этой статьей
Когда конечная точка активирована в полном узле, узел принимает на себя роль Liteserver. Этот тип узла может отправлять запросы от Легких клиентов и отвечать на них, обеспечивая бесперебойное взаимодействие с блокчейном TON.
Требования к оборудованию
По сравнению с validator, режим liteserver требует меньше ресурсов. Тем не менее, для запуска liteserver по-прежнему рекомендуется использовать мощный компьютер.
- не менее 16 ядер процессора
- не мене е 128 ГБ оперативной памяти
- твердотельный накопитель объемом 1 ТБ или Оборудованное хранилище с более 64 000 операций ввода/вывода в секунду (IOPS)
- Подключение к сети со скоростью 1 Гбит/с
- 16 ТБ/месяц трафика при пиковой нагрузке
- общедоступный IP-адрес (фиксированный IP-адрес)
Рекомендованные провайдеры
Не стесняйтесь использовать облачных провайдеров, перечисленных в разделе Рекомендуемые провайдеры.
На Hetzner и OVH запрещено запускать валидатора, но Вы можете использовать их для запуска liteserver:
- Hetzner: EX101, AX102
- OVH: RISE-4
Установка liteserver
Если у Вас нет mytonctrl, установите его с флагом -m liteserver
:
- Ubuntu
- Debian
wget https://raw.githubusercontent.com/ton-blockchain/mytonctrl/master/scripts/install.sh
sudo bash ./install.sh -m liteserver
wget https://raw.githubusercontent.com/ton-blockchain/mytonctrl/master/scripts/install.sh
su root -c 'bash ./install.sh -m liteserver'
-d
- mytonctrl загрузит дамп последнего состояния блокчейна. Это сократит время синхронизации в несколько раз.-c <path>
- если вы хотите использовать не общедоступные liteservers для синхронизации. (не обязательно)-i
- Игнорировать минимальные требования. Используйте только для проверки процесса компиляции без реального использования узла.-m
- Режим, может бытьvalidator
илиliteserver
.
Чтобы использовать testnet, флагу -c
должно быть присвоено значение https://ton.org/testnet-global.config.json
.
Значение по умолчанию для флага -c
равно https://ton-blockchain.github.io/global.config.json
, что является конфигурацией по умолчанию для основной сети (mainnet).
Если у вас уже установлен mytonctrl, запустите:
user@system:~# mytonctrl
MyTonCtrl> enable_mode liteserver
Проверьте настройки брандмауэра
Сначала убедитесь, что указан правильный порт Liteserver в файле/var/ton-work/db/config.json
. Этот порт меняется при каждой новой установке MyTonCtrl
. Он находится в поле port
:
{
...
"liteservers": [
{
"ip": 1605600994,
"port": LITESERVER_PORT
...
}
]
}
Если вы используете облачный провайдер, вам нужно открыть этот порт в настройках брандмауэра. Например, если вы используете AWS, вам нужно открыть порт в группе безопасности.
Вот пример открытия порта в брандмауэре сервера без виртуальной машины.
Открытие порта в брандмауэре
Мы будем использовать утилиту ufw
(cheatsheet). Вы можете использовать ту, которая вам больше нравится.
- Установите
ufw
, если он не установлен:
sudo apt update
sudo apt install ufw
- Разрешите ssh-соединение:
sudo ufw allow ssh
- Разрешите порт, указанный в файле
config.json
:
sudo ufw allow <port>
- Включите брандмауэр:
sudo ufw enable
- Проверьте состояние брандмауэра:
sudo ufw status
Таким образом, вы можете открыть порт в настройках брандмауэра вашего сервера.
Взаимодействие с Liteserver (lite-client)
- Создайте пустой проект на своем компьютере и вставьте
config.json
в каталог проекта. Эту конфигурацию можно получить, выполнив команду:
installer clcf # in mytonctrl
Это создаст /usr/bin/ton/local.config.json
на вашем компьютере, где установлен mytonctrl. Проверьте [документацию по mytonctrl для получения дополнительной информации] (/v3/documentation/infra/nodes/mytonctrl/mytonctrl-overview#clcf).
- Установите библиотеки.
- JavaScript
- Python
- Golang
npm i --save ton-core ton-lite-