Namada公共测试网节点搭建

namada的公共测试网开启了,可以参与。但是没有激励。

准备工作

一台服务器,硬件配置

  • cpu 4核以上

  • 内存 8G以上

  • 硬盘空间500G

确保你的机器开启26656和26657 两个端口

如果你用vps作为服务器,如何选择以及如何开启可以查看我之前的文章

安装更新

安装以及更新一些依赖库

这部分复制粘贴更新安装就行了

cd $HOME
sudo apt update && sudo apt upgrade -y
sudo apt install curl tar wget clang pkg-config libssl-dev libclang-dev jq build-essential bsdmainutils git make ncdu gcc git jq chrony liblz4-tool -y
sudo apt install -y uidmap dbus-user-session

继续安装下载rust

sudo curl https://sh.rustup.rs -sSf | sh -s -- -y
source $HOME/.cargo/env

安装go

if ! [ -x "$(command -v go)" ]; then
  ver="1.19.4"
  cd $HOME
  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" >> ~/.bash_profile
  source ~/.bash_profile
fi

设置一些变量

注意:VALIDATOR_ALIAS 那里设置你自己的别名

echo "export NAMADA_TAG=v0.12.1" >> ~/.bash_profile
echo "export TM_HASH=v0.1.4-abciplus" >> ~/.bash_profile
echo "export CHAIN_ID=public-testnet-1.0.05ab4adb9db" >> ~/.bash_profile
echo "export VALIDATOR_ALIAS=change_your_validator_name" >> ~/.bash_profile
source ~/.bash_profile

接着github上下载namada 并编译,过程会有点久,耐心等待完成

cd $HOME && git clone https://github.com/anoma/namada && cd namada && git checkout $NAMADA_TAG
make build-release

接着github上下载tendermint 并编译

cd $HOME && git clone https://github.com/heliaxdev/tendermint && cd tendermint && git checkout $TM_HASH
make build

接着吧两个编译后的都添加到环境变量

cd $HOME && cp $HOME/tendermint/build/tendermint  /usr/local/bin/tendermint && cp "$HOME/namada/target/release/namada" /usr/local/bin/namada && cp "$HOME/namada/target/release/namadac" /usr/local/bin/namadac && cp "$HOME/namada/target/release/namadan" /usr/local/bin/namadan && cp "$HOME/namada/target/release/namadaw" /usr/local/bin/namadaw

查看tendermint 和namada 的版本号

tendermint version
namada --version

都能显示版本号,就是成功了

运行节点

加入网络

cd $HOME && namada client utils join-network --chain-id $CHAIN_ID

添加到系统服务

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

[Service]
User=root
WorkingDirectory=$HOME/.namada
Environment=NAMADA_LOG=debug
Environment=NAMADA_TM_STDOUT=true
ExecStart=/usr/local/bin/namada --base-dir=$HOME/.namada node ledger run 
StandardOutput=syslog
StandardError=syslog
Restart=on-failure
RestartSec=3
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target
EOF

启动服务查看同步日志

sudo systemctl daemon-reload
sudo systemctl enable namadad
sudo systemctl restart namadad && sudo journalctl -u namadad -f -o cat

可以看到如下

等待同步到当前高度,当前高度可以去官方区块浏览器查看

等待全节点同步完成,这个过程也需要一段时间。

创建钱包运行验证

注意:运行这里需要节点同步完成才能进行

生成钱包 wallet_name 可以自己选择名字

namada wallet address gen --alias wallet_name

第一次创建过程会让你输入额外的密钥,输入后自己能记住就行

接着初始化验证。 wallet_name 是你自己选择的名字 同上

namada client init-validator --alias $VALIDATOR_ALIAS --source wallet_name --commission-rate 0.05 --max-commission-rate-change 0.01

成功后水龙头领取测试代币

cd $HOME
namadac transfer \
    --token NAM \
    --amount 1000 \
    --source faucet \
    --target $VALIDATOR_ALIAS \
    --signer $VALIDATOR_ALIAS

因为最小质押金额为1000 ,所以你可以多领取几次

查询钱包余额

namada client balance --owner $VALIDATOR_ALIAS --token NAM

质押

namada client bond \
  --validator $VALIDATOR_ALIAS \
  --amount 1500

输出你的验证地址

export WALLET_ADDRESS=`cat "$HOME/.namada/public-testnet-1.0.05ab4adb9db/wallet.toml" | grep address`
echo -e '\n\e[45mYour wallet:' $WALLET_ADDRESS '\e[0m\n'

查看绑定质押的验证节点

namada client bonded-stake

更新新版本

如果namada官方更新了新版本,先去github更新新版本,然后重新编译后替换原来的,重启服务进程即可

cd $HOME/namada
NEWTAG=v0.12.2
git fetch
git checkout $NEWTAG
make build-release
cd $HOME && sudo systemctl stop namadad
rm /usr/local/bin/namada /usr/local/bin/namadac /usr/local/bin/namadan /usr/local/bin/namadaw
cd $HOME && cp "$HOME/namada/target/release/namada" /usr/local/bin/namada && cp "$HOME/namada/target/release/namadac" /usr/local/bin/namadac && cp "$HOME/namada/target/release/namadan" /usr/local/bin/namadan && cp "$HOME/namada/target/release/namadaw" /usr/local/bin/namadaw
sudo systemctl restart namadad
namada --version
sudo journalctl -u namadad -f -o cat

到这就完毕了

其实在准备写的时候发现已经有完善步骤教程了

可以直接查看:readme 一个国外老哥的教程,所以直接用他的步骤运行了一遍。

如有有什么建议或者意见可以推特联系 @dapaopao_eth

Subscribe to dapaopao
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.