Способи оплати Abuse

Mantra: опис, встановлення Node

19.08.2024, 17:04
Зміст:

MANTRA діє як блокчейн першого рівня, пріоритетом якого є безпека, що відповідає всім нормативним вимогам та вимогам відповідності. Побудований на основі Cosmos SDK для розробників та установ, MANTRA Chain має на меті усунути всі перешкоди, які заважають плавному переходу реальних активів (RWA) на блокчейн. MANTRA Chain забезпечує інтероперабельну токенізацію неліквідних активів через мережу IBC і пропонує різні модулі для забезпечення відповідності, активів і токенів.

Встановлення вузла

Mantra

Мінімальні системні вимоги:

  1. Тип вузла: Testnet
  2. ПРОЦЕСОР: 4
  3. ОПЕРАТИВНА ПАМ'ЯТЬ: 8 ГБ
  4. Сховище: 150 ГБ

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

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

Ручне встановлення

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

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

Перейдіть до встановлення 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

Збірка MantraChain:

cd $HOME && mkdir -p go/bin/
wget https://github.com/MANTRA-Finance/public/releases/download/v2.0.0/mantrachaind-2.0.0-linux-amd64.tar.gz
tar -xvzf mantrachaind-2.0.0-linux-amd64.tar.gz
chmod +x mantrachaind
rm -rf mantrachaind-2.0.0-linux-amd64.tar.gz
mv mantrachaind $HOME/go/bin

mantrachaind version --long | grep -e commit -e version
Версия: 2.0.0
Коммит: c0b4618

Ініціалізація вузла

mantrachaind init STAVR_guide --chain-id=mantra-hongbai-1

mantrachaind config chain-id mantra-hongbai-1

Створіть або відновіть гаманець

mantrachaind keys add <name_wallet>

або

mantrachaind keys add <name_wallet> --recover

Завантаження файлу генезису

wget -L -O $HOME/.mantrachain/config/genesis.json "https://raw.githubusercontent.com/111STAVR111/props/main/Mantra/genesis.json"

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

Налаштування мінімальної ціни газу, піків та інших параметрів

sed -i.bak -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = "0.0002uom"/;" ~/.mantrachain/config/app.toml
external_address=$(wget -qO- eth0.me)
sed -i.bak -e "s/^external_address *=.*/external_address = "$external_address:26656"/" $HOME/.mantrachain/config/config.toml
peers=""
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = "$peers"/" $HOME/.mantrachain/config/config.toml
seeds=""
sed -i.bak -e "s/^seeds =.*/seeds = "$seeds"/" $HOME/.mantrachain/config/config.toml
sed -i 's/max_num_inbound_peers =.*/max_num_inbound_peers = 50/g' $HOME/.mantrachain/config/config.toml
sed -i 's/max_num_outbound_peers =.*/max_num_outbound_peers = 50/g' $HOME/.mantrachain/config/config.toml

Налаштування очищення даних (за бажанням)

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

Відключення індексатора (необов'язково)

indexer="null" &&
sed -i -e "s/^indexer *=.*/indexer = "$indexer"/" $HOME/.mantrachain/config/config.toml
Загрузка addrbook
bash
Copy code
wget -O $HOME/.mantrachain/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Mantra/addrbook.json"

Створення сервісного файлу

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

Налаштування StateSync для тестової мережі Mantra

SNAP_RPC=https://mantra.rpc.t.stavr.tech:443
peers="b6943ba9d189c545d92051250d2a3641f2216b2b@mantra-t.seed.stavr.tech:36056"
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = "$peers"/" $HOME/.mantrachain/config/config.toml
LATEST_HEIGHT=$(curl -s $SNAP_RPC/block | jq -r .result.block.header.height); 
BLOCK_HEIGHT=$((LATEST_HEIGHT - 1000)); 
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"| ; 
s|^(seeds[[:space:]]+=[[:space:]]+).*$|1""|" $HOME/.mantrachain/config/config.toml
mantrachaind tendermint unsafe-reset-all --home $HOME/.mantrachain
curl -o - -L https://mantra-t.wasm.stavr.tech/wasm-mantra.tar.lz4 | lz4 -c -d - | tar -x -C $HOME/.mantrachain --strip-components 2
wget -O $HOME/.mantrachain/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Mantra/addrbook.json"
sudo systemctl restart mantrachaind && journalctl -fu mantrachaind -o cat

Завантаження знімка для тестової мережі (оновлюється кожні 5 годин)

cd $HOME
apt install lz4
sudo systemctl stop mantrachaind
cp $HOME/.mantrachain/data/priv_validator_state.json $HOME/.mantrachain/priv_validator_state.json.backup
rm -rf $HOME/.mantrachain/data
curl -o - -L https://mantra-t.snapshot.stavr.tech/mantra-snap.tar.lz4 | lz4 -c -d - | tar -x -C $HOME/.mantrachain --strip-components 2
curl -o - -L https://mantra-t.wasm.stavr.tech/wasm-mantra.tar.lz4 | lz4 -c -d - | tar -x -C $HOME/.mantrachain --strip-components 2
mv $HOME/.mantrachain/priv_validator_state.json.backup $HOME/.mantrachain/data/priv_validator_state.json
wget -O $HOME/.mantrachain/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Mantra/addrbook.json"
sudo systemctl restart mantrachaind && journalctl -fu mantrachaind -o cat

Запуск вузла

sudo systemctl daemon-reload
sudo systemctl enable mantrachaind
sudo systemctl restart mantrachaind && sudo journalctl -fu mantrachaind -o cat

Створення валідатора

mantrachaind tx staking create-validator 
--commission-rate 0.1 
--commission-max-rate 1 
--commission-max-change-rate 1 
--min-self-delegation "1" 
--amount 1000000uom 
--pubkey $(mantrachaind tendermint show-validator) 
--from <кошелёк> 
--moniker="STAVR_guide" 
--chain-id mantra-hongbai-1 
--fees 35uom 
--gas 350000 
--identity="" 
--website="" 
--details="" -y

Видалення вузла

sudo systemctl stop mantrachaind
sudo systemctl disable mantrachaind
rm /etc/systemd/system/mantrachaind.service
sudo systemctl daemon-reload
cd $HOME
rm -rf .mantrachain
rm -rf $(which mantrachaind)

Необов'язково

Downgrade
sudo wget -O /usr/lib/libwasmvm.x86_64.so https://github.com/CosmWasm/wasmvm/releases/download/v1.3.1/libwasmvm.x86_64.so
wget https://github.com/MANTRA-Finance/public/raw/main/mantrachain-hongbai/mantrachaind-linux-amd64.zip
unzip mantrachaind-linux-amd64.zip
rm mantrachaind-linux-amd64.zip
mv mantrachaind $(which mantrachaind)

Знімок

sudo systemctl stop mantrachaind
cp $HOME/.mantrachain/data/priv_validator_state.json $HOME/.mantrachain/priv_validator_state.json.backup
rm -rf $HOME/.mantrachain/data
curl -o - -L https://mantra-t.snapshot.stavr.tech/mantra-snap.tar.lz4 | lz4 -c -d - | tar -x -C $HOME/.mantrachain --strip-components 2
curl -o - -L https://mantra-t.wasm.stavr.tech/wasm-mantra.tar.lz4 | lz4 -c -d - | tar -x -C $HOME/.mantrachain --strip-components 2
mv $HOME/.mantrachain/priv_validator_state.json.backup $HOME/.mantrachain/data/priv_validator_state.json
wget -O $HOME/.mantrachain/config/addrbook.json "https://raw.githubusercontent.com/111STAVR111/props/main/Mantra/addrbook.json"
sudo systemctl restart mantrachaind && journalctl -fu mantrachaind -o cat

Оновлення до версії 2.0.0 (після виконання цих команд перезавантаження вузла неможливе)

wget https://github.com/MANTRA-Finance/public/releases/download/v2.0.0/mantrachaind-2.0.0-linux-amd64.tar.gz
tar -xvzf mantrachaind-2.0.0-linux-amd64.tar.gz
chmod +x mantrachaind
rm -rf mantrachaind-2.0.0-linux-amd64.tar.gz
mv mantrachaind $(which mantrachaind)
mantrachaind version --long | grep -e commit -e version
#commit: c0b4618
#version: 2.0.0
sudo systemctl restart mantrachaind && sudo journalctl -fu mantrachaind -o cat

Корисні інструменти

  1. EXPLORER-T: https://explorer.stavr.tech/MANTRA-Hongbai Індексатор "ON".
  2. API-T: https://mantra.api.t.stavr.tech
  3. RPC-T: https://mantra.rpc.t.stavr.tech Інтервал між знімками = 1000
  4. gRPC-T: mantra.grpc.t.stavr.tech:3601

Seed-T

b6943ba9d189c545d92051250d2a3641f2216b2b@mantra-t.seed.stavr.tech:36056

Addrbook-T

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

Genesis-T

wget -L -O $HOME/.mantrachain/config/genesis.json "https://raw.githubusercontent.com/111STAVR111/props/main/Mantra/genesis.json"

WASM-T

curl -o - -L https://mantra-t.wasm.stavr.tech/wasm-mantra.tar.lz4 | lz4 -c -d - | tar -x -C $HOME/.mantrachain --strip-components 2

auto_install_script-T

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

Оновлення версії: 2.0.0 (14.08.24)

at Height -> 1633260
cd $HOME
wget https://github.com/MANTRA-Finance/public/releases/download/v2.0.0/mantrachaind-2.0.0-linux-amd64.tar.gz
tar -xvzf mantrachaind-2.0.0-linux-amd64.tar.gz
chmod +x mantrachaind
rm -rf mantrachaind-2.0.0-linux-amd64.tar.gz
mv mantrachaind $(which mantrachaind)
mantrachaind version --long | grep -e commit -e version
#commit: c0b4618
#version: 2.0.0
sudo systemctl restart mantrachaind && sudo journalctl -fu mantrachaind -o cat

Корисні команди

  1. mantrachaind status 2>&1 | jq .NodeInfo
  2. mantrachaind status 2>&1 | jq .SyncInfo
  3. mantrachaind status 2>&1 | jq .ValidatorInfo

Перевірка логів вузла

sudo journalctl -fu mantrachaind  -o cat

Перевірка стану сервісу

sudo systemctl status mantrachaind  

Перезапуск сервісу

sudo systemctl restart mantrachaind 

Зупинка сервісу

sudo systemctl stop mantrachaind 

Запуск сервісу

sudo systemctl start mantrachaind 

Перезавантаження/зупинка/вимикання

sudo systemctl daemon-reload
sudo systemctl disable mantrachaind 
sudo systemctl enable mantrachaind 

Ваш одноліток

echo $(mantrachaind tendermint show-node-id)'@'$(curl -s ifconfig.me)':'$(cat $HOME/.mantrachain/config/config.toml | grep -oPm1 "(?<=^laddr = ").*(?=")" | cut -d ":" -f3)

Видалити

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