April 13, 2022

Установка ноды CRESCENT

Здравствуйте, в этом гайде мы опишем установку ноды CRESCENT

Для начала установим GO версии 1.18 (на данный момент последняя)

cd $HOME wget "https://golang.org/dl/go1.18.linux-amd64.tar.gz" sudo rm -rf /usr/local/go sudo tar -C /usr/local -xzf "go1.18.linux-amd64.tar.gz" rm "go1.18.linux-amd64.tar.gz" echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profile source $HOME/.bash_profile

Проверим версию после установки

go version

Обновим и установим необходимые пакеты

sudo apt-get update -y && sudo apt-get upgrade -y sudo apt-get install build-essential -y

Задаем переменные для нашего удобства (CRESCENT_CHAIN не меняем)

CRESCENT_CHAIN="mooncat-1-1" CRESCENT_MONIKER="YOUR_MONIKER_NAME" CRESCENT_WALLET="YOUR_WALLET_NAME"

Добавляем все в баш профиль

echo 'export CRESCENT_CHAIN='${CRESCENT_CHAIN} >> $HOME/.bash_profile echo 'export CRESCENT_MONIKER='${CRESCENT_MONIKER} >> $HOME/.bash_profile echo 'export CRESCENT_WALLET='${CRESCENT_WALLET} >> $HOME/.bash_profile source $HOME/.bash_profile

Скачиваем и устанавливаем ноду (именно rc2)

git clone https://github.com/crescent-network/crescent cd crescent git checkout v1.0.0-rc2 make install

Инициализируем ноду

crescentd init $CRESCENT_MONIKER --chain-id $CRESCENT_CHAIN

Скачиваем и устанавливаем генезис

cd $HOME git clone https://github.com/crescent-network/launch cd launch/testnet/ rm ~/.crescent/config/genesis.json tar -zxvf genesis_collect-gentxs.json.tar.gz cp genesis_collect-gentxs.json ~/.crescent/config/genesis.json

Задаем список пиров и сидов

cd $HOME crescentd config chain-id $CRESCENT_CHAIN

seeds="1fe40daaf2643fd3857e30f86ff30ea82bf1c03b@54.169.204.99:26656" PEERS="2d8e31ad11b840c5ce7f1900b4da3a3bcf0985ef@139.59.151.125:26656,09e76cfbe89357d6bb3b16c4d013f420721b6664@50.18.111.23:26656,3802abfdf8a1c0a60041e684b08b6bec92d0a325@178.62.19.161:26656,2821cee54928a0fe1db97376ae7c48c4f0a9528a@137.184.127.205:26656,b2d2685e01641264fff25f5b3be23eacbdf9b08d@3.35.211.36:26656,29b006edeb2e0ee9bbe05060ebc6550549dc656e@218.53.140.56:20406,e2f735b5ecb6f909d09f4e3ebce6a90c63d18fbe@59.13.223.197:30535,b91b8ab43d8fc161587f09a09ccbb7fda7c41beb@37.120.245.39:26656,841f1cfa0174017813e2291cfa845001391a2cee@crescent-testnet.01no.de:26656,bdce75b9a471de6d131571b0c40ce6070d7da878@80.64.208.109:26656" sed -i.bak -e "s/^seeds *=.*/seeds = \"$seeds\"/; s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.crescent/config/config.toml

Создаем кошелек !!! Не забываем сохранить мнемоник !!! так же попросит ввести пароль для доступа к кошельку СОХРАНЯЕМ или ЗАПОМИНАЕМ(Если кошелек уже есть и нужно просто восстановить то этой командой crescentd keys add $CRESCENT_WALLET --recover и вводим мнемоник)

crescentd keys add $CRESCENT_WALLET

Добавляем адрес кошелька в переменную для нашего удобства (для подтверждения нужен пароль введённый ранее)

CRESCENT_ADDR=$(crescentd keys show $CRESCENT_WALLET -a)

Добавляем переменную в баш профиль

echo 'export CRESCENT_ADDR='${CRESCENT_ADDR} >> $HOME/.bash_profile source $HOME/.bash_profile

Создаем сервис

sudo tee /etc/systemd/system/crescentd.service > /dev/null <<EOF [Unit] Description=Crescent Testnet After=network.target [Service] Type=simple User=$USER ExecStart=$(which crescentd) start --x-crisis-skip-assert-invariants Restart=on-failure RestartSec=10 LimitNOFILE=65535 [Install] WantedBy=multi-user.target EOF

Запускаем сервис

sudo systemctl daemon-reload sudo systemctl enable crescentd sudo systemctl restart crescentd

Смотрим логи (После получения последнего блока цепочки в логах появится ошибка "ERR CONSENSUS FAILURE!!! err="UPGRADE "testnet-rc3" NEEDED at height: 60100" значит цепочка закончилась и надо включать следующую)

journalctl -u crescentd -f

Либо смотрим статус и ждем пока синхронизируется (Последний блок этого этапа 60100)

curl -s localhost:26657/status

После того как этот этап синхронизировался включаем следующую цепочку

cd $HOME/crescent sudo systemctl stop crescentd git checkout v1.0.0-rc3 make install sudo systemctl start crescentd

Смотрим логи (После получения последнего блока цепочки в логах появится ошибка "ERR CONSENSUS FAILURE!!! err="UPGRADE "testnet-rc4" NEEDED at height: 365000" значит цепочка закончилась и надо включать следующую)

journalctl -u crescentd -f

Либо смотрим статус и ждем пока синхронизируется (Последний блок этого этапа 365000)

curl -s localhost:26657/status

После того как этот этап синхронизировался включаем следующую цепочку

cd $HOME/crescent sudo systemctl stop crescentd git checkout v1.0.0-rc4 make install sudo systemctl start crescentd

Смотрим логи

journalctl -u crescentd -f

Либо смотрим статус и ждем пока синхронизируется

curl -s localhost:26657/status

После того как увидите "catching_up": false нода синхронизировалась

После синхронизации можем проверить баланс кошелька

crescentd query bank balances $CRESCENT_ADDR

Далее создаем валидатор (сумму в строке --amount вписываем свою, буквы не трогаем) для подтверждения вводим пароль

crescentd tx staking create-validator \ --from $CRESCENT_WALLET \ --amount 10000000ucre \ --pubkey=$(crescentd tendermint show-validator) \ --commission-max-change-rate "0.01" \ --commission-max-rate "0.20" \ --commission-rate "0.10" \ --min-self-delegation "1" \ --chain-id mooncat-1-1 \ --moniker $CRESCENT_MONIKER -y

Записываем адрес валидатора в переменную (все тот же пароль нужно будет ввести)

CRESCENT_VALOPER=$(crescentd keys show $CRESCENT_WALLET --bech val -a)

Добавляем переменную в баш

echo 'export CRESCENT_VALOPER='${CRESCENT_VALOPER} >> $HOME/.bash_profile source $HOME/.bash_profile

Проверяем статус валидатора

crescentd query staking validator $CRESCENT_VALOPER

Теперь как делегировать средства на валидатор

crescentd tx staking delegate [VALOPER_ADDRESS] [STAKE_AMOUNT]ucre --from [your-key-name] --chain-id mooncat-1-1

Ну и если вдруг ваша нода попала в тюрьму, то выход

crescentd tx slashing unjail --chain-id mooncat-1-1 --from [your-key-name]

Ну и на последок самое интересное, где взять тестовые токены

Переходим по адресу и в верхнем правом углу подключаем кошелек Keplr

После этого в кошельке выбираем сеть mooncat-1-1

Нажимаем кнопочку с луной и ждем когда придут токены (для одного кошелька только один раз)

На этом все. Спасибо за уделённое внимание и время.

С уважением, MMS_Team