Masternode One-click Setup Tutorial

#
Masternode One-click Setup Tutorial

Overview

This guide uses the one-click-masternode setup feature. This is an optional feature for those that wish to have a more hands-off experience with masternode mining. This Poseidon feature automatically configures your CentOS linux server to be a Pirl Masternode Miner. Updates will be applied automatically. All you have to do is monitor your server to ensure it stays operational. This is as simple as rebooting the server, should it come offline. 


 

Prerequisites

  • a. a VPS with minimum 4GB RAM and enough storage to run the masternode (minimum 20GB, recommended 60GB)
  • b. Downloaded and installed the latest Pirl Nautilus Wallet and created a wallet account/address (see tutorial).
  • c. Created a Poseidon account (see tutorial).
  • d. Sent 20001 Pirl to the Pirl Nautilus wallet address in step (a.) (see tutorial).
  • e. Sent a small amount of Pirl (0.5) from your Nautilus wallet address to your Poseidon wallet address and recorded the transaction hash (see tutorial).
  • f. Configured your Nautilus wallet account to 'watch' the Pirl Masternode contract and deposit 20000 Pirl into the contract address (see tutorial).

1/. Go back to the Nautilus wallet, and click on the "Contracts" icon near the top right of the screen.


2/.Click on the option "WATCH CONTRACT". A window will pop up.


3/. In the contract address, enter:

0x256b2b26Fe8eCAd201103946F8C603b401cE16EC

For the contract name, name it whatever you wish.
4/. In JSON INTERFACE, enter this information (copy and paste the entire code!):

[{"constant":false,"inputs":[],"name":"nodeRegistration","outputs":[{"name":"paid","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"_pirlAddress","type":"address"}],"name":"getNodeAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"moderators","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"nodes","outputs":[{"name":"pirlAddress","type":"address"},{"name":"nodeStake","type":"uint256"},{"name":"nodeHash","type":"bytes20"},{"name":"stakeLocked","type":"bool"},{"name":"nodeEnabled","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"disableNodeRegistration","outputs":[{"name":"disabled","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"nodeCost","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_pirlAddress","type":"address"}],"name":"getStakeLockedStatus","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"nodeCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_admin","type":"address"}],"name":"setAdmin","outputs":[{"name":"set","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"enableNode","outputs":[{"name":"enabled","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"nodeRegistrationEnabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"disableNode","outputs":[{"name":"disabled","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"withdrawStake","outputs":[{"name":"withdrawn","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"nodeAddresses","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_pirlAddress","type":"address"}],"name":"getNodeEnabledStatus","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_pirlAddress","type":"address"}],"name":"getNodeStake","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"enableNodeRegistration","outputs":[{"name":"enabled","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_pirlAddress","type":"address"}],"name":"getNodeHash","outputs":[{"name":"","type":"bytes20"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"nodeFee","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"admin","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_pirlAddress","type":"address"},{"indexed":true,"name":"_nodeHash","type":"bytes20"},{"indexed":true,"name":"_nodeRegistered","type":"bool"},{"indexed":false,"name":"_dateRegistered","type":"uint256"}],"name":"MasterNodeRegistered","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_pirlAddress","type":"address"},{"indexed":true,"name":"_nodeHash","type":"bytes20"},{"indexed":true,"name":"_nodeDisabled","type":"bool"},{"indexed":false,"name":"_dateDisabled","type":"uint256"}],"name":"MasterNodeDisabled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_pirlAddress","type":"address"},{"indexed":true,"name":"_nodeHash","type":"bytes20"},{"indexed":true,"name":"_nodeEnabled","type":"bool"},{"indexed":false,"name":"_dateEnabled","type":"uint256"}],"name":"MasterNodeEnabled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_pirlAddress","type":"address"},{"indexed":true,"name":"_nodeHash","type":"bytes20"},{"indexed":true,"name":"_nodePaid","type":"bool"},{"indexed":false,"name":"_datePaid","type":"uint256"}],"name":"MasterNodeRewarded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_pirlAddress","type":"address"},{"indexed":true,"name":"_nodeHash","type":"bytes20"},{"indexed":true,"name":"_stakeWithdrawn","type":"bool"},{"indexed":false,"name":"_dateWithdrawn","type":"uint256"}],"name":"StakeWithdrawn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_invoker","type":"address"},{"indexed":false,"name":"_dateEnabled","type":"uint256"},{"indexed":true,"name":"_registrationEnabled","type":"bool"}],"name":"MasterNodeRegistrationEnabled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_invoker","type":"address"},{"indexed":false,"name":"_dateDisabled","type":"uint256"},{"indexed":true,"name":"_registrationDisabled","type":"bool"}],"name":"MasterNodeRegistrationDisabled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_invoker","type":"address"},{"indexed":true,"name":"_admin","type":"address"},{"indexed":true,"name":"_adminSet","type":"bool"}],"name":"SetAdmin","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_invoker","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"},{"indexed":true,"name":"_ownerChanged","type":"bool"}],"name":"TransferOwnership","type":"event"}]

5/. After everything is entered, click OK.

  • f. Added the Masternode entry in Poseidon (see tutorial)
  • g. Waited until the Masternode is issued a valid MN token (which will occur automatically. This may take a couple of hours to complete.)


 

-- STEP 1 -- Verify Masternode Entry
Verify your Poseidon Masternode record has been created properly

1/. Login to Poseidon, and on the left hand menu, choose Masternodes -> My Masternodes.
2/. The "MN Token" should look something like: a1234567-90a1-2b34-56e7-1234f5dfe6cb. If you do not see a valid 'Masternode Token' value, wait a few hours. If the problem continues, obtain assistance via Pirl's Discord channel
3/. If all pre-requisites have been completed successfully, you should see the following screen shot :

-- STEP 2 --
Create/Launch CentOS linux server

1/. Verify that the server meets the appropriate specifications as noted in the Pirl Masternode Setup Tutorial.
2/. The server MUST use the CentOS version of linux.
3/. Record of the static/public IP address of the server as well as the root password. We do recommend logging into that server 1x to ensure the 'root' credentials work. It is not necessary to take any other actions in the server. In fact, it's preferred that you don't make any other adjustments, whatsoever.


 

-- STEP 3 --
Configure One-Click MN Setup

Ensure you have the public/static IP address and 'root' credentials before proceeding with this step
1/. Login to Poseidon, and on the left hand menu, choose Masternodes -> My Masternodes. You should see the following:




2/. Click the 'One-Click MN Setup' button and complete all fields.



3/. After returning to the 'My Masternodes' screen, you should see that your masternode entry for 'Managed by Poseidon' is set to 'True'.



4/. Please allow 30 minutes for the configuration to finish. You can click the 'details' button to monitor the status.



5/. While we don't necessarily encourage active access on the server, if you wish to check the status, log into your server and issue the following command:

      # journalctl -f

You should see status messages. Click CTRL+C to exit the journal/log screen.

6/. Monitor the status of your Masternode miner by checking the Poseidon Masternode details page. A functioning miner should appear as follows (however, the version may be different than is shown in the screen shot below):

--Troubleshooting / FAQ--

I waited 30 minutes for the 'one-click MN setup' to complete, but the Masternode Details page is still blank

  • Contact the Pirl development team in the Discord channel


Should I be concerned that I gave away root level credentials?

  • This should not be a concern if the only purpose for the linux server is to act as a Pirl Masternode. If you are using the same server for other purposes, we don't recommend you use this feature.
  • It shouldn't be necessary for you to actively manage this server. For that reason, use a very-difficult 'root' level password. Do not user a password that you use on other systems.

Do I have to perform any updates?

  • No. Poseidon will take care of this for you. All you have to do is monitor your servers uptime and ensure the Masternode details page is showing current transactions.