-
Notifications
You must be signed in to change notification settings - Fork 9
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
9296668
commit 84c2fc6
Showing
4 changed files
with
76 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,4 @@ | ||
title: Onboarding | ||
nav: | ||
- index.md | ||
- run-validator |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
title: Running Validators | ||
nav: | ||
- index.md | ||
- using-systemd.md |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
--- | ||
title: Run a Validator | ||
description: TODO | ||
hide: | ||
- feedback | ||
template: subsection-index-page.html | ||
--- |
64 changes: 64 additions & 0 deletions
64
infrastructure/validators/onboarding/run-validator/using-systemd.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,64 @@ | ||
--- | ||
title: Use Systemd | ||
description: Using a service manager for your validator node. | ||
--- | ||
|
||
You can run your validator as a [systemd](https://en.wikipedia.org/wiki/Systemd) process so that it | ||
will automatically restart on server reboots or crashes (and helps to avoid getting | ||
[slashed](../learn/learn-offenses.md)). | ||
|
||
Before following this guide you should have already set up your validator by following the | ||
[How to validate](../learn/learn-validator.md) article. | ||
|
||
First create a new unit file called `polkadot-validator.service` in `/etc/systemd/system/`. | ||
|
||
```bash | ||
touch /etc/systemd/system/polkadot-validator.service | ||
``` | ||
|
||
In this unit file you will write the commands that you want to run on server boot / restart. | ||
|
||
``` | ||
[Unit] | ||
Description=Polkadot Validator | ||
[Service] | ||
ExecStart=PATH_TO_POLKADOT_BIN --validator --name SHOW_ON_TELEMETRY | ||
Restart=always | ||
RestartSec=120 | ||
[Install] | ||
WantedBy=multi-user.target | ||
``` | ||
|
||
!!!warning | ||
It is recommended to delay the restart of a node with `RestartSec` in the case of node crashes. It's | ||
possible that when a node crashes, consensus votes in GRANDPA aren't persisted to disk. In this | ||
case, there is potential to equivocate when immediately restarting. What can happen is the node will | ||
not recognize votes that didn't make it to disk, and will then cast conflicting votes. Delaying the | ||
restart will allow the network to progress past potentially conflicting votes, at which point other | ||
nodes will not accept them. | ||
|
||
To enable this to autostart on bootup run: | ||
|
||
```bash | ||
systemctl enable polkadot-validator.service | ||
``` | ||
|
||
Start it manually with: | ||
|
||
```bash | ||
systemctl start polkadot-validator.service | ||
``` | ||
|
||
You can check that it's working with: | ||
|
||
```bash | ||
systemctl status polkadot-validator.service | ||
``` | ||
|
||
You can tail the logs with `journalctl` like so: | ||
|
||
```bash | ||
journalctl -f -u polkadot-validator | ||
``` |