Sei | Testnet
Содержание
- Общая информация
- О проекте
- Требования к оборудованию
- Установка ноды
- Создание кошелька
- Ставки, делегирование и вознаграждения
- Проверка ноды в списке валидаторов
- Устранение неполадок
- Обновление
- Полезные команды
- Ссылки на нас
Гайд на участие в Sei Incentivized Testnet
Тестнет состоит из 4 этапов и будет длится примерно 8 недель.
Выделяют на награду 1% от общего количества токенов
👉 Регистрация на тестнет: https://forms.gle/CzBeqENRZrrXXG4x7
👉 Подробнее о тестнете тут: https://medium.com/@seinetwork/seinami-incentivized-testnet-a66be6aa6650
👉 Сайт проекта: https://www.seinetwork.io/
👉 Дискорд проекта: https://discord.gg/xZTaK4JKv5
О проекте
Sei Network — это первый блокчейн L1, ориентированный на книгу заказов. Он построен с использованием Cosmos SDK и ядра Tendermint и имеет встроенный модуль центральной книги лимитных ордеров. Децентрализованные приложения, основанные на Sei, могут создаваться поверх CLOB, а другие блокчейны на основе Cosmos могут использовать CLOB Sei в качестве общего центра ликвидности и создавать рынки для любого актива.
Требования к оборудованию
Требования к оборудованию от разработчика
- 4 процессора; чем выше тактовая частота, тем лучше
- 32 ГБ ОЗУ
- Диск 1 ТБ
- Постоянное подключение к Интернету (трафик будет минимальным во время тестнета, 10 Мбит/с будет достаточно - для майнета ожидается не менее 100 Мбит/с)
Оптимальные требование к оборудованию
- 4x процессора; чем выше тактовая частота, тем лучше
- 8 ГБ ОЗУ
- 200 ГБ памяти (SSD или NVME)
- Постоянное подключение к Интернету (трафик будет минимальным во время тестнета, 10 Мбит/с будет достаточно - для майнета ожидается не менее 100 Мбит/с)
Установка ноды
Вариант 1 (Автоматическая установка)
Для полностью автоматической установки ноды воспользуйтесь нашим скриптом, Вам будет предложено ввести имя узла валидатора (moniker - который указывали при регистрации в форме для участия в тестнете)
curl https://raw.githubusercontent.com/agonyp/Scripts-ALPHA-Noderunning/main/install-sui.sh | bash
После выполнения скрипта переходите к созданию кошелька
Вариант 2 (Ручная установка)
Создаем переменную с названием ноды (НАЗВАНИЕ НОДЫ заменить на moniker который указывали при регистрации)
NODENAME=НАЗВАНИЕ_НОДЫ
Сохраняем и импортируем переменные в систему
echo "export NODENAME=$NODENAME" >> $HOME/.bash_profile echo "export WALLET=wallet" >> $HOME/.bash_profile echo "export CHAIN_ID=sei-atlantic-1" >> $HOME/.bash_profile source $HOME/.bash_profile
sudo apt update && sudo apt upgrade -y
Устанавливаем пакеты необходимые нам для установки ноды
sudo apt install curl tar wget clang pkg-config libssl-dev jq build-essential bsdmainutils git make ncdu gcc git jq chrony liblz4-tool -y
ver="1.18.2" cd $HOME wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz" sudo rm -rf /usr/local/go sudo tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz" rm "go$ver.linux-amd64.tar.gz" echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> ~/.bash_profile source ~/.bash_profile go version
cd $HOME git clone https://github.com/sei-protocol/sei-chain.git cd sei-chain git checkout 1.0.7beta-postfix go build -o build/seid ./cmd/sei-chaind chmod +x ./build/seid && sudo mv ./build/seid /usr/local/bin/seid
Конфигурируем и инициализируем ноду
seid config chain-id $CHAIN_ID seid config keyring-backend file seid init $NODENAME --chain-id $CHAIN_ID
Качаем файл генезиса и addrbook
wget -qO $HOME/.sei/config/genesis.json "https://raw.githubusercontent.com/sei-protocol/testnet/master/sei-testnet-2/genesis.json" wget -qO $HOME/.sei/config/addrbook.json "https://raw.githubusercontent.com/agonyp/Scripts-ALPHA-Noderunning/main/utilities/sei-addrbook.json"
sed -i -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"0usei\"/" $HOME/.sei/config/app.toml
SEEDS="df1f6617ff5acdc85d9daa890300a57a9d956e5e@sei-atlantic-1.seed.rhinostake.com:16660" PEERS="[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:12656,[email protected]:19656,[email protected]:12656,[email protected]:20956,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:10956,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:12656,[email protected]:12656,[email protected]:26656,[email protected]:26651,[email protected]:56656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:12656,[email protected]:36376,[email protected]:21156" sed -i -e "s/^seeds *=.*/seeds = \"$SEEDS\"/; s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.sei/config/config.toml
pruning="custom" pruning_keep_recent="100" pruning_keep_every="0" pruning_interval="10" sed -i -e "s/^pruning *=.*/pruning = \"$pruning\"/" $HOME/.sei/config/app.toml sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"$pruning_keep_recent\"/" $HOME/.sei/config/app.toml sed -i -e "s/^pruning-keep-every *=.*/pruning-keep-every = \"$pruning_keep_every\"/" $HOME/.sei/config/app.toml sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"$pruning_interval\"/" $HOME/.sei/config/app.toml
seid unsafe-reset-all
tee /etc/systemd/system/seid.service > /dev/null <<EOF [Unit] Description=seid After=network.target [Service] Type=simple User=$USER ExecStart=$(which seid) start Restart=on-failure RestartSec=10 LimitNOFILE=65535 [Install] WantedBy=multi-user.target EOF
Регистрируем в системе и запускаем сервис
sudo systemctl daemon-reload sudo systemctl enable seid sudo systemctl restart seid
Создание кошелька
Импортируем системные переменные
source ~/.bash_profile
seid keys add $WALLET
Восстановление кошелька по seed фразе (опционально)
seid keys add $WALLET --recover
seid keys list
WALLET_ADDRESS=$(seid keys show $WALLET -a)
VALOPER_ADDRESS=$(seid keys show $WALLET --bech val -a)
Импортируем переменные в систему
echo 'export WALLET_ADDRESS='${WALLET_ADDRESS} >> $HOME/.bash_profile echo 'export VALOPER_ADDRESS='${VALOPER_ADDRESS} >> $HOME/.bash_profile source $HOME/.bash_profile
Перед запросом монет из крана, убедитесь что нода синхронизирована
Команда для проверки синхронизации (False - синхронизирована)
curl -s localhost:26657/status | jq .result.sync_info
Запрашиваем монеты из крана в дискорде проекта, канал #atlantic-1-faucet (Монеты придут на баланс после синхронизации ноды)
seid query bank balances $WALLET_ADDRESS
seid tx staking create-validator \ --amount 1000000usei \ --from $WALLET \ --commission-max-change-rate "0.01" \ --commission-max-rate "0.2" \ --commission-rate "0.07" \ --min-self-delegation "1" \ --pubkey $(seid tendermint show-validator) \ --moniker $NODENAME \ --chain-id $CHAIN_ID
После создания валидатора, переходим в explorer, находим себя в списке активных\неактивных валидаторов и делаем скриншот, который скидываем в ветку general-chat и просим роль Sei Validators.
Ставки, делегирование и вознаграждения
Делегировать ставку (10000000usei сумма делегирования, меняем на желаемое)
seid tx staking delegate $VALOPER_ADDRESS 10000000usei --from=$WALLET --chain-id=$CHAIN_ID
Переделегировать стейк от валидатора к другому валидатору
seid tx staking redelegate <srcValidatorAddress> <destValidatorAddress> 10000000usei --from=$WALLET --chain-id=$CHAIN_ID --gas=auto
seid tx distribution withdraw-all-rewards --from=$WALLET --chain-id=$CHAIN_ID --gas=auto
Вывод вознаграждений с комиссией
seid tx distribution withdraw-rewards $VALOPER_ADDRESS --from=$WALLET --commission --chain-id=$CHAIN_ID
Проверка ноды в списке валидаторов
Есть возможность проверить себя в списке по ссылке на explorer
https://sei.explorers.guru/validators
seid q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_BONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " \t " + .description.moniker' | sort -gr | nl
Устранение неполадок
Если у вас не синхронизируется нода, мало пиров, нет коннекта, используйте статичные пиры. В строке команды то что находиться в скобках, необходимо поменять на актуальные пиры из офф Discord проекта.
PEERS="[email protected]:26656,[email protected]:26641,[email protected]:26656,[email protected]:46656,[email protected]:26656,[email protected]:26656,[email protected]:26656" sed -i.bak -e "s/^persistent_peers =./persistent_peers = "$PEERS"/" $HOME/.sei/config/config.toml
Обновление
Для обновления воспользуйтесь одним из скриптов на выбор
curl https://raw.githubusercontent.com/agonyp/Scripts-ALPHA-Noderunning/main/sei-update.sh | bash
sudo systemctl stop seid sudo rm /usr/local/bin/seid cd sei-chain/ git fetch --tags -f git checkout 1.0.7beta-postfix make build chmod +x ./build/seid && sudo mv ./build/seid /usr/local/bin/seid curl https://raw.githubusercontent.com/sei-protocol/testnet/master/sei-incentivized-testnet/genesis.json > ~/.sei/config/genesis.json curl https://raw.githubusercontent.com/sei-protocol/testnet/master/sei-incentivized-testnet/addrbook.json > ~/.sei/config/addrbook.json SEEDS="df1f6617ff5acdc85d9daa890300a57a9d956e5e@sei-atlantic-1.seed.rhinostake.com:16660" PEERS="[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:12656,[email protected]:19656,[email protected]:12656,[email protected]:20956,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:10956,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:12656,[email protected]:12656,[email protected]:26656,[email protected]:26651,[email protected]:56656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:12656,[email protected]:36376,[email protected]:21156" sed -i -e "s/^seeds *=.*/seeds = \"$SEEDS\"/; s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.sei/config/config.toml seid config chain-id atlantic-1 seid tendermint unsafe-reset-all --home $HOME/.sei sudo systemctl restart seid
Полезные команды
sei_logs journalctl -fu seid -o cat
Команда для проверки синхронизации
curl -s localhost:26657/status | jq .result.sync_info
curl -X POST -d '{"address": "'"$WALLET_ADDRESS"'", "coins": ["1000000usei"]}' http://3.22.112.181:8000
seid query bank balances $WALLET_ADDRESS
Получить в настоящее время подключенный список пиров с идентификаторами
curl -sS http://localhost:26657/net_info | jq -r '.result.peers[] | "\(.node_info.id)@\(.remote_ip):\(.node_info.listen_addr)"' | awk -F ':' '{print $1":"$(NF)}'
systemctl stop seid
systemctl start seid
systemctl restart seid
sudo systemctl stop seid rm -rf ~/.sei rm -rf ~/sei-chain sudo systemctl disable seid rm /usr/local/bin/seid
Ссылки на нас
Официальный сайт | https://www.alphaproteam.com/
Наш Discord | https://discord.gg/alphateam
Наш Telegram | http://t.me/alphateampublic
Наш Twitter | https://twitter.com/AlphaTeamInfo