Ноды 💻
June 1, 2023

Cascadia Testnet - установка ноды

Cascadia - это блокчейн с новым подходом к созданию блоков и алгоритмом консенсуса, называемым dPoS. Этот блокчейн использует модульную архитектуру, где разные процессы, такие как достижение консенсуса, работают на разных уровнях криптографии

Минимальные системные требования

CPU 4

RAM 8GB

Storage 150GB

Подготовка сервера

sudo apt update && sudo apt upgrade -y && \
sudo apt install curl tar wget clang pkg-config libssl-dev libleveldb-dev jq build-essential bsdmainutils git make ncdu htop screen unzip bc fail2ban htop -y

Upgraded version: 0.1.4

sudo systemctl stop cascadiad
cd $HOME
curl -L https://github.com/CascadiaFoundation/cascadia/releases/download/v0.1.4/cascadiad-v0.1.4-linux-amd64 -o cascadiad
chmod +x cascadiad
sudo mv cascadiad $(which cascadiad)
sudo systemctl restart cascadiad
cascadiad version --long | grep -e version -e commit
# version: 0.1.4 
# commit: b794758c07ab77669877e9a11aa8dd14f4372657

Установка GO 1.20.3

ver="1.20.3" && \
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

Сборка 07.08.23

cd $HOME
git clone https://github.com/cascadiafoundation/cascadia && cd cascadia
git checkout v0.1.4
make install
cascadiad version --long | grep -e version -e commit
#commit: b794758c07ab77669877e9a11aa8dd14f4372657
#version: 0.1.4
cascadiad init <node name> --chain-id cascadia_6102-1
cascadiad config chain-id cascadia_6102-1

где <node name> имя вашей ноды

Создать или восстановить кошелек

cascadiad keys add <walletname>

<walletname> имя вашего кошелька ( не адрес )

*Для восстановления используем флаг --recover

cascadiad keys add <walletname> --recover

Скачать файл генезиса

wget -O $HOME/.cascadiad/config/genesis.json "https://raw.githubusercontent.com/KokosP/cascadia/master/genesis.json"

(Необязательно) Проверьте контрольную сумму файла Genesis

sha256sum $HOME/.cascadiad/config/genesis.json

74ea3c84182028300d0c101c5cf017a055782c595ed91e4be3638380f0169582

Настройте минимальную цену на газ, пиры и сиды

sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"0.025aCC\"/;" ~/.cascadiad/config/app.toml
sed -i -e "s/^filter_peers *=.*/filter_peers = \"true\"/" $HOME/.cascadiad/config/config.toml
external_address=$(wget -qO- eth0.me) 
sed -i.bak -e "s/^external_address *=.*/external_address = \"$external_address:26656\"/" $HOME/.cascadiad/config/config.toml
peers="1d61222b7b8e180aacebfd57fbd2d8ab95ebdc4c@65.109.93.152:35656"
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$peers\"/" $HOME/.cascadiad/config/config.toml
seeds=""
sed -i.bak -e "s/^seeds =.*/seeds = \"$seeds\"/" $HOME/.cascadiad/config/config.toml
sed -i 's/max_num_inbound_peers =.*/max_num_inbound_peers = 50/g' $HOME/.cascadiad/config/config.toml
sed -i 's/max_num_outbound_peers =.*/max_num_outbound_peers = 50/g' $HOME/.cascadiad/config/config.tomloml

Создать сервисный файл

sudo tee /etc/systemd/system/cascadiad.service > /dev/null <<EOF
[Unit]
Description=Cascadia Foundation
After=network-online.target

[Service]
User=$USER
ExecStart=$(which cascadiad) start
Restart=always
RestartSec=3
LimitNOFILE=4096

[Install]
WantedBy=multi-user.target
EOF

Скачать addrbook

wget -O $HOME/.cascadiad/config/addrbook.json "https://raw.githubusercontent.com/KokosP/cascadia/master/addrbook.json"

Запускаем

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

Запросить токены или через ветку #fauset и дождаться полной синхронизации ноды

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

cascadiad tx staking create-validator \
  --amount "10000000000000000000"aCC \
  --from Имя_кошелька\
  --commission-max-change-rate "0.2" \
  --commission-max-rate "0.5" \
  --commission-rate "0.1" \
  --min-self-delegation "1" \
  --pubkey  $(cascadiad tendermint show-validator) \
  --moniker "Имя_вашей_ноды" \
  --chain-id cascadia_6102-1 \
  --details="" \
  --identity="" \
  --gas-prices 7aCC \
  --gas 250000 \
  --website="" -y

После создания валидатора обязательно сохраняем файл priv_validator_key.json

Информация о синхронизации

cascadiad status 2>&1 | jq .SyncInfo

NodeINfo

cascadiad status 2>&1 | jq .NodeInfo

Проверить журналы узла

sudo journalctl -u cascadiad -f -o cat

Проверить баланс

cascadiad query bank balances quicksilver...addressdefund1yjgn7z09ua5436gt67

Заделегировать себе в стейк (так отправляется 1 монетa)

cascadiad tx staking delegate cascadiavaloper_адрес 1000000aCC --from имя_кошелька --chain-id=cascadia_6102-1 --gas-prices=7aCC

Отправить монеты на другой адрес

cascadiad tx bank send имя_кошелька <address> 1000000aCC --from имя_кошелька --chain-id=cascadia_6102-1 --gas-prices=7aCC

Выбраться из тюрьмы

cascadiad tx slashing unjail --from <name_wallet> --chain-id=cascadia_6102-1 --gas-prices=7aCC

Разделегировать (так выводится 1 монетa)

cascadiad tx staking unbond <valoper_address> 1000000aCC --from имя_кошелька --chain-id=cascadia_6102-1 --gas-prices=7aCC

Удалить Ноду

sudo systemctl stop cascadiad && \
sudo systemctl disable cascadiad && \
rm /etc/systemd/system/cascadiad.service && \
sudo systemctl daemon-reload && \
cd $HOME && \
rm -rf cascadia && \
rm -rf .cascadiad && \
rm -rf $(which cascadiad)

Website

Telegram

Directory

Medium