gaia
Cosmos Hub 的官方实现
docs
官方仓库 https://github.com/cosmos/gaia
cosmoshub-4 网络的配置信息
https://raw.githubusercontent.com/cosmos/chain-registry/master/cosmoshub/chain.json
部署
./gaiad init --chain-id=testing testing --home /home/user1/gaia/nodes/node1
# 创建一个验证人钱包
./gaiad keys add validator --keyring-backend test --home /home/user1/gaia/nodes/node1
./gaiad keys show validator -a --keyring-backend test --home /home/user1/gaia/nodes/node1
# 创世前设置验证人质押的额度, 可以创建多个币种 coin
# gaiad add-genesis-account [address_or_key_name] [coin][,[coin]] [flags]
./gaiad add-genesis-account $(./gaiad keys show validator -a --keyring-backend test --home /home/user1/gaia/nodes/node1) 1000000000stake,1000000000validatortoken --home /home/user1/gaia/nodes/node1
# 生成创建验证人的交易, gentx 默认存储在 ~/.gaiad/config/ 中
./gaiad gentx validator 10000000stake --keyring-backend test --chain-id=testing --home /home/user1/gaia/nodes/node1
# 将生成的质押交易添加到创世文件
./gaiad collect-gentxs --home /home/user1/gaia/nodes/node1
# gasprice 设置 0.5stake
# run
./gaiad start --home /home/user1/gaia/nodes/node1
# or
nohup ./gaiad start --home=/home/user1/gaia/nodes/node1 > /home/user1/gaia/node1.log 2>&1 &其它节点
./gaiad tendermint show-node-id --home /home/user1/gaia/nodes/node1
f3923c439c907bb96cff7696098d90a2996a9013
# p2p配置地址
f3923c439c907bb96cff7696098d90a2996a9013@192.168.0.206:36656
# 修改 gas 费
# 拷贝创世文件
# 启动节点
nohup ./gaiad start --home=/home/user1/gaia/nodes/node2 > /home/user1/gaia/node2.log 2>&1管理命令
# 解锁验证者
gaiad tx slashing unjail --from=<key_name> --chain-id=<chain_id>
gaiad tendermint show-node-id
f3923c439c907bb96cff7696098d90a2996a9013
gaiad tendermint show-address
cosmosvalcons105vgfe5f2kchmwmr0rzkmfttgphnx00r5yrj7e
gaiad tendermint show-validator
{"@type":"/cosmos.crypto.ed25519.PubKey","key":"nM2z9CwbMepQ1+YK6nb2UpypPKCvUNWkRSsf/HfKNPY="}
# 查看验证者列表
gaiad query staking validators
# 质押
gaiad tx staking create-validator --amount=1000000stake --pubkey='{"@type":"/cosmos.crypto.ed25519.PubKey","key":"4cD8vApEm3KrX5VoLyNDcXCS0smIfv3l99ZAlFRZh5U="}' \
--moniker="node2" \
--chain-id=testing \
--commission-rate="0.10" \
--commission-max-rate="0.20" \
--commission-max-change-rate="0.01" \
--gas="auto" \
--gas-prices="0stake" \
--from=val2 \
--keyring-backend test \
--home /home/user1/gaia/nodes/node1
# 减少质押金额
gaiad tx staking unbond cosmosvaloper1e8863kf9vjlyy2mru2gc8569j6fzt0t7yr2pge 9000000stake \
--from=cosmos1e8863kf9vjlyy2mru2gc8569j6fzt0t7ph75y2 \
--chain-id=testing \
--keyring-backend=test \
--home /home/user1/gaia/nodes/node1 -y
# 提取挖矿奖励(将验证者节点地址里面的钱 提取 到验证者用户内)
gaiad tx distribution withdraw-rewards cosmosvaloper1e8863kf9vjlyy2mru2gc8569j6fzt0t7yr2pge \
--from cosmos1e8863kf9vjlyy2mru2gc8569j6fzt0t7ph75y2 \
--home /home/user1/gaia/nodes/node1 \
--keyring-backend test \
--chain-id=testing \
--commission
# --commission 除了提取奖励, 还把佣金也提取出来密钥管理
gaiad keys add <key-name> <flags>
gaiad keys list压测事项
- 部署节点
- 准备用户, 导出私钥
- 给准备的用户转交易费用
- 来回交易转账
基础信息
信息如下:
主机: 192.168.0.10
用户: user1
部署路径: /home/user1/gaia
node 路径: /home/user1/gaia/nodes/node1
验证者账号: validator - cosmos1e8863kf9vjlyy2mru2gc8569j6fzt0t7ph75y2
端口:
rpc_port: 31317
p2p_port: 36656
grpc: 36657
grpc_web: 36658
grpc 39090
grpcweb 0.0.0.0:39091准备账号信息
# 添加多个用户
./gaiad keys add cwx1 --keyring-backend=test --home /home/user1/gaia/nodes/node1
./gaiad keys add cwx2 --keyring-backend=test --home /home/user1/gaia/nodes/node1
./gaiad keys list --keyring-backend=test --home /home/user1/gaia/nodes/node1
cosmos1etl0nc0alzkmaznqgy6ugc8924sayl49p7fjr2
cosmos1rah8xqdwcl6axzr62ckhr3sy8eqaddlpncm9cz
cosmos1apum482gv8z4u02dcl86jn8khkjpaxtv99gktk
cosmos13nyxfz25auc884pq6q24szst70258a0eunxt8d
cosmos1xyrwm00vl4984ylsumw2encg8r9x0djkcmrdyh
cosmos1yt8jsjcasxcnte6mpfdtxk39x5g2klhk6qwkas
# 私钥
VFQe75sQOB7EtCm7EHTbGcbwF77tjOOyIYzpaacjTKA=
/Q+s22HYEZQ3FEP1vbp1SSrue3I1vQ8mCZiMz34FSpA=
KB+GQQo1GOUBR1FQN/neQwjQMvfZtA0ExAdCw8DC2l4=
fskKmi+vCooWSeG32bb/6nGPbj0Wu2QkOEMUWlBZOjc=
UXjSjhKKXRupHX8Y1a9H6Amn8vehCNaTPr+LjCMSrAA=
SitCpsi1dO0kBW0dMTE2CMoIHvLNOUwFzFHh0Dz6Dkk=
# 导出私钥
./gaiad keys export cwx1 --unsafe --unarmored-hex --keyring-backend test --home /home/user1/gaia/nodes/node1 | xxd -r -p | base64
# 查询用户余额
./gaiad q bank balances cosmos1e8863kf9vjlyy2mru2gc8569j6fzt0t7ph75y2 --home /home/user1/gaia/nodes/node1
# 给普通用户转钱 - 多个
./gaiad tx bank send \
cosmos1e8863kf9vjlyy2mru2gc8569j6fzt0t7ph75y2 \
cosmos1yt8jsjcasxcnte6mpfdtxk39x5g2klhk6qwkas \
70000000stake \
--chain-id=testing \
--keyring-backend=test \
--home /home/user1/gaia/nodes/node1 \
--fees=0stake -y
# 查询交易数据
./gaiad q tx CACFB7AA92028563363E53C17C22B05C3EBFE0ABE6AE3B9DAF327886C8AC0C64 --node 'tcp://127.0.0.1:36657'接入 cosmoshub-4 网络
gaiad init CUSTOM_MONIKER --chain-id cosmoshub-4
# Set minimum gas price & peers
sed -i'' 's/minimum-gas-prices = ""/minimum-gas-prices = "0.0025uatom"/' $HOME/.gaia/config/app.toml
sed -i'' 's/persistent_peers = ""/persistent_peers = '"\"$(curl -s https://raw.githubusercontent.com/cosmos/chain-registry/master/cosmoshub/chain.json | jq -r '[foreach .peers.seeds[] as $item (""; "\($item.id)@\($item.address)")] | join(",")')\""'/' $HOME/.gaia/config/config.toml
# Configure State sync
sed -i'' 's/enable = false/enable = true/' $HOME/.gaia/config/config.toml
sed -i'' 's/trust_height = 0/trust_height = <BLOCK_HEIGHT>/' $HOME/.gaia/config/config.toml
sed -i'' 's/trust_hash = ""/trust_hash = "<BLOCK_HASH>"/' $HOME/.gaia/config/config.toml
sed -i'' 's/rpc_servers = ""/rpc_servers = "https:\/\/cosmos-rpc.polkachu.com:443,https:\/\/rpc-cosmoshub-ia.cosmosia.notional.ventures:443,https:\/\/rpc.cosmos.network:443"/' $HOME/.gaia/config/config.toml
# Start Gaia
gaiad start --x-crisis-skip-assert-invariants最后更新于