|
1 | 1 | --- |
2 | 2 | title: Operate your validator node |
3 | | -description: Day-to-day operations for Tempo validators. Node lifecycle, upgrades, key rotation, monitoring, and troubleshooting. |
| 3 | +description: Day-to-day operations for Tempo validators. Node lifecycle, monitoring, metrics, log management, and Grafana dashboards. |
4 | 4 | --- |
5 | 5 |
|
6 | 6 | # Operate your validator |
7 | 7 |
|
8 | 8 | This guide covers day-to-day operations for running a Tempo validator in production. |
9 | 9 |
|
10 | | -## Validator states |
| 10 | +Validator management differs depending on which ValidatorConfig version is active: |
11 | 11 |
|
12 | | -Your validator moves through different states during operation. The transitions will happen only once on your validator's creation. Every state transition will happen on epoch boundaries in the happy case. |
| 12 | +- **[ValidatorConfig V2](/guide/node/validator-config-v2)** (post-T2) — self-service key rotation, IP updates, and ownership transfers |
| 13 | +- **[ValidatorConfig V1](/guide/node/validator-config-v1)** (pre-T2, legacy) — all management operations require coordinating with the Tempo team |
13 | 14 |
|
14 | | -```mermaid |
15 | | -flowchart TD |
16 | | - A[Inactive] -->|epoch ends| B["Syncer<br/>The validator starts syncing"] |
17 | | - B -->|+1 epoch| C["Syncer and Player"] |
18 | | - C -->|"+1 epoch, receives share"| D["Syncer<br/>Player<br/>Dealer"] |
19 | | - D -->|"once fully synced"| E["Voter ↔ Proposer"] |
| 15 | +For validator states and lifecycle transitions, see the respective V1 and V2 pages. |
20 | 16 |
|
21 | | - click A "#not-a-participant-e" |
22 | | - click B "#syncer-epoch-e1" |
23 | | - click C "#player-epoch-e2" |
24 | | - click D "#dealer-epoch-e3" |
25 | | - click E "#dealer-epoch-e3" |
26 | | -``` |
27 | | - |
28 | | -Currently, on mainnet and testnet, the epoch length is around 3 hours, which means that your validator will transition through these states approximately every 3 hours. If the epoch length ever changes, the transition times will also change. |
29 | | - |
30 | | -#### Not a participant (E) |
31 | | - |
32 | | -Epoch E marks the addition of your validator to the on-chain validator configuration smart contract. Your validator isn't considered a peer by validators yet. This is because the validator hasn't been refreshed in the current epoch yet. It is normal that no height metrics progress during this period, your node has to be considered |
33 | | -a syncer to receive blocks. |
34 | | - |
35 | | -#### Syncer (epoch E+1) |
36 | | - |
37 | | -Your validator is now considered a peer by validators. It's syncing with the network and will be considered a player in the next epoch. |
38 | | - |
39 | | -#### Player (epoch E+2) |
40 | | - |
41 | | -Your validator is receiving consensus signing shares from dealers during the ceremony. |
42 | | - |
43 | | -#### Dealer (epoch E+3) |
44 | | - |
45 | | -Your validator is distributing consensus signing shares to other validators during the ceremony. Once your node is fully synced up, it will also |
46 | | -be able to propose blocks and vote for other validators' proposed blocks. |
47 | | - |
48 | | -#### Checking your validator's state |
| 17 | +## Checking your validator's state |
49 | 18 |
|
50 | 19 | Monitor these metrics to track your validator's state: |
51 | 20 |
|
@@ -140,47 +109,14 @@ The node will finish processing the current block before shutting down. Avoid us |
140 | 109 | **You cannot reset a validator's data and continue with the same identity.** Doing so risks inconsistent voting, which can cause irrecoverable network safety failures. |
141 | 110 | ::: |
142 | 111 |
|
143 | | -If you need to reset your validator's data, you must rotate to a new validator identity. This requires coordinating with the Tempo team to deactivate your old identity and register a new one. |
| 112 | +If you need to reset your validator's data, you must rotate to a new validator identity. See key rotation under [ValidatorConfig V2](/guide/node/validator-config-v2#rotate-validator-identity) or [ValidatorConfig V1](/guide/node/validator-config-v1#signing-key-rotation). |
144 | 113 |
|
145 | 114 | ## Key Management |
146 | 115 |
|
147 | | -### Signing Key Rotation |
148 | | - |
149 | | -To rotate your validator's signing key: |
150 | | - |
151 | | -1. Generate a new keypair: |
152 | | - |
153 | | -```bash |
154 | | -tempo consensus generate-private-key --output <new-key-path> |
155 | | -tempo consensus calculate-public-key --private-key <new-key-path> |
156 | | -``` |
157 | | - |
158 | | -2. Contact the Tempo team to update your validator's public key on-chain |
159 | | - |
160 | | -3. Once confirmed, update your node configuration to use the new key and restart. Once the node is running, your validator will go through the [validator lifecycle](/guide/node/operate-validator#validator-states). |
161 | | - |
162 | | -:::warning |
163 | | -The old validator identity must be deactivated before the new one is activated |
164 | | -::: |
165 | | - |
166 | | -### Signing Share Recovery |
| 116 | +For signing key rotation, IP address updates, signing share recovery, and ownership transfers, see: |
167 | 117 |
|
168 | | -:::danger |
169 | | -**You cannot reset a validator's data and continue with the same identity.** Doing so risks inconsistent voting, which can cause irrecoverable network safety failures. |
170 | | -::: |
171 | | - |
172 | | -If you lose your signing share (stored on the database in `<datadir>/consensus/`), you will need to rotate to a new validator identity. This requires coordinating with the Tempo team to deactivate your old identity and register a new one. |
173 | | -We're planning to release a high-availability feature that allows storing consensus data in an external database, which will enable signing share recovery without the need for key rotation. |
174 | | - |
175 | | -### Deleting Signing Shares |
176 | | - |
177 | | -:::warning[Breaking Change in v1.1.0] |
178 | | -`--delete-signing-share` now requires the `--force` flag to prevent accidental deletion of validator signing keys. **Update any automation scripts that manage validator key lifecycle.** |
179 | | -::: |
180 | | - |
181 | | -```bash |
182 | | -tempo consensus --delete-signing-share --force |
183 | | -``` |
| 118 | +- **[ValidatorConfig V2](/guide/node/validator-config-v2)** (post-T2) — self-service operations |
| 119 | +- **[ValidatorConfig V1](/guide/node/validator-config-v1#key-management)** (pre-T2) — coordinated through the Tempo team |
184 | 120 |
|
185 | 121 | ## Log Management |
186 | 122 |
|
|
0 commit comments