Metode de plată Abuse

Gravity: Instalarea și lucrul cu un nod

07.10.2024, 14:09

Gravity este un blockchain de nivel 1 conceput pentru adoptarea în masă și viitorul omnichannel. Abordarea sa face abstracție de complexitățile tehnice ale interacțiunilor pe mai multe lanțuri prin integrarea unor tehnologii avansate, cum ar fi dovezile de cunoaștere zero, mecanismele de consens de ultimă generație și arhitectura reproiectată pentru a oferi performanțe ridicate, securitate sporită și eficiență a costurilor. Gravity deservește cele 20 de milioane de utilizatori ai ecosistemului Galxe, asigurând o experiență fără întreruperi și captivantă pe cea mai mare rețea de distribuție onchain de pe Web3.

Cerințe minime de sistem:

Tipul nodului: Mainnet

PROCESOR: 8

RAM: 16GB

Stocare: 250GB

Instalarea nodului:

1) Instalare automată.

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

2) Instalare manuală

Pregătirea serverului

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 git jq chrony liblz4-tool -y

Instalarea GO 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

Versiunea 01.10.24

cd $HOME && mkdir -p go/bin/
mkdir gravity-bin && cd gravity-bin
wget -O gravity https://github.com/Gravity-Bridge/Gravity-Bridge/releases/download/v1.12.0/gravity-linux-amd64
mv gravity-linux-amd64 gravity
wget https://github.com/Gravity-Bridge/Gravity-Bridge/releases/download/v1.12.0/gbt
chmod +x *
mv $HOME/gravity /usr/bin/
mv $HOME/gbt /usr/bin/

Instalare

gravity init STAVR_guide --chain-id gravity-bridge-3
gravity config chain-id gravity-bridge-3
gbt init

Crearea portofelului

gravity keys add <wallet_name> --algo secp256k1 --coin-type 118
gravity keys add <wallet_orchestrator_name>
gravity eth_keys add <wallet_eth_name>

Set de chei Orchestrator

gbt keys set-ethereum-key --key <your Ethereum PRIVATE key>
gbt keys set-orchestrator-key --phrase "<your mnemonic from orchestrator wallet>"

Instalarea Genesis

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

Configurarea prețului minim al gazului și a Peers/Seeds

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

Pruning (opțional)

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

Indexer (opțional)

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

Instalarea addrbook

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

Crearea unui fișier de serviciu

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

[Service]
User=$USER
ExecStart=$(which gravity) start
Restart=on-failure
RestartSec=3
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target
EOF

Lansare

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

Crearea fișierului de serviciu Orchestrator

sudo tee /etc/systemd/system/orchestrator.service > /dev/null <<EOF
[Unit]
Description=Gravity Bridge Orchestrator
Requires=network.target
[Service]
Type=simple
TimeoutStartSec=10s
Restart=on-failure
RestartSec=10
ExecStart=$(which gbt) orchestrator 
--fees 5000ugraviton 
--gravity-contract-address 0xa4108aA1Ec4967F8b52220a4f7e94A8201F2D906 
--ethereum-rpc "https://eth.althea.net/"
[Install]
WantedBy=default.target
EOF

Încărcați serviciul și executați-l

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

Crearea validatorului

gravity tx staking create-validator 
--commission-rate 0.1 
--commission-max-rate 0.2 
--commission-max-change-rate 0.2 
--min-self-delegation "1" 
--amount 1000000000000000000ugraviton 
--pubkey $(gravity tendermint show-validator) 
--from <wallet> 
--moniker="STAVR_guide" 
--chain-id gravity-bridge-3 
--fees="500ugraviton" 
--identity="" 
--website="" 
--details="" -y

Ștergerea unui nod

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

Comenzi utile

Informații

gravity status 2>&1 | jq .NodeInfo
gravity status 2>&1 | jq .SyncInfo
gravity status 2>&1 | jq .ValidatorInfo

Verificarea jurnalelor nodului

sudo journalctl -fu gravity -o cat

Verificarea stării serviciului

sudo systemctl status gravity

Repornirea serviciului

sudo systemctl restart gravity 

Oprirea serviciului

sudo systemctl stop gravity 

Pornirea serviciului

sudo systemctl start gravity 

Repornire/oprire/activare

sudo systemctl daemon-reload
sudo systemctl disable gravity 
sudo systemctl enable gravity 

Partenerul dvs.

echo $(gravity tendermint show-node-id)'@'$(wget -qO- eth0.me)':'$(cat $HOME/.gravity/config/config.toml | sed -n '/Address to listen for incoming connection/{n;p;}' | sed 's/.*://; s/".*//')

Lucrul cu cheile

Cheie nouă sau Restaurare cheie

gravity keys add Wallet_Name --algo secp256k1 --coin-type 118
      OR
gravity keys add Wallet_Name --recover --algo secp256k1 --coin-type 118

Verificarea tuturor cheilor

gravity keys list

Verificarea echilibrului

gravity query bank balances addressjkl1yjgn7z09ua9vms259j

Ștergerea unei chei

gravity keys delete Wallet_Name

Cheie de export

gravity keys export wallet

Cheie de import

gravity keys import wallet wallet.backup

Lucrul cu validatorul

Editare Validator

gravity tx staking edit-validator 
--new-moniker "Your_Moniker" 
--identity "Keybase_ID" 
--details "Your_Description" 
--website "Your_Website" 
--security-contact "Your_Email" 
--chain-id gravity-bridge-3 
--commission-rate 0.05 
--from Wallet_Name 
--gas 350000 -y

Adresa dvs. Valope

gravity keys show Wallet_Name --bech val

Adresa dvs. Valcon

gravity tendermint show-address

Informații despre validatorul dvs.

gravity query staking validator valoperaddress......

Informații despre închisoare

gravity query slashing signing-info $(gravity tendermint show-validator)

Unjail

gravity tx slashing unjail --from Wallet_name --chain-id gravity-bridge-3 --gas 350000 -y

Lista validatorilor activi

gravity q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_BONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " t " + .description.moniker' | sort -gr | nl

Lista validatoarelor inactive

gravity q staking validators -oj --limit=3000 | jq '.validators[] | select(.status=="BOND_STATUS_UNBONDED")' | jq -r '(.tokens|tonumber/pow(10; 6)|floor|tostring) + " t " + .description.moniker' | sort -gr | nl

Verificați cheile în raport cu validatorul (Câștig - bun. Pierdere - rău).

VALOPER=Enter_Your_valoper_Here
[[ $(gravity q staking validator $VALOPER -oj | jq -r .consensus_pubkey.key) = $(gravity status | jq -r .ValidatorInfo.PubKey.value) ]] && echo -e "nYou winn" || echo -e "nYou losen"

Retrageți toate recompensele de la toți validatorii

gravity tx distribution withdraw-all-rewards --from Wallet_Name --chain-id gravity-bridge-3 --gas 350000 -y

Retrageți fonduri și comisioane de la validatorul dvs.

gravity tx distribution withdraw-rewards valoper1amx.......g85v07t9ka2tfuhamhldgf8e --from Wallet_Name --gas 350000 --chain-id=gravity-bridge-3 --commission -y

Delegați jetoane validatorului dvs.

gravity tx staking delegate Your_valpoer........ "100000000"ugraviton --from Wallet_Name --gas 350000 --chain-id=gravity-bridge-3 -y

Delegarea jetoanelor către un alt validator

gravity tx staking delegate valpoer........ "100000000"ugraviton --from Wallet_Name --gas 350000 --chain-id=gravity-bridge-3 -y

Decuplați jetoanele de la validatorul dvs. sau de la un alt validator

gravity tx staking unbond Your_valpoer........ "100000000"ugraviton l1 --from Wallet_Name --gas 350000 --chain-id=gravity-bridge-3 -y
gravity tx staking unbond valpoer........ "100000000"ugraviton --from Wallet_Name --gas 350000 --chain-id=gravity-bridge-3 -y

Transferați jetoane din portofel în portofel

gravity tx bank send Your_address............ address........... "1000000000000000000"ugraviton --gas 350000 --chain-id=gravity-bridge-3 -y

Management

Vizualizați toate ofertele

gravity query gov proposals

Vizualizați o propunere specifică

gravity query gov proposal 1

Votați în favoarea

gravity tx gov vote 1 yes --from Wallet_Name --gas 350000  --chain-id=gravity-bridge-3 -y

Vot împotrivă

gravity tx gov vote 1 no --from Wallet_Name --gas 350000  --chain-id=gravity-bridge-3 -y

Abținere

gravity tx gov vote 1 abstain --from Wallet_Name --gas 350000  --chain-id=gravity-bridge-3 -y

Vot împotrivă cu veto

gravity tx gov vote 1 no_with_veto --from Wallet_Name --gas 350000  --chain-id=gravity-bridge-3 -y

Transferul IBC

gravity tx ibc-transfer transfer transfer channel-2 Your_OSMOaddress............ "100000"ugraviton --from Your_Gravity_Wallet_Name ---gas 350000 --fees "7000"ugraviton --chain-id=gravity-bridge-3 -y