Docs
Node Operation
Validate
Upgrade your Validator

Validator Upgrade Guide

Introduction

Validators are crucial to the stability and security of the Tangle Network. This guide provides detailed steps for upgrading validators while maintaining strict uptime requirements to avoid slashing.

Preparation

Key Components

Session Keys

  • Stored in the client, linking your node to the staking proxy.
  • Changing keys requires waiting for the current session to finish plus two more sessions.

Keystore

  • Located at /chains/Tangle/keystore.
  • Contains private keys for signing transactions.
  • Do not clone or copy the keystore; generate new keys for each validator instance.

Upgrade Steps

Setting Up Validator B (Your New Validator)

  1. Start and sync a second node (Validator B) with the --validator flag.
  2. Generate session keys for Validator B.
  3. Submit a set_key extrinsic from your staking proxy with Validator B's session key.
  4. Note the session when this extrinsic is executed.
  5. Keep Validator A running until two full sessions have elapsed after the current one.

Switching to Validator B

  1. After Session N+3, Validator B will act as your validator.
  2. Perform maintenance on Validator A.

Restoring Validator A

  1. Restart Validator A with the --validator flag and sync it.
  2. Generate new session keys for Validator A.
  3. Submit a set_key extrinsic with Validator A's new session key.
  4. Keep Validator B running until two full sessions have elapsed after the current session.

Monitoring the Transition

Verify the session change by looking for log messages like:

2019-10-28 21:44:13 Applying authority set change scheduled at block #450092
2019-10-28 21:44:13 Applying GRANDPA set change to new set with 20 authorities