October 12, 2022

Установка ноды Crowd Control

Crowd Control - карточная блокчейн игра из экосистемы Cosmos. Недавно начался новый тестнет, о наградах ничего неизвестно, но желающие могут присоединиться.

Discord | Github | Official site

Поехали. Подготавливаем сервер

sudo apt update && sudo apt upgrade -y

Устанавливаем набор утилит

sudo apt install curl build-essential git wget jq make gcc tmux htop nvme-cli pkg-config libssl-dev libleveldb-dev tar clang bsdmainutils ncdu unzip libleveldb-dev -y

Манипуляции с бинарником

wget https://github.com/DecentralCardGame/Cardchain/releases/download/v0.81/Cardchain_latest_linux_amd64.tar.gz
tar -xzvf Cardchain_latest_linux_amd64.tar.gz
mv Cardchaind /usr/bin/cardchaind

Проверяем версию

cardchaind version

Вывод должен быть таким

0.81-5450b07d

Ну, а дальше старый добрый «космос».
Вводим переменные (имя кошелька и будущего валидатора придумайте сами) и добавляем сразу в профиль баш

MONIKER="your_name"
CHAIN="Testnet3"
WALLET_NAME="your_name"
echo 'export MONIKER='${MONIKER} >> $HOME/.bash_profile 
echo 'export CHAIN='${CHAIN} >> $HOME/.bash_profile 
echo 'export WALLET_NAME='${WALLET_NAME} >> $HOME/.bash_profile 
source $HOME/.bash_profile

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

cardchaind init $MONIKER --chain-id $CHAIN

Вносим имя сети в конфиг

cardchaind config chain-id $CHAIN

Скачиваем генезис файл

wget -O $HOME/.Cardchain/config/genesis.json https://raw.githubusercontent.com/DecentralCardGame/Testnet/main/genesis.json

Сбрасываем состояние валидатора

cardchaind unsafe-reset-all --home $HOME/.Cardchain

Добавляем пиры

PEERS="56d11635447fa77163f31119945e731c55e256a4@45.136.28.158:26658"
sed -i -e "/persistent_peers =/ s/= .*/= \"$PEERS\"/" $HOME/.Cardchain/config/config.toml

Задаем минимальное значение газа

GAS="0.001ubpf"
sed -i -e "/minimum-gas-prices =/ s/= .*/= \"$GAS\"/" $HOME/.Cardchain/config/app.toml

Качаем адресбук (дополнительные пиры сети)

wget -O $HOME/.Cardchain/config/addrbook.json "https://raw.githubusercontent.com/obajay/nodes-Guides/main/Crowd%20Control/addrbook.json"

Создаем сервис для ноды

sudo tee /etc/systemd/system/сardchaind.service > /dev/null <<EOF
[Unit]
Description=Cardchain_node
After=network-online.target
[Service]
User=$USER
ExecStart=$(which сardchaind) start
Restart=always
RestartSec=10
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF

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

sudo systemctl daemon-reload
sudo systemctl enable сardchaind
sudo systemctl restart сardchaind

Ждем пока нода синзронизируется. Проверяем состояние так

curl -s localhost:26657/status

Создаем кошелек

cardchaind keys add $WALLET_NAME

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

WALLET_ADDRESS=$(cardchaind keys show $WALLET_NAME -a)
echo 'export WALLET_ADDRESS='${WALLET_ADDRESS} >> $HOME/.bash_profile
source $HOME/.bash_profile

Запрашиваем монеты для создания валидатора на кошелек тут

После запроса проверяем баланс

cardchaind query bank balances $WALLET_ADDRESS

И создаем своего валидатора

cardchaind tx staking create-validator \
  --from=$WALLET_NAME \
  --amount=1000000ubpf \
  --moniker=$MONIKER \
  --chain-id=$CHAIN \
  --commission-rate=0.1 \
  --commission-max-rate=0.5 \
  --commission-max-change-rate=0.1 \
  --min-self-delegation=1 \
  --pubkey=$(cardchaind tendermint show-validator) \
  --details="" \
  --fees 300ubpf \
  --yes

После успешного проведения команды, валидатор будет запущен.

Посмотреть логи можно следующей командой

journalctl -u cardchaind.service -f -o cat

Задаем переменную с адресом валидатора

VALOPER=$(cardchaind keys show $WALLET_ADDRESS --bech val -a)

И добавляем ее в баш профиль

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

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

cardchaind query staking validator $VALOPER

Если ваша нода попала в тюрьму, то выход следующей командой

cardchaind tx slashing unjail --from $WALLET_NAME --chain-id $CHAIN

Делегировать средства с кошелька на своего валидатора (сумму вводите сами)

cardchaind tx staking delegate $VALOPER 1000ubpf --from $WALLET_NAME --chain-id $CHAIN

Большое спасибо, за внимание и уделенное время

Наш телеграмм канал по нодам — https://t.me/mmsnodes
Наш телеграмм чат по нодам - https://t.me/mmsnodeschat
Наш телеграмм канал по экосистеме Cosmos - https://t.me/cosmochannel_mms

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