In this guide, we will be relaying between Humans (channel-0) and Osmosis (channel-15750). When setting up your Humans and Osmosis full nodes, be sure to offset the ports being used in both the app.toml and config.toml files of the respective chains (this process will be shown below).
First, set grpc server on port 9090 in the app.toml file from the $HOME/.humansd/config directory:
nano $HOME/.humansd/config/app.toml
[grpc]
# Enable defines if the gRPC server should be enabled.
enable = true
# Address defines the gRPC server address to bind to.
address = "0.0.0.0:9090"
Then, set the pprof_laddr to port 6060, rpc laddr to port 26657, and prp laddr to 26656 in the config.toml file from the $HOME/.humansd/config directory:
[rpc]
# TCP or UNIX socket address for the RPC server to listen on
laddr = "tcp://127.0.0.1:26657"
[p2p]
# Address to listen for incoming connections
laddr = "tcp://0.0.0.0:26656"
Osmosis Daemon Settings
First, set grpc server to port 9092 in the app.toml file from the $HOME/.osmosisd/config directory:
nano $HOME/.osmosisd/config/app.toml
[grpc]
# Enable defines if the gRPC server should be enabled.
enable = true
# Address defines the gRPC server address to bind to.
address = "0.0.0.0:9092"
Then, set the pprof_laddr to port 6062, rpc laddr to port 26757, and prp laddr to 26756 in the config.toml file from the $HOME/.osmosisd/config directory:
#Edit the hermes configuration (use ports according the port configuration set above, adding only chains that will be relayed) and save the file.
The best practice is to use the same mnemonic over all networks. Do not use your relaying-addresses for anything else, because it will lead to account sequence errors.
hermes config validate
INFO ThreadId(01) using default configuration from '/root/.hermes/config.toml'
INFO ThreadId(01) running Hermes v1.7.4
SUCCESS "configuration is valid"
Perform the hermes health-check to see if all connected nodes are up and synced:
hermes health-check
INFO ThreadId(01) using default configuration from '/root/.hermes/config.toml'
INFO ThreadId(01) running Hermes v1.7.4
INFO ThreadId(01) health_check{chain=osmosis-1}: performing health check...
WARN ThreadId(06) health_check{chain=osmosis-1}: Will use fallback value for max_block_time: `30s`. Error: response error: Internal error: genesis response is large, please use the genesis_chunked API instead (code: -32603)
INFO ThreadId(01) health_check{chain=osmosis-1}: chain is healthy
INFO ThreadId(01) health_check{chain=humans_1089-1}: performing health check...
INFO ThreadId(11) health_check{chain=humans_1089-1}: Updated `max_block_time` using /genesis endpoint. Old value: `30s`, new value: `30s`
INFO ThreadId(01) health_check{chain=humans_1089-1}: chain is healthy
SUCCES performed health check for all chains in the config
When your nodes are fully synced, you can start the hermes daemon: