POLKADOT
October 25, 2023
Avail
🪓 Telegram канал UTSA 🪓 Telegram чат UTSA
- Network name:
avail_da_mainnet
- Token Symbol:
AVL
- Working directory:
.avail_mainnet
- RPC: https://m-avail.rpc.utsa.tech/
- EXPLORER: https://explorer.avail.so/?rpc=wss://m-avail.rpc.utsa.tech#/accounts
- Forum: https://forum.availproject.org/
Avail это базовый уровень для современных blockchains. С Avail никогда еще не было так просто создавать свои собственные blockchains
Используемые порты
Подготовка сервера
# обновляем репозитории apt update && apt upgrade -y # устанавливаем необходимые утилиты apt install curl iptables build-essential git wget jq make gcc nano tmux htop nvme-cli pkg-config libssl-dev libleveldb-dev libgmp3-dev tar clang bsdmainutils ncdu unzip llvm libudev-dev make protobuf-compiler -y
Установка Ubuntu 22.04
mkdir -p $HOME/.avail_mainnet && cd $HOME/.avail_mainnet chmod 755 $HOME/.avail_mainnet
wget https://github.com/availproject/avail/releases/download/v2.2.5.0/x86_64-ubuntu-2204-avail-node.tar.gz tar -xvf x86_64-ubuntu-2204-avail-node.tar.gz mv avail-node /usr/bin/avail rm -rf x86_64-ubuntu-2204-avail-node.tar.gz avail --version # avail 2.2.0-a6600ea38c9
yourname=<name>
tee /etc/systemd/system/avail-mainnet.service > /dev/null << EOF [Unit] Description=Avail mainnet After=network-online.target StartLimitIntervalSec=0 [Service] User=$USER Restart=always RestartSec=3 LimitNOFILE=65535 ExecStart=/usr/bin/avail \ --base-path $HOME/.avail_mainnet/data/ \ --chain mainnet \ --port 30933 \ --rpc-port 9993 \ --prometheus-port 9695 \ --validator \ --name '$yourname' [Install] WantedBy=multi-user.target EOF
systemctl daemon-reload systemctl enable avail-mainnet systemctl restart avail-mainnet && journalctl -u avail-mainnet -f -o cat
Теперь наша нода начала синхронизироваться. Мы можем проверить нашу ноду в телеметрии
Важно - телеметрия показывает только 1000 нод. Поэтому Вы можете не видеть свою ноду в телеметрии при наличии больше 1000 нод
Snapshot
# устанавливаем lz4 apt install lz4
# останавливаем ноду systemctl stop avail-mainnet # удаляем базу данных. При необходимости измените путь на свой rm -r $HOME/.avail_mainnet/data/chains/avail_da_mainnet/paritydb/ # скачиваем snapshot. При необходимости измените путь на свой curl -o - -L https://share.utsa.tech/avail_mainnet/avail-archive.tar.lz4 | lz4 -c -d - | tar -x -C $HOME/.avail_mainnet/data/chains/avail_da_mainnet/ # перезагружаем ноду systemctl restart avail-mainnet && journalctl -u avail-mainnet -f -o cat
Настройка валидатора
ВАЖНО - дальнейшие действия следует делать только в том случае, если команда выбрала Вас в качестве валидатора в будущей тестовой сети. Также следует дождаться самой будущей сети для создания валидатора
После того как нода синхронизировалась вытаскиваем ключ из нашей ноды введя команду
curl -H "Content-Type: application/json" -d '{"id":1, "jsonrpc":"2.0", "method": "author_rotateKeys", "params":[]}' http://localhost:9993
Если получили подобный результат, то все замечательно {"jsonrpc":"2.0","result":"0xa0very0long0hex0string","id":1} - копируем ключ (выделено жирным) он нам понадобится в ближайшее время
- Переходим на сайт и для начала создаем кошелек stash
- Для stash настраиваем Set on-chain Identity для идентификации
- Создаем валидатора. Для этого выбираем Network - Staking - Accounts - Validator
Далее вставляем наш ключ полученный с ноды валидатора, выбираем процент комиссионного вознаграждения
Как только освободится место среди валидаторов, вы появитесь во вкладке Staking Overview, а пока можете себя найти на вкладке Waiting
Полезные команды
# просмотреть логи journalctl -u avail-mainnet -f -o cat #
systemctl stop avail-mainnet systemctl disable avail-mainnet rm /etc/systemd/system/avail-mainnet.service systemctl daemon-reload cd rm -r .avail_mainnet