June 13, 2022

Установка ноды Kijura

Приветствую всех, сегодня мы расскажем о установке ноды Kijura

13.06.2022 Kijura запустили новый тестнет под названием harpoon-4

Требования к серверу стандартные для нод на космосе:

4x CPUs

8GB RAM

200GB of storage (SSD or NVME)

Для начала обновим наш сервер

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

Ставим Golang

ver="1.18.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
git clone https://github.com/Team-Kujira/core kujira-core && cd kujira-core
git checkout v0.4.0
make install

Устанавливаем переменные

KUJIRA_MONIKER="Ваш моникер"
KUJIRA_WALLET="Ваше название кошелька"
KUJIRA_CHAIN="harpoon-4"

Экспортируем переменные в баш

echo 'export KUJIRA_MONIKER='${KUJIRA_MONIKER} >> $HOME/.bash_profile
echo 'export KUJIRA_WALLET='${KUJIRA_WALLET} >> $HOME/.bash_profile
echo 'export KUJIRA_CHAIN='${KUJIRA_CHAIN} >> $HOME/.bash_profile
source $HOME/.bash_profile

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

kujirad init $KUJIRA_MONIKER --chain-id $KUJIRA_CHAIN

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

kujirad config chain-id $KUJIRA_CHAIN
kujirad config keyring-backend file

Скачиваем генезис и переносим в рабочую папку

wget -qO $HOME/.kujira/config/genesis.json https://raw.githubusercontent.com/Team-Kujira/networks/master/testnet/harpoon-4.json

Настраиваем время ожидания

sed -i -e "s/^timeout_commit *=.*/timeout_commit = \"1500ms\"/" $HOME/.kujira/config/config.toml

Устанавливаем минимальную цену на комиссию

sed -i -e "s/^minimum-gas-prices *=.*/minimum-gas-prices = \"0.00125ukuji\"/" $HOME/.kujira/config/app.toml

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

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

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

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

indexer="null"

нsed -i -e "s/^indexer *=.*/indexer = \"$indexer\"/" $HOME/.kujira/config/config.toml

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

PEERS="87ea1a43e7eecdd54399551b767599921e170399@52.215.221.93:26656,021b782ba721e799cd3d5a940fc4bdad4264b148@65.108.103.236:16656,1d6f841271a1a3f78c6772b480523f3bb09b0b0b@15.235.47.99:26656,ccd2861990a98dc6b3787451485b2213dd3805fa@185.144.99.234:26656,909b8da1ea042a75e0e5c10dc55f37711d640388@95.216.208.150:53756,235d6ac8aebf5b6d1e6d46747958c6c6ff394e49@95.111.245.104:26656,b525548dd8bb95d93903b3635f5d119523b3045a@194.163.142.29:26656,26876aff0abd62e0ab14724b3984af6661a78293@139.59.38.171:36347,21fb5e54874ea84a9769ac61d29c4ff1d380f8ec@188.132.128.149:25656,06ebd0b308950d5b5a0e0d81096befe5ba07e0b3@193.31.118.143:25656,f9ee35cf9aec3010f26b02e5b3354efaf1c02d53@116.203.135.192:26656,c014d76c1a0d1e0d60c7a701a7eff5d639c6237c@157.90.179.182:29656,0ae4b755e3da85c7e3d35ce31c9338cb648bba61@164.92.187.133:26656,202a3d8bd5a0e151ced025fc9cbff606845c6435@49.12.222.155:26656"
sed -i -e "s/^seeds *=.*/seeds = \"$SEEDS\"/; s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.kujira/config/config.toml

Обнуляем данные блокчейна

kujirad tendermint unsafe-reset-all

Создаем сервисник

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

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

sudo systemctl daemon-reload && sudo systemctl enable kujirad && sudo systemctl start kujirad

На это этапе наблюдаем логи

journalctl -u kujirad -f -o cat

Проверяем синхронизацию

curl -s localhost:26657/status

Создаем кошелек и сохраняем мнемоник

kujirad keys add $KUJIRA_WALLET

Либо восстанавливаем адрес по мнемонике

kujirad keys add $KUJIRA_WALLET --recover

Записываем адрес в переменную

KUJIRA_ADDR=$(kujirad keys show $KUJIRA_WALLET -a)

Экспортируем переменную в баш

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

Смотрим баланс монет на кошельке

kujirad query bank balances $KUJIRA_ADDR

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

KUJIRA_VALOPER=$(kujirad keys show $KUJIRA_WALLET --bech val -a)

Экспортируем переменную в баш

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

Если нода синхронизирована, можно создавать валидатора

kujirad tx staking create-validator \
--from $KUJIRA_WALLET \
--amount=100000000ukuji \
--moniker=$KIJURA_MONIKER \
--chain-id=$KIJURA_CHAIN \
--commission-rate=0.07 \
--commission-max-rate=0.2 \
--commission-max-change-rate=0.01 \
--min-self-delegation=1 \
--pubkey=$(kujirad tendermint show-validator) \
--fees 5550ukuji

Застейкать на своего валидатора

kujirad tx staking delegate $KUJIRA_VALOPER "КоличествоМонет"ukuji --from $KUJIRA_WALLET --chain-id $KUJIRA_CHAIN --fees 5550ukuji

Важно!
Токены можно попросить у кого-нибудь в дискорде, после чего поднять валидатора, получить роль, потом можно будет разок запросить монет с крана

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

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

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