Decentralized Web Services 测试网节点教程

Deweb是基于Cosmos的可靠、可扩展、安全和分散的云计算服务。在一个cosmos黑客松中获过奖。目前的测试网不是明牌激励测试网,但可能有奖励

本教程仅供参考,请以官方教程为准。

官方教程

最低配置

  • 2 CPU

  • 4 GB RAM (官方教程写的要求偏高,实际8GB+即可)

  • 80GB SSD

安装基础环境

安装go 18+

sudo rm -rf /usr/local/go;
curl https://dl.google.com/go/go1.18.5.linux-amd64.tar.gz | sudo tar -C/usr/local -zxvf - ;
cat <<'EOF' >>$HOME/.profile
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export GO111MODULE=on
export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin
EOF
source $HOME/.profile

安装完成后运行以下命令查看版本

go version

安装其他必要的环境

sudo apt-get update -y && sudo apt-get upgrade -y;
sudo apt-get install curl build-essential jq git -y;

下载源代码并编译

cd
git clone https://github.com/deweb-services/deweb.git
cd deweb
git checkout v0.3.1
make install

安装完成后可以运行 dewebd version检查是否安装成功。

显示应为v0.3.1

运行节点

初始化节点

moniker=<你的节点名>
dewebd init $moniker --chain-id=deweb-testnet-sirius

下载Genesis 文件

curl -s https://raw.githubusercontent.com/deweb-services/deweb/main/genesis.json > ~/.deweb/config/genesis.json

设置peer和seed

PEERS="c5b45045b0555c439d94f4d81a5ec4d1a578f98c@dws-testnet.nodejumper.io:27656,a8bc5ae440dd0ee13f091cd1b17d104c1a7b498c@95.217.225.214:29656,462e2051b81eaceebd8f250f7120f6cc102b6c52@95.217.84.248:14656,a8793bb26c86089febec165300be03f0a8627dc8@77.37.176.99:46656,cfc175e44cf206d8175c91bdbef434c5b59f2461@94.130.50.61:28656,a7201d046651471d0560bce4bee4f80f00f7fa83@144.126.146.3:26656,2c50234b5a740899c18b6d1c3f0be83d2c30a8c0@38.242.216.50:26656,151d897c0236fde8c52b9c61bcb37c02dd37c9a2@65.108.199.222:25656,055cf1973026f65a2cee4c266a2dd2fa31f4fd4f@65.108.209.4:26656,1a4ca95d319667a4d5048f3b6932cd2818ee21a8@65.108.252.97:14656,767da520aa74b24904070327761add8512540c87@62.171.132.152:26656,a62e7c05b82903470b60b1cb65723e2b6056f3d2@157.90.169.146:26656,ac755563eac4276a6506f09928c42e25aa2ad380@66.94.107.225:36656,4a07e3296fee5bdc2a45f7c5e6348168a1c9b286@144.91.125.55:26656,79a4dc86281be42768d33f25807ff5ab80c3c916@75.119.134.69:26656,0d25212f510f8868b639861de96ccd31fc1ea4dc@65.21.61.242:26656,d23354d5c60b723f315c28d0dc321aff2e7eedcb@5.161.80.30:14656,674088d85d41b5086029a4136625764071f17db8@5.161.86.210:14656,09a5075aa7a1075c90f72d663312ea49f491ebbf@142.132.196.251:26656,0ec737bc2425e744ad391f43b0ea79b18c7546d6@143.198.177.165:26656,af9f5da99dfbccde21e58473825524ab265dd804@65.108.44.149:46656,f6564402e0abe81813295bca5f0a4f286d15eb0a@65.108.133.73:26656,1cb152a929113c2628786e11a4bffe3c1d653fb7@173.249.50.126:14656,cee858f842bb7c5e13db1986cbd09b10553a2848@178.238.225.58:26656,7de0c3874eb05722c8326d05d8f602d1e5e85bdc@65.108.43.116:56132,cb832c5b3ed839927cbe720db292101e377f13fe@159.69.149.85:36656,294eb22071d922486c363e0a56e179e507d2be21@138.201.91.105:14656,325b79115ca4ce4ff7cca054061cd347d694dadc@159.69.93.251:26656,ad45a4fe1e9e8a6edd8654924b7b6c1638f0214a@54.39.243.226:26656,a3245ded96e3642ff3f1d80f75f60ba7a58f8877@135.181.249.13:14656,054dfabf7ea154d41b085e20d42c7313f2eb2d48@62.171.148.163:26656,b8a77e817bb619c02dcad1ef11463d5ddc090f3b@185.9.144.138:26656,cb881cdf6f3d9fa02034eeb835c174517d960595@65.108.120.21:26101,ae72548f31f409a92fc00e5b62b513f8261ea7ec@144.91.118.61:26656,429231d7fbc695fe0c1e8de451164fc8194c105c@65.21.132.226:26656,aeceb0aa24c00cae8af8d30e0cc0275d04f5316e@162.55.181.95:14656,052d6215402c793361e52acfc6e257be53b35e21@65.21.143.79:26256,e726424703afaabba7fc3e828d5daed9f2be867e@154.12.232.80:36656,5eeebfddb96ce09c09c33c2fcad8b8d19d10b6c9@65.21.199.148:26619,63064d9fe6bdffe6a85154592ec36be48cd63b9e@116.202.236.115:21046,fadb42aa4e0ed2183a8d88488f28e44413492882@141.94.254.145:47656,ee85cb0d941dca5759487f908c7339e2eea568ab@141.94.139.233:27656,aede67ebb4e40cb9564abbff2ff1de08cfbb1d6b@167.86.108.159:26656,56a057a6033664214c43ffadcf3c3ecfdfdf5d2a@209.126.81.240:26656,2c048866863ad3d55b015ba6dff49b63e66a011f@185.163.64.143:26656,64befdb7b718951faf9ce6244a96b791b6913594@95.216.70.104:26666,54ac40f4e4f4cca401c003f4065905ce91f5161a@85.10.198.171:16656,21e3b622b1339945ae2dc5fd28333ed9aa0396a8@89.163.208.156:26656,0b01867f4d90e24fa06e2292f0f43dd3bb342720@178.250.242.94:14656,f68e3850968edd258aab866d7697dd1f99e6e9fb@75.119.138.95:26656,d4ea6c4a7a4ede65d37b3ef5868b821fcf53732e@167.86.87.75:26656,3c29c80c62b17cfc593bf063fc1273f89c8dcb1a@65.109.5.239:12356,3eb14042b13fe7a3970ab12086117c8695833c84@88.99.95.81:36656,09b2a8408223aafbc1bedeae9161ea849999737c@66.94.107.224:36656,dab1a00b3b680ab5716dee1252ed2db65a311889@176.9.106.43:26656,2f40a727a89deca71e7a7605d69720bf47ff92cc@80.254.8.54:14656,e7a71d24a5f9988c5b0d41301db71a07cc146a43@194.233.90.134:26656,69792df8475149b71de899f88e60e9b45788aa5e@65.21.224.26:26656,f7919e6c903de12544f61e5f4a0ca410fb2a0773@195.3.223.11:26686,31cd90f57408c7f19519ab8a32f43b9543c23f44@161.97.91.132:14656,7a51db33edbf8de8573e7ffc9b27d76448409065@45.151.123.97:14656,bfbcc9759593f83b6c34522569de77d60f026c40@62.171.181.252:14656,0b0b72d370b2bd47bd30ac850ceda1735c850e50@62.171.184.181:14656,1fb96e8d9fd32589a0b10b23dd9fc520151d75a3@62.171.182.95:14656,a9bd4bdf7377a169dbe61943432e334a8f28dfe4@109.238.12.121:14656,20937bcc46b1cb585c27884fc680ffd82a9f0c57@65.108.203.219:22656,53059ddbab05f5ae6cb43bbbd7ee2cd208c4052b@65.109.10.249:26656,b591740ab4bf9a98cdff3073465786981142a997@185.144.99.226:26656,bf4f99c6ad6e8638319a82971286e04e2d2d42a3@75.119.129.39:26656,6e774a859b13269619b4258b02d5f0ed8e384685@185.144.99.225:26656,6888c6103d08344e8abfa0474be48e09120cab02@146.19.24.52:14656,53cebbfbe7d60fb35af1fc80be338ccbbddc9526@116.202.132.219:26699,0752197f9cdecf9df906ddbe88b349c4691fa183@95.179.242.150:26656,43e3232df9f1dd82ce32efc124ba035a2e23ef04@213.202.212.185:14656,fd2fa55269a9c9b1efdea72bb8293ba4203c9962@144.76.224.246:16656,225e49af2b5b245208481c6529a3dbfe5306c3bb@185.244.183.194:26656,7ea36ef113c3907b77b9bf8c73096247277fedba@144.91.102.79:26656,aa3a6d80d59947664dd41595830fa416d98f07a5@87.246.173.248:14656,b4803cf806fae48799efb78b8aee1ed2d0b45f1f@176.9.10.239:26656,12f2341874fba7e887a34113158dbb47374ea57f@65.21.131.215:26646,c1fb7595e3922ab805ce4e9010ca8d94521edf6b@144.91.92.219:26656,4206e15a077492ec2d392d4e9142847409b46285@149.102.143.147:26656,0affb5fdbf35d3bb8ed66af35339e9e845683faa@23.88.7.73:29586,4a7af5a67b065505592837135a8c5a5395dfd7b8@49.12.194.54:26656,a26e7be2b8b871ae5dcf7a1435eef721e95478e2@49.12.224.227:14656,f47bb0551884117a0aa5c82c41e12a612d44c152@194.233.75.161:26656,da5a76aa7daa801c52887b318380d34617acbbcd@65.21.134.202:26646,d2cf889b2d4abec0e8ad9b2934fe3d09b5fd7649@62.171.171.152:14656,c16affc35507ce5c504906fed1c478595efb4675@86.48.5.144:26656,7236929b1ec0e3f54ae134560d8b0f08f6ca5024@154.53.61.44:14656,9440fa39f85bea005514f0191d4550a1c9d310bb@135.181.133.37:27656,58977d602f28afe21e09aa485b5ec520d178dbc3@66.94.108.7:14656,3ed7eba88f803fc7d99d3c185b9b6a2a9fec0161@38.242.147.10:14656,6e94932e91d09425f5cde9ed594f8f3b184d71b2@88.208.57.200:60856,31c2240813374e7819b6bb64ba24ce9990eb0aa6@194.163.130.165:26656,1d97083fcd4a2be02f18adf425d09f13c00effae@209.126.83.57:14656,52b620acc3bb780e589f090a68d10d563fda2f8a@149.154.65.66:26656,61da70005efc69aee1392d880aa34532c06adfdc@164.215.102.44:26656,5a83f1ac4a561a419d528a6b1af9361878f215b9@65.108.77.106:26869,3d323a9b988541ec369347dd15a1a89ce56ac738@95.217.191.34:14656"
seeds=""
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" $HOME/.deweb/config/config.toml
sed -i.bak -e "s/^seeds *=.*/seeds = \"$seeds\"/" ~/.deweb/config/config.toml

更换addrbook

wget -O $HOME/.deweb/config/addrbook.json "https://raw.githubusercontent.com/obajay/nodes-Guides/main/DWS/addrbook.json"

Pruning设置

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

启动节点

sudo tee <<EOF >/dev/null /etc/systemd/system/dewebd.service
[Unit]
Description=dewebd daemon
After=network-online.target
[Service]
User=$USER
ExecStart=$(which dewebd) start
Restart=on-failure
RestartSec=3
LimitNOFILE=10000
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload && \
sudo systemctl enable dewebd && \
sudo systemctl start dewebd

查看日志

sudo journalctl -u dewebd -f

(可选)State-sync快速同步

sudo systemctl stop dewebd
dewebd tendermint unsafe-reset-all --home $HOME/.deweb --keep-addr-book
SNAP_RPC="https://dws-testnet.nodejumper.io:443"
LATEST_HEIGHT=$(curl -s $SNAP_RPC/block | jq -r .result.block.header.height); \
BLOCK_HEIGHT=$((LATEST_HEIGHT - 2000)); \
TRUST_HASH=$(curl -s "$SNAP_RPC/block?height=$BLOCK_HEIGHT" | jq -r .result.block_id.hash)

echo $LATEST_HEIGHT $BLOCK_HEIGHT $TRUST_HASH

peers="c5b45045b0555c439d94f4d81a5ec4d1a578f98c@dws-testnet.nodejumper.io:27656"
sed -i 's|^persistent_peers *=.*|persistent_peers = "'$peers'"|' $HOME/.deweb/config/config.toml

sed -i -E "s|^(enable[[:space:]]+=[[:space:]]+).*$|\1true| ; \
s|^(rpc_servers[[:space:]]+=[[:space:]]+).*$|\1\"$SNAP_RPC,$SNAP_RPC\"| ; \
s|^(trust_height[[:space:]]+=[[:space:]]+).*$|\1$BLOCK_HEIGHT| ; \
s|^(trust_hash[[:space:]]+=[[:space:]]+).*$|\1\"$TRUST_HASH\"|" $HOME/.deweb/config/config.toml

sudo systemctl restart dewebd
sudo journalctl -u dewebd -f --no-hostname -o cat

检查同步状态

curl -s localhost:26657/status | jq .result | jq .sync_info

其中显示 "catching_up":显示为false即已经同步上。如果一直没有开始同步一般是因为peer不够,可以考虑添加Peer或者使用别人的addrbook。

创建验证人

创建钱包

dewebd keys add <钱包名>

注意请保存助记词。若不保存,之后将无法恢复。

领取测试币

进入deweb discord https://discord.gg/c5QVD3MPkt

在 #faucet 频道发送

$request 你的deweb地址 sirius

之后可以用

dewebd query bank balances 你的deweb地址

查询测试币余额。

创建验证人

获取足够测试币,且节点完成同步后,可以创建验证人。只有质押量在前100的验证人才是活跃验证人。本次激励性测试网。验证人不论活跃与否都有奖励。

daemon=dewebd
denom=udws
moniker=验证人名
chainid=deweb-testnet-sirius
$daemon tx staking create-validator \
    --amount=1000000$denom \
    --pubkey=$($daemon tendermint show-validator) \
    --moniker=$moniker \
    --chain-id=$chainid \
    --commission-rate=0.05 \
    --commission-max-rate=0.2 \
    --commission-max-change-rate=0.1 \
    --min-self-delegation=1000000 \
    --from=钱包名 

之后可以去区块浏览器https://dws.explorers.guru/查看你的验证人是否创建成功。可以在discord留下你的验证人链接。

例如我的https://dws.explorers.guru/validator/dewebvaloper1se3h3zlkr7slanw3gea9qcjpx7mnh2g90c0hu2

常用命令

服务管理

检查日志

sudo journalctl -u dewebd -f

运行/重启节点

sudo systemctl restart dewebd

停止节点

sudo systemctl stop dewebd

节点信息

同步信息

dewebd status 2>&1 | jq .SyncInfo

验证人信息

dewebd status 2>&1 | jq .ValidatorInfo

节点信息

dewebd status 2>&1 | jq .NodeInfo

获取node id

dewebd tendermint show-node-id

钱包操作

显示所有钱包

dewebd keys list

恢复钱包

dewebd keys add <你的钱包名> --recover

删除钱包

dewebd keys delete <你的钱包名>

查询余额

dewebd query bank balances <deweb地址>

发送代币

dewebd tx bank send <你的钱包名> <接收钱包deweb地址> 数量udws --from <你的钱包名> -y

注意:1dws=1000000udws

投票

dewebd tx gov vote <提案编号> <投票选项> --from <你的钱包名> --chain-id=deweb-testnet-sirius -y

投票选项包括yes/no/no_with_veto/abstain。大部分情况我们投yes就好。

质押,提取奖励

质押

注:验证人地址不是钱包地址。可以去区块浏览器查。格式一般为xxxvaloper开头

dewebd tx staking delegate <你要质押的验证人地址> 数量udws --from <你的钱包名> --chain-id=deweb-testnet-sirius -y

解除质押

dewebd tx staking unbond <你要解除质押的验证人地址> 数量udws --from <你的钱包名> --chain-id=deweb-testnet-sirius -y

提取质押奖励和验证人佣金

dewebd tx distribution withdraw-rewards <你的验证人地址> --commission --from <你的钱包名> --chain-id=deweb-testnet-sirius -y

提取所有奖励

dewebd tx distribution withdraw-all-rewards --from=<你的钱包名> --chain-id=deweb-testnet-sirius -y

验证人管理

修改验证人信息

dewebd tx staking edit-validator \
  --moniker=<节点名> \
  --identity=<你的keybase id> \
  --website="<你的网站>" \
  --details="<你的验证人描述>" \
  --from=<你的钱包名>

假如你想在区块浏览器显示你的验证人logo。需要注册一个keybase账号,上传logo。在验证人信息中设置--identity=<你的keybase id>,区块链浏览器中就会显示你的keybase logo作为验证人logo。

Unjail

dewebd tx slashing unjail --from <你的钱包名> --chain-id=deweb-testnet-sirius -y   

欢迎关注 http://silentvalidator.com/

Subscribe to Silent ⚛| validator
Receive the latest updates directly to your inbox.
Mint this entry as an NFT to add it to your collection.
Verification
This entry has been permanently stored onchain and signed by its creator.