Installation
Get your validator running in minutes by following step by step instructions
Chain ID: Kaon-1
| Latest Version Tag: v1.0.0-rc0
Setup validator name
MONIKER="YOUR_MONIKER_GOES_HERE"
Install GO
sudo rm -rf /usr/local/go
sudo curl -Ls https://golang.org/dl/go1.19.4.linux-amd64.tar.gz | sudo tar -C /usr/local -xz
tee -a $HOME/.profile > /dev/null << EOF
export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin
EOF
source $HOME/.profile
Download and build binaries
# Clone project repository
cd $HOME || return
rm -rf chain || return
git clone https://github.com/KYVENetwork/chain.git
cd chain
git fetch
git checkout v1.0.0-rc0
make install
kyved version #v1.0.0-rc0
Initialize the node
# Initialize the node
kyved init "MONIKER" --chain-id kaon-1
# Download genesis and addrbook
curl -s https://raw.githubusercontent.com/KYVENetwork/networks/main/kaon-1/genesis.json > $HOME/.kyve/config/genesis.json
curl -s https://github.com/88Mikhail88/My_Testnets/blob/main/KYVE/addrbook.json > $HOME/.kyve/config/addrbook.json
# Add seeds
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$peers\"/" ~/.kyve/config/config.toml
sed -i.bak -e "s/^seeds *=.*/seeds = \"$seeds\"/; s/^persistent_peers *=.*/persistent_peers = \"$peers\"/" ~/.kyve/config/config.toml
# Set minimum gas price
# Set pruning
pruning="custom"
pruning_keep_recent="100"
pruning_keep_every="0"
pruning_interval="10"
sed -i -e "s/^pruning *=.*/pruning = \"$pruning\"/" ~/.kyve/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"$pruning_keep_recent\"/" ~/.kyve/config/app.toml
sed -i -e "s/^pruning-keep-every *=.*/pruning-keep-every = \"$pruning_keep_every\"/" ~/.kyve/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"$pruning_interval\"/" ~/.kyve/config/app.toml
# Set indexer
indexer="null" && \
sed -i -e "s/^indexer *=.*/indexer = \"$indexer\"/" $HOME/.kyve/config/config.toml
# Create service
echo "[Unit]
Description=Kyve
After=network.target
[Service]
User=$USER
Type=simple
ExecStart=/home/$USER/go/bin/kyved start
Restart=on-failure
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target" > $HOME/kyved.service
sudo mv $HOME/kyved.service /etc/systemd/system
sudo tee <<EOF >/dev/null /etc/systemd/journald.conf
Storage=persistent
EOF
#Download latest chain snapshot
kyve tendermint unsafe-reset-all --home $HOME/.kyve --keep-addr-book
sudo systemctl daemon-reload
sudo systemctl enable kyved
sudo systemctl start kyved
sudo journalctl -u kyved -f --no-hostname -o cat
Create Validator
# create validator wallet
kyved keys add wallet
## console output:
#- name: wallet
# type: local
# address: kyve19kmadqs9nsppn4wz5yp4rw8zn9545rc4zwvs7
# pubkey: '{"@type":"/cosmos.crypto.secp256k1.PubKey","key":"Auq9WzVEs5pCoZgr2WctjI7fU+lJCH0I3r6GC1oa0tc0"}'
# mnemonic: ""
#!!! SAVE SEED PHRASE
kite upset hip dirt pet winter thunder slice parent flag sand express suffer chest custom pencil mother bargain remember patient other curve cancel sweet
# wait util the node is synced, should return FALSE
curl -s localhost:26657/status | jq .result.sync_info.catching_up
# Check your balance
kyved q bank balances $(kyved keys show wallet -a)
## console output:
# balances:
# - amount: "0000000"
# denom:
# create validator
kyved tx staking create-validator \
--moniker "YOUR_MONIKER_NAME" \
--identity="YOUR_KEYBASE_ID" \
--website="YOUR_WEBSITE_URL" \
--details="YOUR_DETAILS" \
--amount 1000000tkyve \
--fees 300tkyve \
--pubkey=$(kyved tendermint show-validator) \
--chain-id=kaon-1 \
--commission-max-change-rate=0.01 \
--commission-max-rate=0.20 \
--commission-rate=0.10 \
--min-self-delegation=1 \
--from=wallet \
--yes
# make sure you see the validator details
kyved q staking validator $(kyved keys show wallet --bech val -a)
Last updated