March 25, 2023

Установка ноды Althea (althea_7357-1 ) 

Здравствуйте, сегодня мы расскажем про установку ноды althea_7357-1

Заявленные требования для сервера на сегодняшний день следующие: 4vCPUs, 2GB RAM и 20GB Disk space

После подключения к серверу, через терминал, обновляем его:

sudo apt-get update && sudo apt upgrade -y 

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

sudo apt install make clang pkg-config libssl-dev build-essential git gcc chrony curl jq ncdu bsdmainutils htop net-tools lsof fail2ban liblz4-tool vim wget -y

Устанавливаем GO версии 1.20.2 и после установки проверяем версию:

ver="1.20.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
wget https://github.com/althea-net/althea-chain/releases/download/v0.3.2/althea-v0.3.2-linux-amd64
cp althea-v0.3.2-linux-amd64 althea
chmod +x althea
sudo mv althea /usr/local/bin/
cd $HOME

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

althea version --long

Вывод:

version: v0.3.2

Задаем переменные для нашего удобства (ALTHEA_CHAIN оставляем без изменений, в остальные переменные вписываем свои значения):

ALTHEA_CHAIN="althea_7357-1"
ALTHEA_MONIKER="YOUR_MONIKER_NAME" 
ALTHEA_WALLET="YOUR_WALLET_NAME"

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

echo 'export ALTHEA_CHAIN='${ALTHEA_CHAIN} >> $HOME/.bash_profile
echo 'export ALTHEA_MONIKER='${ALTHEA_MONIKER} >> $HOME/.bash_profile
echo 'export ALTHEA_WALLET='${ALTHEA_WALLET} >> $HOME/.bash_profile
source $HOME/.bash_profile

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

cd $HOME
althea init $ALTHEA_MONIKER --chain-id $ALTHEA_CHAIN

Прописывапем в конфиг имя сети и вывод сохранения кошельков

althea config chain-id $ALTHEA_CHAIN 
althea config keyring-backend os 

Скачиваем генезис:

wget -O genesis.json https://snapshots.polkachu.com/testnet-genesis/althea/genesis.json --inet4-only
mv genesis.json ~/.althea/config

Проверяем хэш гинезиса:

jq -S -c -M '' ~/.althea/config/genesis.json | shasum -a 256

Вывод:

8ebb5d0cfa92ce4f07d3d6415c074da86b61e1b7b3c6bb388b453818747f33ba

Задаем и прописываем сиды:

SEEDS="ade4d8bc8cbe014af6ebdf3cb7b1e9ad36f412c0@testnet-seeds.polkachu.com:12456"
PEERS="d320b861277a338daefec6e620daafe07fc5ee19@65.108.199.36:20036,698edcaf59b14f7bf50b681ef1ee3046fa062c77@65.109.92.235:11056,695f6de1a39a5f189015a50ef5f9df144a76b4d8@65.108.233.102:36656,382264d78149b62e679bf6d0b93dc74dd033fc05@65.108.2.41:26656,a51b45869b5403dc71251a69879c1eb1c3042bed@65.108.134.215:29336,dc67cbe058b802aa34f64715b44474c462b4317b@65.108.237.224:36656,a3ac64c5c84817f3694a866298399e6ad71ff26c@65.21.53.39:26656,c215cf295b05c1338fdf5070a7b2abde873f5a88@95.217.40.230:26656,7eb055628aee375914d7d265ef4bc01ea692fe95@65.109.82.106:31656,8af3c5f2e975150cbf2d57bea182c2ca0fb808d2@65.21.237.170:10456,a81cf8f7f330e2e09bec93c866214f7b3b336849@65.109.87.88:26356,2dee418b26b6b12933f5b0a8431c73f1478ca325@65.108.43.113:36656,8cd0cf98fa86c01796b07d230aa5261e06b1b37d@95.217.206.246:26656,1d9a103d1e24c590bdfb577537eddd19a322f886@65.109.92.240:17886,96320aaab7794933fddbc2bb101e54b8697c58e7@141.95.65.26:26656,c6e1ed7117cd56036cc51835945d155e9c474c01@167.235.144.3:26656,c831cd6ac278ab971eca94dda0c29191e8f39036@195.201.22.133:26656,31e4e58aed75f099eb5b71fd9fd48b48e4bf721a@5.75.170.207:26656,11e8f38e3c5601e4ab2333d5a5bbb108a39b8e1c@159.69.110.238:26656,4f5eb5164329a61fc898ac75849ae873c8e539c9@66.172.36.135:14656,24ae39234e1ceddc1585af9be8a6484edac79123@49.12.123.97:26656,3f9a20277d68b7fe52efbe84dad231af472d0190@162.55.235.69:29656,cc542d9fb5f93780fc4004aa67f2b502686a24e8@144.76.27.79:61056,53a4fe2e8eb17b307dfed6a88cbe5573617e34b5@89.71.164.61:28656,8203297aacaea1d889fcf36240484c9efc217bbd@116.202.156.106:26656,2cd7bd0bb40ed6f16ff7a9617ae8c7a74ce06e34@148.251.91.219:26656,04917b5810df2a380c1b18d83f577f1aba550818@222.106.187.14:53300,733e9d5f995c2866df9f2e1254551940f060a70c@51.159.159.112:26656,eab7a70812ba39094fc8bbf4f69f099123863b38@81.30.157.35:11656,ba247bdf826a9636a8276d6a00d8004755f6bb18@162.19.238.210:26656,ab3ba67d06d109e135f5cd22a3d4d6b1784e3a70@161.97.65.170:36656,87b67a8758306c61f8bb7504a0881cc837373633@140.82.38.208:26656,18643335ebbf1119ef5da9bbb2b65ce651a47ef1@5.9.106.214:26676,856ac01afa0163c27b69e1b25464427310120924@85.25.134.23:26656,6d97969912514e3583dee8e0cca15a383adbde6c@213.246.57.175:26656,0037b2dc30933fa5c027a83be39f0061253ff83b@5.189.157.140:26656,83147260a704b75283ca6da218516ee0eaa82956@170.64.156.36:26656,938388d1a011858d6238bf22944ab2dcba9b22a8@65.108.199.206:36656,e5990247cc7fde4f94b44f687e0a9bda84fffe55@141.94.193.28:55766,24598ff0818df0fa965a3d557050c2622f0c753c@15.235.80.84:11656,d5040e6aa2f190e04a39dc27e8199786a848e1cd@161.97.99.251:26156,067c31d25c63a6bc7d292232c95a1818eb3e8e31@45.83.123.202:26656,f6e3f995ba1c3ceed8bd556d9a23d2922d98a9a6@66.172.36.136:14656,14d07b999648922f50f85a18dd39456fc41c93aa@90.114.27.41:46656,e879e38393ce97be47aa7c7c3d12734d0331c46a@85.10.207.188:15656,1ad56beb27ba5b5698d828dbd9823a220c978dcf@103.195.103.59:26656,5df46d6901ca3487b640950cd0ffedd315536ca1@161.97.139.245:26656,0aac1fc75b4a613f6bb7d15c6250350d478227a6@66.45.231.30:11144,4f8729168c5454d04ff4a4d7b51986b2e97c68ff@165.232.104.13:26656,4f3add677b0e4c8dec8b81101ea82620a19d5d0a@65.21.199.148:26633,15e7baf69c0db5c25e26cd1f13eb0d52a7a708b5@142.202.241.235:26656,bdf94092f6dc380f6526f7b8b46b63192e95a033@173.212.222.167:29656,975393744d620d9dcb8dfd21c0282a6285766523@176.57.184.215:26656,13e103fdcb66ff4238ef5a228f5fadea5fee2ebd@65.109.85.52:26656,abc941c8539306d92b822ca787424ddd28eceb33@207.180.243.64:26656,937dcf8c45b7c64e5188a7036427f2ce86383035@95.165.89.222:24126,3aeffaa1ac7b6741110987cfae4604751ac7d865@107.22.132.229:26656,1991a3263255fc32d65b49335bcaee19f607c934@185.16.39.99:26656,90d692d481c1c4739ba8a7045b5552fa8d410901@88.99.164.158:17886,9aa8a73ea9364aa3cf7806d4dd25b6aed88d8152@190.2.136.144:11356" 
sed -i -e "s/^seeds *=.*/seeds = \"$SEEDS\"/; s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.althea/config/config.toml

Устанавливаем минимальную цену газа:

sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"0ualthea\"/;" ~/.althea/config/app.toml

Настраиваем прунинг:

pruning="custom"
pruning_keep_recent="100"
pruning_keep_every="0"
pruning_interval="10"

sed -i -e "s/^pruning *=.*/pruning = \"$pruning\"/" $HOME/.althea/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"$pruning_keep_recent\"/" $HOME/.althea/config/app.toml
sed -i -e "s/^pruning-keep-every *=.*/pruning-keep-every = \"$pruning_keep_every\"/" $HOME/.althea/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"$pruning_interval\"/" $HOME/.althea/config/app.toml

Отключаем индексацию:

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

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

sudo tee /etc/systemd/system/althea.service > /dev/null <<EOF
[Unit]
Description=ALTHEA Daemon
After=network-online.target

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

[Install]
WantedBy=multi-user.target
EOF

althea tendermint unsafe-reset-all --home $HOME/.althea

Запускаем сервис и смотрим логи:

sudo systemctl daemon-reload
sudo systemctl enable althea
sudo systemctl start althea
journalctl -f -u althea

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

althea status 2>&1 | jq .SyncInfo
После того как увидите "catching_up": false нода синхронизировалась

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

althea keys add $ALTHEA_WALLET

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

ALTHEA_ADDR=$(althea keys show $ALTHEA_WALLET -a)

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

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

Запрос токенов с крана

Проверка баланса

althea query bank balances $ALTHEA_ADDR

После синхронизации создаем валидатор, комисcию можете оставить или задать свою (в строке --amount цифрами прописываем сумму которую хотим делегировать)

althea tx staking create-validator \
--amount=1000000000000000000ualthea \
--pubkey=$(althea tendermint show-validator) \
--moniker=$ALTHEA_MONIKER \
--identity "" \
--website="" \
--details="" \
--chain-id=$ALTHEA_CHAIN \
--commission-rate="0.10" \
--commission-max-rate="0.20" \
--commission-max-change-rate="0.01" \
--min-self-delegation="1" \
--gas=auto \
--fees=50000ualthea \
--from=$ALTHEA_WALLET

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

ALTHEA_VALOPER=$(althea keys show $ALTHEA_WALLET --bech val -a)

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

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

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

althea query staking validator $ALTHEA_VALOPER

Редактирование валидатора:

althea tx staking edit-validator \
--chain-id=$ALTHEA_CHAIN \
--from=$ALTHEA_WALLET \
--new-moniker="" \
--identity="" \
--fees=10000ualthea

Теперь как делегировать средства на валидатор:(1000000000000000000ualthea = 1 Монета):

althea tx staking delegate $ALTHEA_VALOPER 1000000000000000000ualthea \
--from=$ALTHEA_WALLET \
--chain-id=$ALTHEA_CHAIN \
--gas=auto \
--fees=50000ualthea

Собрать комиссионные + реварды

althea tx distribution withdraw-rewards $ALTHEA_VALOPER \
--from=$ALTHEA_WALLET \
--chain-id=$ALTHEA_CHAIN \
--fees=50000ualthea \
--commission -y

Выход из тюрьмы:

althea tx slashing unjail \
--from $ALTHEA_WALLET \
--chain-id $ALTHEA_CHAIN

Удалить ноду:

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

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

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

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