Начини плаћања Abuse

Контрола гомиле: Инсталирање и рад са чвором

25.09.2024, 15:45

Crowd Control је колекционарска карташка игра заснована на блокчејну где играчи могу да креирају сопствене карте и да комуницирају са другим члановима екосистема. Овај чланак пружа детаљна упутства о томе како да инсталирате и конфигуришете чвор за тестмрежу Crowd Control.

Минимални системски захтеви

  • Тип чвора: Тестнет.
  • Процесор: 4.
  • РАМ меморија: 8 ГБ.
  • Меморија: 150 ГБ.

Аутоматска инсталација чворова

Да бисте поједноставили процес инсталације, можете користити аутоскрипт:

 wget -O crowd https://raw.githubusercontent.com/111STAVR111/props/main/Crowd/crowd && chmod +x crowd && ./crowd

Ручна инсталација чвора

Припрема сервера

Прво, потребно је да ажурирате и инсталирате све потребне пакете на серверу:

 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 chrony liblz4-tool -y

Инсталирање Go 1.21.6

 ver="1.21.6" 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" >> $HOME/.bash_profile source $HOME/.bash_profile go version

Cardchaind верзија 11.07.24

cd $HOME && mkdir -p go/bin/ git clone https://github.com/DecentralCardGame/Cardchain wget -O Cardchaind https://github.com/DecentralCardGame/Cardchain/releases/download/v0.16.0/cardchaind chmod +x Cardchaind mv $HOME/Cardchaind /usr/local/bin Cardchaind version --long | grep -e commit -e version

Проверите верзију:

 version: 0.16.0 commit: be4d9f600b2274bf9dce0ec944c3ba175fa7db8e

Иницијализација

Иницијализујте чвор навођењем имена и ИД-а мреже:

 Cardchaind init <your_node_name> --chain-id cardtestnet-12 Cardchaind config chain-id cardtestnet-12

Креирајте или вратите новчаник

 Cardchaind keys add <walletname> Cardchaind keys add <walletname> --recover

Учитавање Генезиса

Преузмите датотеку Genesis за синхронизацију са мрежом:

 wget -O $HOME/.cardchaind/config/genesis.json "https://cardchain.crowdcontrol.network/files/genesis.json" sha256sum $HOME/.cardchaind/config/genesis.json

Проверите хеш:

 1aedb68136b19f16edfe9c7e4e73a38f0fbc93cb13c555ca29b3493b40facc58

Подешавање минималне цене гаса, конкурената и других параметара

sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = "0.0ubpf"/;" ~/.cardchaind/config/app.toml external_address=$(wget -qO- eth0.me) sed -i.bak -e "s/^external_address *=.*/external_address = "$external_address:26656"/" $HOME/.cardchaind/config/config.toml peers="86b643ba743ccc78e6e086120d43c96f85872601@202.61.225.157:20656" sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = "$peers"/" $HOME/.cardchaind/config/config.toml

Настројка Обрезивање (опционално)

Дла оптимизации хранениа данних можете настроить обрезивање:

 pruning="custom" pruning_keep_recent="1000" pruning_keep_every="0" pruning_interval="10" sed -i -e "s/^pruning *=.*/pruning = "$pruning"/" $HOME/.cardchaind/config/app.toml sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = "$pruning_keep_recent"/" $HOME/.cardchaind/config/app.toml

Индексатор (необазательно)

 indexer="null" && sed -i -e "s/^indexer *=.*/indexer = "$indexer"/" $HOME/.cardchaind/config/config.toml

Преузми адресну књигу

 wget -O $HOME/.cardchaind/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Crowd/addrbook.json"

Создание фајла сервиса

Создајте сервисниј фајл дла автоматического запуска ноди:

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

StateSync Crowd Testnet

SNAP_RPC=https://crowd.rpc.t.stavr.tech:443 PEERS="ec585d7fb38b67619dcb79aad90722f0eaf0faa3@crowd.peer.stavr.tech:21206" sed -i.bak -e "s/^seeds *=.*/seeds = "$SEEDS"/; s/^persistent_peers *=.*/persistent_peers = "$PEERS"/" $HOME/.cardchaind/config/config.toml LATEST_HEIGHT=$(curl -s $SNAP_RPC/block | jq -r .result.block.header.height)  && BLOCK_HEIGHT=$((LATEST_HEIGHT - 100))  && TRUST_HASH=$(curl -s "$SNAP_RPC/block?height=$BLOCK_HEIGHT" | jq -r .result.block_id.hash);  echo $LATEST_HEIGHT $BLOCK_HEIGHT $TRUST_HASH sed -i.bak -E "s|^(enable[[:space:]]+=[[:space:]]+).*$|1true| ;  s|^(rpc_servers[[:space:]]+=[[:space:]]+).*$|1"$SNAP_RPC,$SNAP_RPC"| ;  s|^(trust_height[[:space:]]+=[[:space:]]+).*$|1$BLOCK_HEIGHT| ;  s|^(trust_hash[[:space:]]+=[[:space:]]+).*$|1"$TRUST_HASH"|" $HOME/.cardchaind/config/config.toml;  Cardchaind tendermint unsafe-reset-all wget -O $HOME/.cardchaind/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Crowd/addrbook.json" sudo systemctl restart Cardchaind && journalctl -u Cardchaind -f -o cat

СнапСхот Тестнет обновлаетса каждие 5 часов

cd $HOME apt install lz4 sed -i.bak -E "s|^(enable[[:space:]]+=[[:space:]]+).*$|1false|" ~/.cardchaind/config/config.toml sudo systemctl stop Cardchaind cp $HOME/.cardchaind/data/priv_validator_state.json $HOME/.cardchaind/priv_validator_state.json.backup rm -rf $HOME/.cardchaind/data curl -o - -L http://crowd.snapshot.stavr.tech:1013/crowd/crowd-snap.tar.lz4 | lz4 -c -d - | tar -x -C $HOME/.cardchaind --strip-components 2 mv $HOME/.cardchaind/priv_validator_state.json.backup $HOME/.cardchaind/data/priv_validator_state.json wget -O $HOME/.cardchaind/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Crowd/addrbook.json" sudo systemctl restart Cardchaind && journalctl -u Cardchaind -f -o cat

Запуск чворова

Теперь можете запустити ноду и следить за ее статусом:

 sudo systemctl daemon-reload sudo systemctl enable Cardchaind sudo systemctl restart Cardchaind && sudo journalctl -u Cardchaind -f -o cat

Создание валидатора

Когда нода синхронизована, создајте валидатора:

 Cardchaind tx staking create-validator  --amount 1000000ubpf  --from <walletName>  --commission-max-change-rate "0.2"  --commission-max-rate "1"  --commission-rate "0.1"  --min-self-delegation "1"  --details=""  --identity=""  --pubkey $(Cardchaind tendermint show-validator)  --moniker <validator_name>  --fees 300ubpf  --chain-id cardtestnet-12 -y

Удалити узел

 sudo systemctl stop Cardchaind sudo rm /etc/systemd/system/Cardchaind.service sudo rm -rf $HOME/.cardchaind/ sudo rm -rf Testnet sudo rm -rf $(which Cardchaind)

Полезние команди

Проверите статус чвора:

 Cardchaind status 2>&1 | jq .NodeInfo Cardchaind status 2>&1 | jq .SyncInfo Cardchaind status 2>&1 | jq .ValidatorInfo

Провера логова чворова:

 sudo journalctl -fu Cardchaind -o cat

Провера статуса услуге:

 sudo systemctl status Cardchaind

Поново покрените услугу:

 sudo systemctl restart Cardchaind

Заустави услугу:

 sudo systemctl stop Cardchaind

Покрените услугу:

 sudo systemctl start Cardchaind

Поново покрени/Онемогући/Омогући

 sudo systemctl daemon-reload
 sudo systemctl disable Cardchaind
 sudo systemctl enable Cardchaind

Ваш вршњак

 echo $(Cardchaind tendermint show-node-id)'@'$(wget -qO- eth0.me)':'$(cat $HOME/.cardchaind/config/config.toml | sed -n '/Address to listen for incoming connection/{n;p;}' | sed 's/.*://; s/".*//')

Рад са кључевима

Нови кључ или опоравак кључа

 Cardchaind keys add Wallet_Name

ИЛИ

 Cardchaind keys add Wallet_Name --recover

Провери све кључеве

 Cardchaind keys list

Провери стање

 Cardchaind query bank balances cc...addressjkl1yjgn7z09ua9vms259j

Тастер за брисање

 Cardchaind keys delete Wallet_Name

Извоз кључа

 Cardchaind keys export wallet

Увези кључ

 Cardchaind keys import wallet wallet.backup

Рад са валидатором

Уреди валидатор

 Cardchaind tx staking edit-validator  --new-moniker "Your_Moniker"  --identity "Keybase_ID"  --details "Your_Description"  --website "Your_Website"  --security-contact "Your_Email"  --chain-id cardtestnet-11  --commission-rate 0.05  --from Wallet_Name  --gas 350000 -y

Ваша Валопер адреса

 Cardchaind keys show Wallet_Name --bech val

Ваша Валкон адреса

 Cardchaind tendermint show-address

Информације о вашем валидатору

 Cardchaind query staking validator ccvaloperaddress......

Информације о затвору

 Cardchaind query slashing signing-info $(Cardchaind tendermint show-validator)

Извући из затвора

 Cardchaind tx slashing unjail --from Wallet_name --chain-id cardtestnet-11 --gas 350000 -y

Листа активних валидатора

 Cardchaind 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

Листа онемогућених валидатора

Cardchaind q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_UNBONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " t " + .description.moniker' | sort -gr | nl

Провера да ли се ваш кључ подудара са валидатором ( Win - добро, Lose - лоше)

 VALOPER=Enter_Your_valoper_Here [[ $(Cardchaind q staking validator $VALOPER -oj | jq -r .consensus_pubkey.key) = $(Cardchaind status | jq -r .ValidatorInfo.PubKey.value) ]] && echo -e "nYou winn" || echo -e "nYou losen"

Повуците све награде од свих валидатора

 Cardchaind tx distribution withdraw-all-rewards --from Wallet_Name --chain-id cardtestnet-11 --gas 350000 -y

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

 Cardchaind tx distribution withdraw-rewards ccvaloper1a........ --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11--commission -y

Делегирајте токене свом валидатору

 Cardchaind tx staking delegate ccvalpoer........ "100000000"ubpf --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y

Делегирајте токене другом валидатору

 Cardchaind tx staking delegate ccvalpoer........ "100000000"ubpf de --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y

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

 Cardchaind tx staking redelegate ccvalpoer........ ccvalpoer........ "100000000"ubpf --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y

Одвојите токене од вашег валидатора или другог валидатора

 Cardchaind tx staking unbond ccvalpoer........ "100000000"ubpf --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y Cardchaind tx staking unbond ccvalpoer........ "100000000"ubpf --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y

Пренос токена између новчаника

 Cardchaind tx bank send ccaddress............ ccaddress........... "1000000000"ubpf --gas 350000 --chain-id=cardtestnet-11 -y

Контрола

Погледајте све понуде

 Cardchaind query gov proposals

Погледајте одређену понуду

 Cardchaind query gov proposal 1

Гласајте „за“

 Cardchaind tx gov vote 1 yes --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y

Гласајте „против“

 Cardchaind tx gov vote 1 no --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y

Уздржани

 Cardchaind tx gov vote 1 abstain --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y

Гласајте „не“ (са правом вета)

 Cardchaind tx gov vote 1 no_with_veto --from Wallet_Name --gas 350000 --chain-id=cardtestnet-11 -y

Трансфер ИБЦ-а

 Cardchaind tx ibc-transfer transfer transfer channel-2 Your_OSMOaddress............ "100000"ubpf --from Your_Crowd_Wallet_Name ---gas 350000 --chain-id=cardtestnet-11 -y