[Validator only]
14. Run Validator Nodes
There are two files that your validator needs to run the new network:
migration.blob
genesis.blob
Both of them can be grabbed by executing the fetch_blobs.sh
script of the genesis repository.
First time running the node after genesis ceremony
Option 1: Running with chain override
Since the new genesis has just been generated, your node software doesn't recognize it yet as mainnet
. Therefore,
you need to override this parameter in the chain configuration.
The following docker-compose snippet shows how to do this:
services:
iota-node:
image: iotaledger/iota-node:v0.11.1-alpha
ports:
- "8080:8080"
- "8081:8081"
- "8084:8084/udp"
- "9000:9000"
- "9184:9184"
volumes:
- ./key-pairs:/opt/iota/key-pairs/:ro
- ./validator.yaml:/opt/iota/config/validator.yaml:ro
- ./genesis.blob:/opt/iota/config/genesis.blob:ro
- ./migration.blob:/opt/iota/config/migration.blob:ro
- ./iotadb:/opt/iota/db:rw
environment:
- IOTA_PROTOCOL_CONFIG_CHAIN_OVERRIDE=mainnet
command: [
"/usr/local/bin/iota-node",
"--config-path",
"/opt/iota/config/validator.yaml",
]
Option 2: Running with a fresh software release
Once the genesis is finalized, the IOTA Foundation will release a new version of the node software that recognizes the new genesis
as the mainnet
. Building and releasing this software is a process that takes some time, so you might need to wait a bit before it
is available. However, once it is out, you don't need to run your node with the IOTA_PROTOCOL_CONFIG_CHAIN_OVERRIDE
environment variable anymore.