Узел 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-