HyperLiquid: Будущий узел для децентрализации проекта? Руководство по установке
Введение
Hyperliquid — это децентрализованная бессрочная биржа, предлагающая высочайшую скорость, ликвидность и цены.
Hyperliquid — это высокопроизводительный блокчейн уровня 1, оптимизированный с нуля.
Целью является создание полностью децентрализованной и открытой финансовой системы, в которой пользовательские приложения взаимодействуют с высокопроизводительными собственными компонентами, и все это без ущерба для удобства конечного пользователя.
Мы не зарабатываем на Вас. Просто подпишитесь на наш канал ТГ и получайте эксклюзивную информацию о нодах и не только, раньше всех! Вокруг Крипты и Youtube👍
1- Конфигурация VPS
Чтобы развернуть свой узел, у вас есть два варианта: разместить его на своем собственном компьютере или настроить на виртуальном частном сервере (VPS), причем последний вариант идеально подходит для размещения веб-сайтов, приложений или узлов.
Лично я выбрал Contabo , известного провайдера VPS, за его надежность и производительность.
Необходимая конфигурация для запуска узла HyperLiquid требует промежуточной настройки.
Поэтому я рекомендую Cloud VPS 2.Если вы хотите запустить дополнительные узлы на своем VPS, рассмотрите возможность перехода на следующий уровень.
Чтобы заказать Contabo VPS, вы можете перейти по этой ссылке .
Это партнерская ссылка, не требующая от вас дополнительных затрат, которую вы можете использовать для поддержки моей работы и помощи мне в продолжении выпуска этих руководств.
Выберите объем хранилища 400 ГБ и образ Ubuntu 22.04 для своей конфигурации.
После завершения процесса оплаты вы получите электронное письмо с подтверждением заказа. Пожалуйста, подождите, пока не получите второе электронное письмо с информацией о вашем VPS, включая ваши учетные данные для входа .
Для подключения к вашему VPS я рекомендую следовать этому подробному руководству . Вам нужно будет загрузить программное обеспечение Putty , которое позволит вам установить безопасное соединение с вашим VPS и получить доступ к его функциям.
2- Создание пользователя
Узел не может быть запущен из пользователя root. Вам необходимо создать пользователя на вашем VPS для запуска вашего узла:
adduser hl usermod -aG sudo hl
Установите пароль для своего сеанса, затем нажмите ENTER, чтобы принять значения по умолчанию.
вс - хл
3- Установка основных компонентов
Прежде чем погрузиться в настройку вашего узла, крайне важно обновить ваш VPS.
Для этого просто выполните следующую команду в вашем терминале VPS:
sudo apt - получить обновление && sudo apt - получить обновление - y
apt- получить экран установки -y
4- Конфигурация узла
Загрузите начальный набор пиров, чтобы установить первое соединение между вашим узлом и остальной частью сети:
curl https://binaries.hyperliquid.xyz/Testnet/initial_peers.json > ~/initial_peers.json
Настройте узел для работы в тестовой сети:
echo '{"chain": "Testnet"}' > ~/visor.json
curl https://binaries.hyperliquid.xyz/Testnet/non_validator_config.json > ~/non_validator_config.json
Загрузите двоичный файл Visor:
curl https://binaries.hyperliquid.xyz/Testnet/hl-visor > ~/hl-visor && chmod a+x ~/hl-visor
5- Запуск узла
Вы можете запустить свой узел в сеансе Screen:
экран -S hl
Откроется новый сеанс, в котором вы сможете запустить свой узел в фоновом режиме.
Чтобы отключиться от сеанса, нажмите CTRL+A+D.
Чтобы повторно подключиться к сеансу, используйте следующую команду:
экран -r hl
Запустите свой узел HyperLiquid:
~/hl-визор
Узел не будет отображать никаких сообщений. Теперь вы можете выйти из сеанса Screen, нажав CTRL+A+D
Вы можете проверить , работает ли ваш узел, проверив hl
существование каталога:
лс
Запуск узла по официальной документации
Технические характеристики машины
Рекомендуемое оборудование: 4 ядра ЦП, 16 ГБ ОЗУ, 50 ГБ дискового пространства.
В настоящее время поддерживается только Ubuntu 24.04.
Порты 8000 и 9000 используются для сплетен и должны быть открыты для публики. В противном случае IP-адрес узла будет лишен приоритета пирами в p2p-сети.
Для минимальной задержки запустите узел в Токио, Япония.
Настраивать
Настройте цепочку для testnet. Mainnet будет доступен после завершения тестирования в testnet:
echo '{"chain": "Testnet"}' > ~/visor.json
Загрузите двоичный файл Visor, который будет создавать и управлять процессом дочернего узла:
curl https://binaries.hyperliquid.xyz/Testnet/hl-visor > ~/hl-visor && chmod a+x ~/hl-visor
Запуск невалидатора
Запустить ~/hl-visor run-non-validator
. Это может занять некоторое время, пока узел перемещается по сети, чтобы найти подходящий одноранговый узел для потоковой передачи. Такие журналы applied block X
означают, что узел должен транслировать данные в реальном времени.
Чтение данных L1
Процесс узла будет записывать данные в ~/hl/data
. При настройках по умолчанию сеть будет генерировать около 20 ГБ журналов в день, поэтому также рекомендуется архивировать или удалять старые файлы.
Блоки, проанализированные как транзакции, будут переданы в потоковом режиме~/hl/data/replica_cmds/{start_time}/{date}/{height}
Снимки состояния будут сохраняться каждые 10000 блоков~/hl/data/periodic_abci_states/{date}/{height}.rmp
Состояние можно перевести в формат JSON для проверки:
./hl-node translate-abci-state ~/hl/data/periodic_abci_states/{date}/{height}.rmp /tmp/out.json
Торги будут транслироваться на ~/hl/data/node_trades/hourly/{date}/{hour}
.
Заказы можно передавать потоком, запустив ~/hl-visor run-non-validator --write-order-statuses
. Это запишет каждый статус заказа L1 в ~/hl/data/node_order_statuses/hourly/{date}/{hour}
. Заказы могут содержать значительный объем данных, поэтому этот флаг по умолчанию отключен.
ЭВМ
EVM RPC можно включить, передав флаг --evm ~/hl-visor run-non-validator --evm
. После запуска вы можете отправлять запросы evm post на порт localhost 3001. Напримерcurl -X POST --header 'Content-Type: application/json' --data '{"jsonrpc":"2.0","method":"eth_getBlockByNumber","params":["latest",false],"id":1}' http://localhost:3001/evm
Запуск узла проверки
Описанная выше настройка невалидирующего узла является необходимым условием для запуска валидационого узла.
Сгенерировать конфигурацию
Сгенерируйте кошелек-валидатор (используйте безопасно сгенерированный ключ):
echo '{"key": "8888888888888888888888888888888888888888888888888888888888888888"}' > ~/hl/hyperliquid_data/node_config.json
В командах ниже <node-wallet-key>
используется шестнадцатеричная строка из файла конфигурации выше.
Убедитесь, что пользователь-валидатор существует
Адрес валидатора должен иметь ненулевой баланс perps USDC, иначе он не сможет отправлять подписанные действия для регистрации в качестве валидатора. Эта команда выводит пользователя валидатора:
~/hl-node --chain Testnet print-address <node-wallet-key>
Присоединяйтесь к сети
На начальном этапе тестирования адрес валидатора из предыдущего шага необходимо внести в белый список.
Зарегистрируйте публичный IP-адрес валидатора, а также отображаемое имя и описание:
~/hl-node --chain Testnet send-signed-action '{"type": "CValidatorAction", "register": {"profile": {"node_ip": {"Ip": "1.2.3.4"}, "name": "...", "description": "..." }}}' <node-wallet-key>
Убедитесь, что порты 4000, 5000, 6000, 7000, 8000, 9000 открыты для валидаторов. Либо откройте порты для публики, либо используйте брандмауэр, разрешающий валидаторам, которые находятся в моментальных c_staking
снимках состояния. Обратите внимание, что набор валидаторов и IP-адреса являются динамическими.
Запустите валидатор
Запустите валидатор, используя двоичный файл Visor, чтобы получить обновления.curl https://binaries.hyperliquid.xyz/Testnet/hl-visor > hl-visor && ./hl-visor run-validator
Чтобы устранить проблему, часто проще ./hl-node run-validator
сразу запустить stderr и отключить перезапуски.
Валидатор сначала загружает состояние с невалидатором. Чтобы использовать известный надежный одноранговый узел для более быстрой загрузки:
echo '{ "root_node_ips": [{"Ip": "1.2.3.4"}], "try_new_peers": false }' > ~/override_gossip_config.json
Начать проверку
На данный момент регистрация и изменение IP-адреса автоматически запирают валидатор, чтобы он изначально не участвовал в консенсусе. Когда ожидаемые выходные данные будут транслироваться в ~/hl/data/consensus{wallet_user}/{date}
, отправьте следующее действие, чтобы начать участвовать в консенсусе:
~/hl-node --chain Testnet send-signed-action '{"type": "CValidatorAction", "unjailSelf": null}' <node-wallet-key>
Чтобы выйти из консенсуса, выполните следующую команду для «самоизоляции» и дождитесь, пока валидатор покинет активный набор, прежде чем завершить работу.
~/hl-node --chain Testnet send-signed-action '{"type": "CValidatorAction", "jailSelf": null}' <node-wallet-key>
Разное
Смотрите информацию о текущих валидаторах:
curl -X POST --header "Content-Type: application/json" --data '{ "type": "validatorSummaries"}' https://api.hyperliquid-testnet.xyz/info
Измените профиль валидатора, если он уже зарегистрирован:
~/hl-node --chain Testnet send-signed-action '{"type": "CValidatorAction", "changeProfile": {"node_ip": {"Ip": "1.2.3.4"}, "name": "..."}}' <node-wallet-key>
Работа с Docker
Чтобы построить узел, выполните:
docker compose build
Чтобы запустить узел, выполните:
docker compose up -d
Поиск неисправностей
Журналы сбоев дочернего процесса будут записаны в~/hl/data/visor_child_stderr/{date}/{node_binary_index}
Вы также можете присоединиться к социальным сетям проектов:
- Твиттер HyperLiquid: https://x.com/HyperliquidX
- HyperLiquid Discord: https://discord.gg/hyperliquid
Спасибо за прочтение! Пожалуйста, поделитесь своим отзывом в комментариях и подпишитесь на меня в социальных сетях, если вам понравилась статья. Я также создал сообщество Telegram, где мы можем собираться и обсуждать интересные темы, связанные с криптовалютой. Вы можете присоединиться к нам и принять участие в обсуждении → Telegram: Contact @razgules