DeFund Node Setup for Testnet β orbit-alpha-1
Dokumentasi resmi:
Penjelajah:
Persyaratan Perangkat Keras
Persyaratan Perangkat Keras yang Direkomendasikan
- 16GB RAM
- 4vCPUs
- Ruang Disk 200GB
Menyiapkan Node DeFund Anda
Instalasi Manual
Perbarui paket dan instalasikan dependensi
sudo apt update && sudo apt upgrade -y
sudo apt install curl git wget htop tmux build-essential jq make lz4 gcc -y
Ganti moniker Anda <NAMA_MONIKER_ANDA>
tanpa <>
, simpan, dan impor variabel ke sistem
DEFUND_PORT=18
echo "export WALLET="wallet"" >> $HOME/.bash_profile
echo "export MONIKER="<NAMA_MONIKER_ANDA>"" >> $HOME/.bash_profile
echo "export DEFUND_CHAIN_ID="orbit-alpha-1"" >> $HOME/.bash_profile
echo "export DEFUND_PORT="${DEFUND_PORT}"" >> $HOME/.bash_profile
source $HOME/.bash_profile
Instalasi Go
cd $HOME
VER="1.19.3"
wget "https://golang.org/dl/go$VER.linux-amd64.tar.gz"
sudo tar -C /usr/local -xzf "go$VER.linux-amd64.tar.gz"
rm -rf "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
Unduh dan bangun biner
cd $HOME
rm -rf defund
git clone https://github.com/defund-labs/defund
cd defund
git checkout v0.2.6
make install
Konfigurasi dan inisialisasi aplikasi
defundd config node tcp://localhost:${DEFUND_PORT}657
defundd config keyring-backend test
defundd config chain-id $DEFUND_CHAIN_ID
rm -rf $HOME/.defund/config/genesis.json
defundd init $MONIKER --chain-id $DEFUND_CHAIN_ID
Unduh genesis dan addrbook
wget -O $HOME/.defund/config/genesis.json https://files.artstake.net/testnet/defund/genesis.json
wget -O $HOME/.defund/config/addrbook.json https://files.artstake.net/testnet/defund/addrbook.json
Atur seeds dan peers
SEEDS=""
PEERS="d837b7f78c03899d8964351fb95c78e84128dff6@174.83.6.129:30791,f03f3a18bae28f2099648b1c8b1eadf3323cf741@162.55.211.136:26656,f8fa20444c3c56a2d3b4fdc57b3fd059f7ae3127@148.251.43.226:56656,70a1f41dea262730e7ab027bcf8bd2616160a9a9@142.132.202.86:17000"
sed -i -e "s/^seeds *=.*/seeds = \"$SEEDS\"/; s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.defund/config/config.toml
Atur port khusus dalam file app.toml
sed -i.bak -e "s%^address = \"tcp://0.0.0.0:1317\"%address = \"tcp://0.0.0.0:${DEFUND_PORT}317\"%;
s%^address = \":8080\"%address = \":${DEFUND_PORT}080\"%;
s%^address = \"0.0.0.0:9090\"%address = \"0.0.0.0:${DEFUND_PORT}090\"%;
s%^address = \"0.0.0.0:9091\"%address = \"0.0.0.0:${DEFUND_PORT}091\"%;
s%^address = \"0.0.0.0:8545\"%address = \"0.0.0.0:${DEFUND_PORT}545\"%;
s%^ws-address = \"0.0.0.0:8546\"%ws-address = \"0.0.0.0:${DEFUND_PORT}546\"%" $HOME/.defund/config/app.toml
Atur port khusus dalam file config.toml
sed -i.bak -e "s%^proxy_app = \"tcp://127.0.0.1:26658\"%proxy_app = \"tcp://127.0.0.1:${DEFUND_PORT}658\"%;
s%^laddr = \"tcp://127.0.0.1:26657\"%laddr = \"tcp://0.0.0.0:${DEFUND_PORT}657\"%;
s%^pprof_laddr = \"localhost:6060\"%pprof_laddr = \"localhost:${DEFUND_PORT}060\"%;
s%^laddr = \"tcp://0.0.0.0:26656\"%laddr = \"tcp://0.0.0.0:${DEFUND_PORT}656\"%;
s%^external_address = \"\"%external_address = \"$(wget -qO- eth0.me):${DEFUND_PORT}656\"%;
s%^prometheus_listen_addr = \":26660\"%prometheus_listen_addr = \":${DEFUND_PORT}660\"%" $HOME/.defund/config/config.toml
Konfigurasi pruning
sed -i -e "s/^pruning *=.*/pruning = \"nothing\"/" $HOME/.defund/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"100\"/" $HOME/.defund/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-int
erval = \"50\"/" $HOME/.defund/config/app.toml
Atur harga gas minimum, aktifkan prometheus, dan nonaktifkan indexing
sed -i 's/minimum-gas-prices =.*/minimum-gas-prices = "0ufetf"/g' $HOME/.defund/config/app.toml
sed -i -e "s/prometheus = false/prometheus = true/" $HOME/.defund/config/config.toml
sed -i -e "s/^indexer *=.*/indexer = \"null\"/" $HOME/.defund/config/config.toml
Reset data chain
defundd tendermint unsafe-reset-all --home $HOME/.defund
Buat file layanan
sudo tee /etc/systemd/system/defundd.service > /dev/null <<EOF
[Unit]
Description=defund
After=network-online.target
[Service]
User=$USER
ExecStart=$(which defundd) start --home $HOME/.defund
Restart=on-failure
RestartSec=3
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
EOF
Aktifkan dan mulai layanan
sudo systemctl daemon-reload
sudo systemctl enable defundd
sudo systemctl restart defundd && sudo journalctl -u defundd -f
Snapshot, State Sync (Opsional)
Membuat Dompet
Untuk membuat dompet baru, gunakan perintah berikut. Jangan lupa untuk menyimpan mnemonic
defundd keys add $WALLET
(opsional) Untuk mengembalikan dompet yang ada, gunakan perintah berikut
defundd keys add $WALLET --recover
Simpan alamat dompet dan validator
WALLET_ADDRESS=$(defundd keys show $WALLET -a)
VALOPER_ADDRESS=$(defundd keys show $WALLET --bech val -a)
echo "export WALLET_ADDRESS="${WALLET_ADDRESS} >> $HOME/.bash_profile
echo "export VALOPER_ADDRESS="${VALOPER_ADDRESS} >> $HOME/.bash_profile
source $HOME/.bash_profile
Isi dompet Anda
Sebelum membuat validator, Anda perlu mengisi dompet Anda, buka server Discord DeFund dan navigasi ke saluran faucet
!faucet <ALAMAT_DOMPET_ANDA>
Membuat Validator
Sebelum membuat validator, periksa saldo dan pastikan bahwa node telah disinkronkan
Periksa status sinkronisasi, setelah node Anda sepenuhnya disinkronkan, output dari perintah di atas akan mengatakan false
defundd status 2>&1 | jq .SyncInfo
Periksa saldo Anda
defundd query bank balances $WALLET_ADDRESS
Buat validator
defundd tx staking create-validator \
--amount 1000000ufetf \
--from $WALLET \
--commission-max-change-rate "0.01" \
--commission-max-rate "0.2" \
--commission-rate "0.05" \
--min-self-delegation "1" \
--pubkey $(defundd tendermint show-validator) \
--moniker $MONIKER \
--chain-id $DEFUND_CHAIN_ID
Anda dapat menambahkan bendera --website
, --security-contact
, --identity
, --details
jika diperlukan
--website <URL_SITUS_ANDA> \
--security-contact <KONTAK_ANDA> \
--identity <KEYBASE_IDENTITY_ANDA> \
--details <DESKRIPSI_VALIDATOR_ANDA>
Pemantauan
Jika Anda ingin mengatur sistem pemantauan dan peringatan, gunakan panduan pemantauan node Cosmos kami dengan tenderduty
Keamanan
Untuk melindungi kunci Anda, jangan bagikan privkey, mnemonic, dan ikuti aturan keamanan dasar
Mengatur kunci ssh untuk otentikasi
Anda dapat menggunakan panduan ini (opens in a new tab) untuk mengonfigurasi otentikasi ssh dan menonaktifkan otentikasi kata sandi pada server Anda
Keamanan Firewall
Setel ke default untuk mengizinkan koneksi keluar, menolak semua masuk, izinkan ssh dan port p2p node
sudo ufw default allow outgoing
sudo ufw default deny incoming
sudo ufw allow ssh/tcp
sudo ufw allow ${DEFUND_PORT}656/tcp
sudo ufw enable
Perintah Berguna
Perintah Layanan
Periksa log
sudo journalctl -u defundd -f
Berhenti layanan
sudo systemctl stop defundd
Mulai layanan
sudo systemctl start defundd
Mulai ulang layanan
sudo systemctl restart defundd
Operasi Dompet
Periksa saldo
defundd query bank balances $WALLET_ADDRESS
Transfer dana
defundd tx bank send $WALLET_ADDRESS <ALAMAT_DOMPET_TUJUAN> 1000000ufetf --gas auto --gas-adjustment 1.3
Daftar dompet
defundd keys list
Buat dompet baru
defundd keys add $WALLET
Pulihkan dompet
defundd keys add $WALLET --recover
Hapus dompet
defundd keys delete $WALLET
Berikut adalah lanjutan dari petunjuk pengaturan node DeFund untuk testnet orbit-alpha-1:
Node Information
Info sinkronisasi
defundd status 2>&1 | jq .SyncInfo
Status node
curl -s localhost:${DEFUND_PORT}657/status
Info node
defundd status 2>&1 | jq .NodeInfo
Info validator
defundd status 2>&1 | jq .ValidatorInfo
Rekan node Anda
echo $(defundd tendermint show-node-id)'@'$(curl -s ifconfig.me)':'$(cat $HOME/.defund/config/config.toml | sed -n '/Address to listen for incoming connection/{n;p;}' | sed 's/.*://; s/".*//')
Dapatkan daftar rekan node yang terhubung saat ini
curl -sS http://localhost:${DEFUND_PORT}657/net_info | jq -r '.result.peers[] | "\(.node_info.id)@\(.remote_ip):\(.node_info.listen_addr)"' | awk -F ':' '{print $1":"$(NF)}'
Voting
defundd tx gov vote 1 yes --from $WALLET --chain-id $DEFUND_CHAIN_ID
Staking, Delegation, and Rewards
Tarik semua reward
defundd tx distribution withdraw-all-rewards --from $WALLET --chain-id $DEFUND_CHAIN_ID --gas auto --gas-adjustment 1.3
Tarik reward dengan komisi
defundd tx distribution withdraw-rewards $VALOPER_ADDRESS --from $WALLET --commission --chain-id $DEFUND_CHAIN_ID --gas auto --gas-adjustment 1.3
Periksa saldo
defundd query bank balances $WALLET_ADDRESS
Delegasikan staking
defundd tx staking delegate $VALOPER_ADDRESS 1000000ufetf --from $WALLET --chain-id $DEFUND_CHAIN_ID --gas=auto --gas-adjustment 1.3
Re-delegasikan staking ke validator lain
defundd tx staking redelegate <srcValidatorAddress> <destValidatorAddress> 1000000ufetf --from $WALLET --chain-id $DEFUND_CHAIN_ID --gas auto --gas-adjustment 1.3
Validator Operation
Edit validator
defundd tx staking edit-validator \
--moniker=$NODENAME \
--identity=<your_keybase_id> \
--website="<your_website>" \
--details="<your_validator_description>" \
--chain-id=$DEFUND_CHAIN_ID \
--from=$WALLET
Info validator
defundd status 2>&1 | jq .ValidatorInfo
Info penjara
defundd q slashing signing-info $(defundd tendermint show-validator)
Bebaskan validator dari penjara
defundd tx slashing unjail --broadcast-mode=block --from $WALLET --chain-id $DEFUND_CHAIN_ID --gas auto --gas-adjustment 1.5
Status konsensus
curl localhost:${DEFUND_PORT}657/consensus_state
Menghapus Node
sudo systemctl stop defundd
sudo systemctl disable defundd
sudo rm -rf /etc/systemd/system/defundd*
sudo rm $(which defundd)
sudo rm -rf $HOME/.defund
sudo rm -fr $HOME/defund
sed -i "/DEFUND_/d" $HOME/.bash_profile
Setelah mengikuti langkah-langkah ini, node Anda seharusnya sudah terhapus dan tidak aktif di jaringan. Pastikan untuk mengganti DEFUND_
dalam file .bash_profile
Anda jika Anda berencana untuk mengatur node DeFund lainnya di masa mendatang. Juga, pastikan untuk menghapus kunci pribadi dan data lainnya yang sensitif agar tetap aman.