This page demonstrates how to set up a avalanchego.service
file to enable a manually deployed validator node to run in the background of a server instead of in the terminal directly.
Make sure that AvalancheGo is already installed on your machine.
Run this command in your terminal to create the avalanchego.service
file
sudo nano /etc/systemd/system/avalanchego.service
Paste the following configuration into the avalanchego.service
file
Remember to modify the values of:
user=
group=
WorkingDirectory=
ExecStart=
For those that you have configured on your Server:
[ Unit ]
Description=A valanche Node service
After=n etwork.target
[ Service ]
User= 'YourUserHere'
Group= 'YourUserHere'
Restart=a lways
PrivateTmp= true
TimeoutStopSec= 60 s
TimeoutStartSec= 10 s
StartLimitInterval= 120 s
StartLimitBurst= 5
WorkingDirectory=/ Your/Path/To/avalanchego
ExecStart=/ Your/Path/To/avalanchego/./avalanchego \
--network-id=f uji \
--api-metrics-enabled= true
[ Install ]
WantedBy=m ulti-user.target
Press Ctrl + X then Y then Enter to save and exit.
Now, run:
sudo systemctl daemon-reload
Run this command in your terminal to create the avalanchego.service
file
sudo nano /etc/systemd/system/avalanchego.service
Paste the following configuration into the avalanchego.service
file
[ Unit ]
Description=A valanche Node service
After=n etwork.target
[ Service ]
User= 'YourUserHere'
Group= 'YourUserHere'
Restart=a lways
PrivateTmp= true
TimeoutStopSec= 60 s
TimeoutStartSec= 10 s
StartLimitInterval= 120 s
StartLimitBurst= 5
WorkingDirectory=/ Your/Path/To/avalanchego
ExecStart=/ Your/Path/To/avalanchego/./avalanchego \
--api-metrics-enabled= true
[ Install ]
WantedBy=m ulti-user.target
Press Ctrl + X then Y then Enter to save and exit.
Now, run:
sudo systemctl daemon-reload
This command makes your node start automatically in case of a reboot, run it:
sudo systemctl enable avalanchego
To start the node, run:
sudo systemctl start avalanchego
sudo systemctl status avalanchego
Output:
socopower@avalanche-node-01:~$ sudo systemctl status avalanchego
● avalanchego.service - Avalanche Node service
Loaded: loaded (/etc/systemd/system/avalanchego.service; enabled ; vendor p >
Active: active (running) since Tue 2023-08-29 23:14:45 UTC; 5h 46min ago
Main PID: 2226 (avalanchego)
Tasks: 27 (limit: 38489 )
Memory: 8.7G
CPU: 5h 50min 31.165s
CGroup: /system.slice/avalanchego.service
└─2226 /usr/local/bin/avalanchego/./avalanchego --network-id=fuji
Aug 30 03:02:50 avalanche-node-01 avalanchego[2226]: INFO [08-30 | 03:02:50.685] >
Aug 30 03:02:51 avalanche-node-01 avalanchego[2226]: INFO [08-30 | 03:02:51.185] >
Aug 30 03:03:09 avalanche-node-01 avalanchego[2226]: [08-30 | 03:03:09.380] INFO >
Aug 30 03:03:23 avalanche-node-01 avalanchego[2226]: [08-30 | 03:03:23.983] INFO >
Aug 30 03:05:15 avalanche-node-01 avalanchego[2226]: [08-30 | 03:05:15.192] INFO >
Aug 30 03:05:15 avalanche-node-01 avalanchego[2226]: [08-30 | 03:05:15.237] INFO >
Aug 30 03:05:15 avalanche-node-01 avalanchego[2226]: [08-30 | 03:05:15.238] INFO >
Aug 30 03:05:19 avalanche-node-01 avalanchego[2226]: [08-30 | 03:05:19.809] INFO >
Aug 30 03:05:19 avalanche-node-01 avalanchego[2226]: [08-30 | 03:05:19.809] INFO >
Aug 30 05:00:47 avalanche-node-01 avalanchego[2226]: [08-30 | 05:00:47.001] INFO
To see the synchronization process, you can run the following command:
sudo journalctl -fu avalanchego