If you setup a successful masternode using this guide and my scripts, feel free to donate the first reward to alias address KYLEFROMOHIO ūüėČ
IMPORTANT: As of block 80500, masternodes have been simplified. You no longer need to maintain a second server NOR the masternode-miner. Once you register your masternode with wallet cli and configure your node with the wallet public key, you can backup your wallet.aro file and keys and take them offline. No longer need .env file NOR masternode-miner.

If you set up your masternode before block 80500 then you can do the following to remove your wallet from your node and secure your funds.

  1. backup your wallet.aro and take it offline; dont store it on node anymore. You can use SCP via command line or dos cmd OR download Filezilla and SFTP to server using your SSH key.
  2. delete the .env file $ rm .env;
  3. delete the masternode-miner folder; no longer needed; $ rm -rfv masternode-miner;
  4. remove the cron job for the miner… type $ crontab -e (will open cron file in text editor); put a # in front of the line to the left. that will comment it out OR just delete the whole line. then save it. if its nano editor. CTRL+X, then Y for yes, then ENTER
  5. If you had setup a second miner server you no longer need that. All you need is your node with your public key in the config.
  6. The light wallet-cli was only needed to register your masternode and pay the network fee of 10 ARO so you can remove that if you wish. Make sure your private keys are not on your node anymore.

As of block 80000 which occurred on August 10th, 2018, mining rewards are now split between three miners. CPU miners. GPU miners. And Masternode miners. Masternode miners receive 1/3rd of each block. This guide is how to setup a masternode on the Arionum network.

Arionum Masternode Requirements:

  1. 100,020 ARO. 100K will be locked for minimum 3 months and held for 1 month after you stop mining. 4 months total. If you want to quit after 3 months, you need to disable your masternode after month two. 10 ARO is the network fee to create the masternode. And it will cost 10 ARO to send 100k to new wallet address. Rewards you receive will NOT be locked. Only the initial 100k.
  2. A new clean empty ARO wallet address to put these coins in. Do NOT use this wallet for anything else.
  3. A fully synced Arionum node. Use KyleFromOhio’s “aronode” script to get yourself a fully synced node in 5 minutes. Read this¬†https://github.com/KyleFromOhio/arionum-scripts
  4. A server or computer running PHP to run the light wallet cli and store your private key temporarily. A 1GB 1 CPU server or smaller is plenty. You can also do this on any computer that has PHP-Cli on it. I recomend doing this on a second server just to be safe and ultra paranoid. You dont want to mistakenly leave your wallet.aro or private keys on the masternode.
  5. A VPS Hosting Account: Get a free $10 credit at Digital Ocean click here.

Setup Your (Master)Node Server

  1. masternode = node. It’s just a node that has been registered to be a masternode with a small config change.
  2. First get yourself some VPS hosting. Get a free $10 credit at Digital Ocean click here.
  3. On Digital Ocean, servers are called droplets. Click “Create Droplets”
  4. Under distributions choose Ubuntu 16.04 x64 (18.04 should work too).
  5. For a masternode, we need a powerful server. Select at least a 4GB 2 CPU Server Standard Droplet.
  6. (optional) Add backups. It cost 20% more but they will snapshot your server for you daily for easy one click restores.
  7. Select any datacenter region. Pick one closest to you or think outside the box and help us decentralize by placing one in a weird location.
  8. Enable “Private networking”. Disable IPV6. If you dont do this during creation, you will have to manually configure it yourself later in Linux. We will enable this in case we want to use our masternode to communicate with other servers we setup in the future. For more info see¬†Digital Ocean Private Networking Tutorial
  9. (optional) Enable Monitoring. This is just a Digital Ocean feature with some basic charts. Not required.
  10. (optional) HIGHLY RECOMMENDED! Use an SSH key instead of a password. I will cover this in SECURE THIS SERVER!
  11. Create a hostname. The name is irrelevant. You can call it anything like ARO-MASTERNODE01
  12. Click create to create new droplet. Should be ready in a couple moments.
  13. Your new server will have a public IP address. Make sure this will NOT change for the duration of the masternode. Do not use floating IP addresses NOR change hosting providers NOR change location NOR run from a local machine like at your home.
  14. SSH to your new node server using the public IP address and port 22. You can use Putty on Windows or iTerm on Mac to manage SSH. You create SSH key on your own computer. Backup the key. Dont lose it. then you copy key to server so you can access server. For help follow this guide:¬†https://www.digitalocean.com/community/tutorials/how-to-set-up-ssh-keys–2¬†and for Windows try this guide¬†https://devops.profitbricks.com/tutorials/use-ssh-keys-with-putty-on-windows/
  15. Type… ifconfig | grep ask;¬†# and you should see your public IP, your private IP, and your local IP. Your public IP is for the world. Your private IP can only be accessed by your other servers in same data center. You local IP can only be access from inside that one machine. If you dont see a private IP you did something wrong during setup. See¬†Digital Ocean Private Networking Tutorial
  16. Use KyleFromOhio’s “aronode” script to get yourself a fully synced node in 5 minutes. Read this¬†https://github.com/KyleFromOhio/arionum-scripts¬†Also Step-by-step ommands are listed below.
  17. Make sure your node is synced and running smoothly. If you have issues get help inside the Discord Chat. Check www.arionum.info for the latest block number. You can also run $ sudo bash aronode mainnet status
  18. Make sure you can access your node via its PUBLIC IP address in your web browser like http://YOUIPADDRESS. Should look something like this and show you the height of node and version. http://peer1.arionum.com/
  19. In Digital Ocean, go to “Networking” and click “Firewalls” and click “Create Firewall”. Name it something like “ARONODE-Firewall”. Remove IPV6 stuff. You only need inbound SSH port and HTTP (and HTTPS) for possible use later. Outbound can be left open. Save Firewall and apply it to your node. If you change your SSH port (recommended), then you will need to add a Custom Rule with your new Port number over TCP.
  20. NOTE: Do NOT store you wallet.aro NOR any private key information anywhere on your node. This is a security risk. We dont advise running the wallet cli on your node at all.

cd ~;
sudo apt-get update;
sudo apt-get install git -y;
mkdir scripts;
cd scripts;
git clone https://github.com/KyleFromOhio/arionum-scripts.git .;
chmod +x aronode;
sudo bash aronode mainnet install;

IMPORTANT: Once your node is installed, you need to initialize it by visiting¬†http://YOUR.PUBLIC.IP.ADDRESS¬†in your web browser. If you are using a custom domain name then visit¬†http://YOUDOMAINNAME.COM¬†this will start the sync process and then “status” function will work. If you see a nice pretty screen that says “Current Block 1” you are good to proceed.

Speed up sync by importing a daily snapshot from pxgamer then run sync manually to catch to latest block. Easy with these commands…

sudo bash aronode mainnet rebuild latest;
sudo bash aronode mainnet sync;
sudo bash aronode mainnet status;

Setup Second “Wallet” Server for the Wallet Cli Software

  1. Setup a second tiny droplet/server. Pick the cheapest one. You can destroy this server when you are done registering your node. Hosting providers charge you hourly NOT monthly. Do NOT download aronode script and do NOT run aronode install on this box. This is your wallet ONLY. If you install node software it will expose your IP address to the network. We want to hide this box since it will have your private keys. Do NOT install nginx/apache. Do NOT install mysql.
  2. We can destroy this server when we are done with it. This can be setup on the same server as your node but we highly recommend NOT doing this because your wallet folder will contain your wallet private key. Your Arionum node is public. It can be seen by others including whether it is a masternode or not and may become a target in the future for brute forcing or other vulnerability attacks. If you lose your private key to a hacker, no one can help you. So secure the damn thing. This server can be in any GEO location as it will be only communicating with arionum’s main peers. Doing this will keep you from making the mistake of leaving your keys on your public node.
  3. SSH to your new wallet server using the public IP address and port 22 (or other port if you changed it). You can use Putty on Windows or iTerm on Mac to manage SSH.
  4. (optional) HIGHLY RECOMMENDED! Use an SSH key instead of a password.¬†You create SSH key on your own computer. Backup the key. Dont lose it. then you copy key to server so you can access server. For help follow this guide:¬†https://www.digitalocean.com/community/tutorials/how-to-set-up-ssh-keys–2
  5. Run the following commands below to create a new wallet, and register your node. When it asks to encrypt the wallet I advise to say yes. Do NOT forget the passphrase as you will have to type everytime you do something. It will output your address, private key, and public key. If needed, you can always create an un-encrypted wallet.aro file with this information. NEVER share the private key. Save this info in a safe place.
  6. We will configure your wallet to become a masternode address.
  7. We will configure your node as a masternode using your wallet public key.
  8. NEVER share your private key. Your public key will be visible by entire network. Public key is fine if exposed. If private key is exposed, they have your money. Backup your keys. and backup the wallet. If you encrpyt it, backup the keys and the password and keep a copy offline and safe.

On Your Wallet Server Run These…

cd ~;
export DEBIAN_FRONTEND=noninteractive;
sudo apt-get update && apt-get dist-upgrade -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" && apt-get autoremove -y;
sudo add-apt-repository ppa:ondrej/php -y;
sudo apt-get update -y;
sudo apt-get install php7.3-cli php7.3-curl php7.3-gd php7.3-mysql php7.3-mbstring php7.3-common php-bcmath php-gmp -y; 
sudo apt-get install git pigz dirmngr bc vim-nox htop ncdu cpulimit curl tar gzip wget zip unzip pv -y; 

mkdir -p ~/scripts/wallet; 
cd ~/scripts/wallet; 
git clone https://github.com/arionum/lightWalletCLI .; 
chmod +x light-arionum-cli; 
./light-arionum-cli balance; # this will create new wallet.aro
# if you get ERROR; run it a few times to ensure it submits to a few nodes

# TIP: setup ntp on any Arionum servers to keep server times in sync.
sudo apt-get -qq install ntp ntpdate -yyq;
sudo service ntp stop;
sudo timedatectl set-timezone UTC;
sudo service ntp stop;
sudo ntpdate pool.ntp.org;
sudo service ntp start;

On Your Node Server Run These…

nano /var/www/arionum.com/include/config.inc.php; # or path to your node config file
# in the text editor that opened set the following ...
$_config['masternode'] = true;
$_config['masternode_public_key'] = 'iNsErT_PuBliC_WaLLET_KeY_HeRe';
# to save: CTRL+X, then Y, then ENTER

Register Your Masternode Status

  1. Backup your Public and Private key to your wallet manually offline. Store it safely.
  2. (optional) Backup your wallet.aro file. You can use an SFTP client like Filezilla (you have to set port to SSH port and use your Key. Or use simply scp or rsync manually in console or cmd prompt.
    EXAMPLE:¬† scp -P 22 [email protected]:/root/scripts/wallet/wallet.aro wallet-BACKUP.aro
  3. Do a test and send 11 ARO to your wallet address. Note and save the transaction id. Check your transaction on arionum.info for a few confirmations. I send 11 instead of 10 to cover the fee for your test transaction and the full second transaction. This is crypto. Always do a test transaction. Never send a lot of money without a test.
  4. Send the rest (100000 ARO) to the new wallet’s address for a total of about 100010 ARO.¬†Note and save the transaction id. Check your transaction on arionum.info for a few confirmations.
  5. Wait for 4 confirmations on www.arionum.info. This could take 20 to 60+ minutes. Go play some video games.
  6. See code example below to register/create your masternode on the network. Enter your node server (not the wallet server) public IPv4 address.
  7. Note the block height that you ran the “masternode create” command and add¬†360 blocks to that. That is when you should be live. You can also see this in mysql table “masternodes” once you sync up. Also you can check your own node api OR one of the arionum peers http://peer1.arionum.com/api.php?q=masternodes
  8. You are all set. Now just wait and monitor the blocks. Go in Discord chat for help.
  9. If you wish you can DESTROY this wallet server now. What I recommend is that you make a snapshot of it in case you want to use the cli again. Power off the server, snapshot it. Then destroy the server so you dont get billed. They bill you hourly not monthly. If you want to leave your wallet.aro in the snapshot that is up to you. Personally I wouldnt. You can always restore your own backup of the wallet.aro using just the public and private keys later manually.
cd ~/scripts/wallet;
./light-arionum-cli masternode create YOUR.PUBLIC.NODE.IPADDRESS;
# EXAMPLE: ./light-arionum-cli masternode create;

You should get a response that says something like “Masternode command sent! Transaction id: abcdefGHIJ…
Save the transaction ID for your records. You can look this up on www.arionum.info
After you register your node, your balance will say 1 ARO.

How To Check Status of Masternode

  • If you just registered your masternode, you will need to wait a few blocks or two before you show up on other peers. Your IP will show up in “masternodes” table in mysql on all peers after propagation.
  • Check /api.php?q=masternodes from any synced peer including your own. Alternatively,¬†http://peer1.arionum.com/api.php?q=masternodes Look for your IP address.
  • The “height” is the height your masternode was registered. Add 360 blocks to that and that is the block you should start seeing rewards on. This should be about 24 hours.
  • Your account should also say “status=1” in the “masternodes” table and/or via the API call.
  • If you eventually see fails, your node might be having problems or is going out of sync.
  • With my aronode script, I will soon add masternode information.
  • This information is temporarily available and will probably be move to arionum.info eventually¬†https://arionum.info/mn.php it shows the next MN in order. You wont show up on this until after the first 360 blocks pass.
  • You will not receive rewards until you clear the first 360 blocks after registration.

How To Turn on Logging For Troubleshooting

  • If having issues maybe the log will help. To configure log use commands below.
  • log_verboity 3 is very verbose so only set to 3 if needing to troubleshoot otherwise setting to 0 is probably best.
  • Make sure log is readable and writable by your web/nginx/apache user. In my case its www-data
cd /var/www/YOURDOMAIN.com;
touch /var/log/aro.log;
chmod 0660 /var/log/aro.log;
chown nobody:www-data /var/log/aro.log;
nano include/config.inc.php;
# in nano text editor change ...
$_config['enable_logging'] = true;
$_config['log_file'] = '/var/log/aro.log';
$_config['log_verbosity'] = 3;
# to save CTRL+X, then Y for yes, then ENTER

To turn on log rotation so your log doesnt get too big and fill up your hard drive. Make sure the “create” line has your web user.

nano /etc/logrotate.d/aro;

# in text editor add the following...
        rotate 12
        create 660 nobody www-data
# to save: CTRL+X, then Y, then ENTER

How To Upgrade Arionum Masternode

  • Basically just “cd” (change directory) to the main directory of each of the places where you did the original git clone command of each software package and type “git pull”. It should return the names of the files and the changes otherwise it will say “Already up-to-date.”. Example: $ cd /var/www/arionum.com; git pull;
  • Easy upgrades with aronode script: $ sudo bash aronode mainnet upgrade
  • “aronode upgrade” will upgrade software packages AND do a git pull and restart all services.

How To Calculate Potential Masternode Rewards

  • Check masternode list and count total. Easy way is just look at # of rows in mysql table “masternodes” that are status=1.
  • As of 2018/08/14 …
  • 4 Minute blocks
  • 360 Blocks per day.
  • 33% of rewards goto masternodes so about 120 blocks per day
  • 930 coins per block * 120 blocks = 111600 coins per day to master nodes
  • “coins per block” decrease by 10 each month that passes. It will take 8 years to reach max supply of 500M+.
  • 72 master nodes exist¬†2018/08/14
  • 111600/72= 1550 coins per day to each masternode.
  • about 47000 coins per month with 72 masternodes
  • Coin supply is ~78 million. 10 Million of that is locked on the two exchange wallets that have existed. and more will be locked up as exchanges some online.
  • 7.2 Million is already locked up in 72 existing masternodes
  • That leaves about 60 Million supply left.
  • Lets say 30 million (50% of supply; a very high number) set up masternodes. Thats 300 more.
  • So about 372 masternodes = 47000/(372/72)= 9108 coins per month
  • The math is good! Plenty of room to grow!

How To Monitor Your Arionum Node and Get Alerts

coming soon…

How To Disable Arionum Masternode and Export Funds

coming soon…

How To Optimize and Stabilize your Node

The default settings for mysql/nginx/php are too small. for a stable node, apply the settings from the guide: How to Secure (and Optimize) Your Arionum Nodes

Arionum Masternode Resources:

I am KyleFromOhio in Discord Chat. I may or may not be helpful. I keep pretty busy. Don’t get mad at me if I cant help you. This guide was created so I dont have to repeat myself. Read it 15 times then read it again. If something is not clear, tell me and I’ll update it.