-
Notifications
You must be signed in to change notification settings - Fork 10
Masternode Cold Wallet Setup
This guide covers the setup of a single masternode on a Linux system. The node will be setup as a cold node - means the coins will never leave your local wallet.
Requirements:
- 1.000 RACE in your LOCAL WALLET (mostly a Windows/QT Wallet)
- Masternode Server: raced on Linux VPS (Ubuntu 15.04 x64), online 24/7 - hereafter REMOTE WALLET
- Unique IPv4 address
To compile and run RACE on linux please see the building guide.
As written above, your local wallet with your 1000 RACE will be called LOCAL hereafter, the masternode server and it's wallet will be called REMOTE hereafter.
We need to collect some data, the best would be if you use the following skeleton, paste it into notepad and add the data once we find out so that you have it ready when we need it.
TRANSACTION_ID.........:
VOUT...................:
MASTERNODE_KEY.........:
MASTERNODE_PUBLIC_IP...:
You can already enter your public ip address (Public IP of your VPS / REMOTE WALLET).
Startup both wallets and make sure both (LOCAL and REMOTE) are fully synced.
For running a masternode you must sent exactly 1000 RACE in one transaction to a new receiving address in your LOCAL wallet. Todo this please do the following:
- Generate a new receiving address in your LOCAL wallet and call it mn1 (File -> Receiving addresses -> New)
- Copy the new RACE address
- Send exactly 1000 RACE from your LOCAL wallet to your new address.
- Wait for the transaction to have 15 confirmations, check on the Transactions tab
After your transaction has 15 confirmations you can open the Debug console on your LOCAL wallet and put in masternode outputs
:
~# masternode outputs
{
"f5d4ec12b6ab68977eed84913255ea6685110e5f781e5e525a12bc2fd1c6b9d": "1"
}
The first part is your TRANSACTION ID - the second part is your VOUT. Please update your skeleton from above with the data!
Now we switch to your REMOTE wallet - the one running on the Linux VPS. Make sure that the wallet daemon is up & running and fully synced. You can check by race-cli getinfo
. Compare the blocks to the official explorer.
To generate a privatekey for your masternode you now need to enter the following command
~# race-cli masternode genkey
YOUR_MASTERNODE_PRIVATE_KEY
Add this generated masternode privatekey to your skeleton from above.
We now need to stop your REMOTE raced daemon and edit the configuration file of it.
~# race-cli stop
Open race.conf (nano ~/.racecore/race.conf
) and make sure it looks like the following - the values are from your skeleton template above. Only rpcuser and rpcpassword can be selected freely.
rpcuser=racerpc
rpcpassword=rpcpassword
bind=123.123.123.123:8800 (MASTERNODE PUBLIC IP - :8800 is important)
externalip=123.123.123.123 (MASTERNODE PUBLIC IP - this time no :8800)
daemon=1
masternode=1
masternodeprivkey=MASTERNODE_KEY
Start your remote again now:
~# raced
Now we are going back to your LOCAL wallet and make the final changes there. Open your masternode configuration file by clicking Tools -> Open Masternode Configuration File Under all # put a new line which consists of the following data from your skeletion:
mn1 MASTERNODE_PUBLIC_IP:8800 MASTERNODE_KEY TRANSACTION_ID VOUT
An example is in the masternode.conf file just above which should help you.
- Save and close the file.
- Make sure you having the masternode tab enabled on your LOCAL wallet (Settings->Options->Wallet->Show Masternode Tab).
- restart your LOCAL wallet (Closing and starting again)
Start your MN by clicking on the masternode tab in your LOCAL wallet and start it by right click -> Start alias.
Sentinel is a watchdog script based on python which is required and keeps your masternode health. Sentinel for a RACE Masternode can be found here: https://github.com/racecrypto/sentinel