May 16, 2022

Работа с Cosmos нодами на примере Archway

В этой статье представлены наиболее часто используемые (по моему мнению) команды при работе с нодами Cosmos.

ВАЖНО! Все, что находиться в "< >" меняем на свои значения, треугольные скобки убираем

Создать кошелек

archwayd keys add <wallet-name>

Не забываем сохранить мнемоник

Посмотреть список своих кошельков

archwayd keys list

Посмотреть свой valoper адрес

archwayd keys show <wallet-name> --bech val -a

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

archwayd q bank balances <wallet-addr> 

Отправить токены

archwayd tx bank send <wallet-name> <wallet-addr> <amount-of-tokens>utorii --chain-id=torii-1 --gas auto -y

Делегировать токены

archwayd tx staking delegate <valoper-addr> <amount-of-tokens>utorii --from <wallet-name> --chain-id=torii-1 --gas auto -y

Список активных валидаторов

 archwayd query staking validators --limit 2000 -o json | jq -r '.validators[] | select(.status=="BOND_STATUS_BONDED") | [.operator_address, .status, (.tokens|tonumber / pow(10; 6)), .description.moniker] | @csv' | column -t -s"," | sort -k3 -n -r

Список неактивных валидаторов

 archwayd query staking validators --limit 2000 -o json | jq -r '.validators[] | select(.status=="BOND_STATUS_UNBONDED") | [.operator_address, .status, (.tokens|tonumber / pow(10; 6)), .description.moniker] | @csv' | column -t -s"," | sort -k3 -n -r

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

Прежде чем перейти к созданию валидатора, нужно проверить синхронизацию нашей ноды. Выполняем команду:

curl localhost:26657/status
# или 
archwayd status | jq

Нас интересует строка catching_up. Когда её значение будет false, это будет означать что нода синхронизирована.

Пример создания валидатора

archwayd tx staking create-validator \
--amount=1000000utorii \
--pubkey $(archwayd tendermint show-validator) \
--commission-rate=0.1 \
--commission-max-rate=0.1 \
--commission-max-change-rate=0.01 \
--moniker <validator-name> \
--details=<description> \
--security-contact=<[email protected]> \
--website=<https://your-website> \
--identity=<your code from keybase.io> \
--min-self-delegation="1000000" \
--from=<wallet-name> \
--chain-id torii-1 \
--fees 10utorii

Не все флаги, которые были представлены в примере создания валидатора обязательно использовать. Детально ознакомиться со всеми флагами можно введя в терминале archwayd tx staking create-validator --help

Разберем некоторые из флагов:

  • --amount - кол-во монет, которое вы хотите делегировать на своего валидатора (не должно превышать баланс вашего кошелька)
  • --pubkey - публичный ключ валидатора
  • --commission-rate - комиссия валидатора (процент прибыли, который получает валидатор от суммы наград своих делегаторов)
  • --commission-max-rate - максимальная комиссия валидатора
  • --commission-max-change-rate - процент, на который валидатор может изменить свою комиссию в течении суток
  • --moniker - имя валидатора
  • --details - описание валидатора
  • --security-contact - способ для связи с валидатором (например email)
  • --website - ссылка на вебсайт либо любой другой ресурс валидатора
  • --identity - идентификатор Keybase, используется для привязывания аватарки к валидатору
  • --min-self-delegation - минимальная сумма собственного стейка валидатора
  • --from - имя кошелька
  • --chain-id - имя сети, в которой вы создаете валидатора
  • --fees - сумма комиссии

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

В случае ошибки при создании валидатора, либо же при желании что-то изменить/добавить, например вебсайт и моникер, воспользуйтесь примером ниже:

archwayd tx staking edit-validator \
--moniker=<new-moniker> \
--website=<new-website>
--chain-id=torii-1 \
--from=<wallet-name> \
--fees 10utorii

Автор статьи