Difference between revisions of "Relay Node"
Mochimowiki (talk | contribs) (→Deployment Steps) |
m |
||
Line 102: | Line 102: | ||
[Service] | [Service] | ||
− | ExecStart=/home/mochimorelay/start-mochimo.sh | + | ExecStart=/bin/bash /home/mochimorelay/start-mochimo.sh |
[Install] | [Install] | ||
Line 127: | Line 127: | ||
<pre>sudo chmod +x /home/mochimorelay/start-mochimo.sh</pre> | <pre>sudo chmod +x /home/mochimorelay/start-mochimo.sh</pre> | ||
− | 10. | + | 10. Return to root user, start the service, and reboot to confirm: |
− | <pre> | + | <pre>su - |
− | + | systemctl enable mochimo.service | |
+ | systemctl start mochimo.service | ||
sudo reboot</pre> | sudo reboot</pre> |
Revision as of 15:30, 8 February 2021
Contents
How to Deploy a Mochimo VPS Relay Node
Summary
The below steps will allow you to set up a VPS node that self-reboots weekly, installs the Mochimo server in a ramdisk (for high performance) creates a local mochimo service, and automatically restarts the Mochimo server as a non solving node upon reboot.
Audience
People who want to support the network by operating a node to relay transactions / blocks.
Minimum System Requirements
Ubuntu 16.04 LTS 1 vCPU 2 GB RAM 10 GB Hard Disk
Create a new user for Mochimo
1 Log into root
user on your VPS.
2. Create a new user specific for this Mochimo relay node.
adduser mochimorelay
3. Enter a strong password. (you can return through the prompts asking for user details, they can all be blank)
4. Give your new user Sudo permissions.
usermod -aG sudo mochimorelay
5. Switch to your new user.
su - mochimorelay
If you've sucessfully created a new user with Sudo permissions your terminal should say something like:
To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details.
You are now ready to start your node deployment.
Deployment Steps
1. Create ramdisk directory.
sudo mkdir /mnt/ramdisk
2. Setup crontab to reboot daily. Below script selects nano with "1" and sets
the system to reboot weekly at 6 am.
(you may be prompted to press Y when using apt-get)
sudo apt-get install nano cd /etc sudo crontab -e
File Contents:
0 6 * * 1 /sbin/shutdown -r
3. Install build tools, and build Mochimo
(you may be prompted to press Y when using apt-get)
cd sudo apt-get install git sudo apt-get install build-essential git clone https://github.com/mochimodev/mochimo cd mochimo/src ./makeunx bin -DCPU ./makeunx install
4. Tar the binary directory, and copy to /mochimorelay
cd .. tar -czvf bin.tgz bin cp bin.tgz /home/mochimorelay/bin.tgz cd .. rm -rf mochimo
5. Set the fstab to load the ramdisk on reboot
sudo nano /etc/fstab
File Contents (append to bottom of file):
tmpfs /mnt/ramdisk tmpfs nodev,nosuid,nodiratime,size=1024M
6. Create the systemd system service to start Mochimo on boot.
cd /etc/systemd/system sudo nano mochimo.service
File Contents:
[Unit] Description=Mochimo Server [Service] ExecStart=/bin/bash /home/mochimorelay/start-mochimo.sh [Install] WantedBy=default.target
7. Make the service privs 644:
sudo chmod 644 mochimo.service
8. Create the startup script off of /mochimorelay
sudo nano /home/mochimorelay/start-mochimo.sh #! /bin/bash sudo cp /home/mochimorelay/bin.tgz /mnt/ramdisk cd /mnt/ramdisk sudo tar -xzvf bin.tgz cd bin cp maddr.mat maddr.dat ./gomochi d -n -D
9. Make the startup script executable:
sudo chmod +x /home/mochimorelay/start-mochimo.sh
10. Return to root user, start the service, and reboot to confirm:
su - systemctl enable mochimo.service systemctl start mochimo.service sudo reboot