Skip to main content

Validator Node Configuration

The IOTA validator node configuration file is a YAML file (usually named validator.yaml) that you can use to configure your iota-node.

To simplify the setup process, you can use the default validator node configuration file:

---
authority-key-pair:
path: /opt/iota/key-pairs/authority.key
protocol-key-pair:
path: /opt/iota/key-pairs/protocol.key
network-key-pair:
path: /opt/iota/key-pairs/network.key

db-path: /opt/iota/db/authorities_db

network-address: /ip4/0.0.0.0/tcp/8080/http
metrics-address: "0.0.0.0:9184"
admin-interface-address: "127.0.0.1:1337"

consensus-config:
db-path: /opt/iota/db/consensus_db
internal-worker-address: null
enable-event-processing: false

p2p-config:
listen-address: "0.0.0.0:8084"
external-address: /dns/$HOSTNAME/udp/8084 # UPDATE THIS
anemo-config:
max-concurrent-connections: 0

genesis:
genesis-file-location: /opt/iota/config/genesis.blob
migration-tx-data-path: /opt/iota/config/migration.blob

authority-store-pruning-config:
num-latest-epoch-dbs-to-retain: 3
epoch-db-pruning-period-secs: 3600
num-epochs-to-retain: 1
max-checkpoints-in-batch: 5
max-transactions-in-batch: 1000
end-of-epoch-broadcast-channel-capacity: 128
checkpoint-executor-config:
checkpoint-execution-max-concurrency: 200
local-execution-timeout-sec: 10
db-checkpoint-config:
perform-db-checkpoints-at-epoch-end: false
indirect-objects-threshold: 18446744073709551615

metrics:
push-interval-seconds: 60
push-url: https://metrics-proxy.mainnet.iota.cafe:8443/publish/metrics

state-archive-read-config:
- object-store-config:
object-store: "S3"
aws-endpoint: "https://archive.mainnet.iota.cafe"
aws-virtual-hosted-style-request: true
object-store-connection-limit: 20
no-sign-request: true
concurrency: 5
use-for-pruning-watermark: false

This default configuration uses default ports, archive and pruning settings, and also covers peering configuration for the selected network. If you're fine with the default settings, you can use the template as is and continue with the node setup either using Docker or using systemd.

For more specific guidance on how to configure your node to suit your needs, e.g., configure snapshot, refer to the following sections:

  • Network - Peering configuration for the node.
  • Pruning - How to prune your validator node to leverage storage space.
  • Snapshots - How to configure formal and RocksDB snapshots for your validator node.
  • Archives - How to configure archives for your validator node.