This guide will cover setting up a seed node for the Oasis Network. This guide assumes some basic knowledge on the use of command line tools.
Before following this guide, make sure you've followed the Prerequisites Guide and understand how to use the oasis-node
binary.
Due to recent improvements to the seed node, it is recommended to use oasis-node
with version 20.11.2 (or later).
We will be creating the following directory structure inside a chosen top-level /node
(feel free to name your directories however you wish) directory:
etc
: This will store the node configuration and genesis file.
data
: This will store the data directory needed by the running oasis-node
binary, including the complete blockchain state.
The directory permissions should be rwx------
.
To create the directory structure, use the following command:
mkdir -m700 -p /node/{etc,data}
The latest genesis file can be found in Network Parameters. You should download the latest genesis.json
file and copy it to the /node/etc
directory we just created.
This will configure the given node to only act as a seed node.
In order to configure the node create the /node/etc/config.yml
file with the following content:
datadir: /node/data​log:level:default: infotendermint: infotendermint/context: errorformat: JSON​genesis:file: /node/etc/genesis.json​consensus:tendermint:mode: seed
You can start the node by running the following command:
oasis-node --config /node/etc/config.yml
To get the seed node Tendermint identity, run the following command:
oasis-node identity tendermint show-node-address --datadir /node/data/
Nodes can now use your seed node by specifying it via a configuration flag:
--consensus.tendermint.p2p.seed <TENDERMINT_ADDRESS>@<EXTERNAL_IP>:26656