The SmartNode Smartest Guide! ๐Ÿคฉ๐Ÿ˜œ๐Ÿ˜‹ - Medium/Advanced reading!

in #smartcash โ€ข 6 years ago (edited)

Right... I promised one. So let's get into it. I have tested it for more than a month now, so I am pretty sure of the experience through it.

UPDATE #1

There is a new Guide I was not aware, so please check the differences from the steps I gave on this one. The link is https://forum.smartcash.cc/t/smartcash-smartnode-setup-guide/2320

From what I have read, the page will give you a more structured guidance, instead of something that was all over on the same page in the previous 1.1 guide that I talk about in this post. The principles do not change much. It's just the step-by-step process in case you do not know anything about crypto. So, if that is your case, just head to the latest guide. Otherwise you will know what to do with either versions of it.

Basic Requirements

Before you jump on this, make sure you can guarantee the following. Otherwise, you will just be wasting your time and resources.

  1. You can run a server, indefinitely (> 6 months)
  2. One Static IP (1 smartnode per unique IP)
  3. If you are hosting one, be sure to have an UPS on it, and on your ISP too.
  4. CPU and memory are not very demanding (1 or 2 cores and 2GB RAM will do), but make sure response time and availability are fast. Anything that can respond to pings continuously in less than 1 second will make the deal. Better, will mean more chances...
  5. Make sure you can run with minimal downtime (you need currently 19 days to start getting rewards, later this will get lower).

Platforms to use?

There is a ton of stuff, you can actually use for a smartnode... being that (from most famous to less, in my view):

  • Ubuntu on VM or baremetal (which is a waste of resources... unless the hardware you get is quite minimalist)
  • Windows (quite an easy setup, but you need to disable automatic updates/reboots)
  • Android
  • MacOS
  • Other Linuxes... like CentOS/RHEL, openSUSE/SLES, etc

Output from My VM, using NMON (the best tool for UNIX/linux interactive monitoring, http://nmon.sourceforge.net/pmwiki.php):

Example of Setup (Ubuntu)

This is probably the most used one, but later I would love to actually build one in an Android TV Box!

First step (1) - Install the OS

Spin you ubuntu VM, or baremetal. Normal install, no big deal.

Second step (2) - Get the software

Install SmartCash software (it will be configured to run as a smartnode) the way you most prefer. A good guide for multiple systems is available at the website: http://smartnodes.cc/files/SmartCash_SmartNode_Setup_Guide_v1.1.pdf

I have used... "Section 7: Installing SmartCash using a PPA" (page 23).

Don't forget to check https://smartcash.cc/smartnodes/ for any updates on rules/requirements.

Third step (3) - Get 10000 SMART coins to lock

You will not be able to move them around... because they are treated as collateral for the node you will be running. Otherwise, anyone could just run a node and the network would not be as secure as it is currently.

Example: for many nodes to dominate the network, it would take a lot of lockdowns of 10K SMART, therefore costing to the attacker more, than just trading the same amount of coins.

Important Note: you need to allow your transaction to fully confirm. Otherwise your node will not be able to start.

Fourth step (4) - Configure the smartnode

This is the simplest part. You just need to follow the same previous Guide, this time at "Section 8: Configure Smart Node to run on Droplet/VPS". You basically need your private key to be entered in your smarcash.conf file and some other properties that are common BAU (Business As Usual) for wallets.

Fith step (5) - Starting the smartnode

This bit is covered in the last step, but I wanted to give my extra input here.

Your quick START command will be (using the client):
smartcash-cli smartnode start-alias <smartnode_alias_name>

And then to CHECK the STATUS, if all went good (give it a couple of seconds and don't be impatient):
smartcash-cli smartnode status

So, after you start your node and have a green status just like this:

{
  "vin": "CTxIn(COutPoint(hc0a98e709a87dsfya0s9df8h70238975gh023897r5g0qp97ryh2f03947fh10c, 1), scriptSig=)",
  "service": "XXX.XXX.XXX.XXX:9678",
  "payee": "90a8es7fg19038476g1209ref68710o328f7yg103",
  "status": "Smartnode successfully started"
}

Note: Address and transaction examples are NOT real. Payee should be the address you transfered 10K SMART to, and the CTxIn is the transaction ID where that 10K was transfered.

You should configure some extra on the logrotate. This will allow you to continue running the node without extensively run out of disk space because of the debug.log file.

I have actually written about this in the past, so you can check my previous post, here.

The most important setting for the log file is the "copytruncate" option. That basically does not remove the inode of the debug.log file, allowing the application to continue using the same opened file to dump stuff into the debug.log. If the file inode changes, then the smartcashd crashes eventually (this is something that could have been fixed in the code... though).

The Most Important Stuff!

After you exercise through the steps and information above, you need to take special attention to the following (6) hints bellow and you will be just fine!

  1. Have a static IP you can use for longer than 6 months.
  2. When you transfer the 10K SMART, do it in ONE go. One transfer, of 10000 SMART exactly!
  3. Maintain the node running without ANY problems (including crashes, or restarts) for more than 1 month.
  4. Either have TONS (>1GB/day) of space to accommodate the debug.log or use the logrotate feature above.
  5. Keep smartcashd fast! Check if the IO within the disk you are using to store the blockchain can actually handle some "quick" IOs (SSDs are great on this). If the IO is slow, smartcash daemon will have a hard time helping the network.
  6. One SmartNode per IP! If you try to run more than one behind your ISP router (which is 1 IP) you will get into conflitcs.

Extra commands

There is a couple of commands that I found nice when trying to debug things...

This one tells you if the node is running good info against the remaining master nodes network and so forth... it's important that your node is synchronized with the status of the current smartnode players of the entire network:

forykw@forykw:~$ smartcash-cli sync status
{
  "AssetID": 6969,
  "AssetName": "SMARTNODE_SYNC_FINISHED",
  "Attempt": 69,
  "IsBlockchainSynced": true,
  "IsMasternodeListSynced": true,
  "IsWinnersListSynced": true,
  "IsSynced": true,
  "IsFailed": false
}
and if you want to be more aggressive

There is a cool info... for smartnodes, running over the following command:

forykw@forykw:~$ smartcash-cli getpoolinfo
{
  "state": "IDLE",
  "queue": 0,
  "entries": 0,
  "status": "PrivateSend is idle.",
  "keys_left": 12345678912345,
  "warnings": ""
}

If you run this command from a python nagios script or against a logstash/elasticsearch (or something that can log it over a certain period of time, granular enough you can actually take some info from it), then you will have a great new deal of information about what you node can really do for the smartcash network.

Have fun and be Smart...

Use SmartCash!

And if you have any questions, please drop them bellow and I will answer ASAP!





Produce quality SteemCATAPOOM!
RESTEEM if you wish to show others what you have learned... and,
VOTE for Witnesses

I am one of them, forykw!
Status: (disabled) - 10/03/2018

Sort: ย 

ฮฃ$$$ Tipped @forykw ฮฃ30 SMART! Comment @smartbot help to claim. Currently the price of SmartCash in the market is $0.113 USD per SMART. Current value of the tip is $3.39 USD. To find out more about SmartCash, please visit https://smartcash.cc.

This bot is so generous =), thanks @hockeyj

I'm not sure what you mean?

ย 6 years agoย (edited)

Wow! Nice.. replies also can execute instructions... great...

Let's check like this then:

@smartbot balance

EDIT: I being too hard on it... it needs proper sintax... not AI stuff yet.

I'm not sure what you mean?

You have ฮฃ95 SMART (unconfirmed: ฮฃ0 SMART).

@forykw you had Android on your list of platforms? How exactly is this done? To my current knowledge we are not yet able to start nodes from the Android wallet and I do not imagine you could run a node on your Android device (can you?)
As someone who has followed the initial #smartnode guide and the bash script to set-up several times. I find your instructions is for the super advance user. You clearly know what you are talking about but not many would, I wouldn't.
I am sure someone on the same frequency as you would understand and for that I say well done.

ย 6 years agoย (edited)

Hi there,

Thanks for reaching out.

Yes indeed you will need root access to the Android device to make it a smartnode. So not for trivial users.

I am going to receive soon (I hope) an Android TV box, and I am planning on trying this for smartcash. If I like the results, I am planning on making it available to the public.

I would use the Android Smartcash wallet though. That's pretty easy and if you are a user of smartcash, then having it on your phone is super handy.

I know I have short-cut some of the step-by-step processes that usually people seek... but because there was already a smart guide, my intention was to fast accelerate people that are already familiar with some concepts and just want to fast try. At the same time, because I am mentioning the original guides, normal users can also retain those ones.

Sorry if this post made you feel somehow confused. The idea was not that, at all. But, maybe if you come back later on after you get into more of the usual rumble, you will find something of use that I was trying to transmit.

Cheers

Interesting. #smartcash wallets can be run from pretty much any device with a browser of sorts. #Smartnodes on the other hand need to be started from a QT wallet. How are you going to by pass this? This I would like to know.
Android TV box sounds very cutting edge. I will be waiting to see the outcome. Do keep us posted.

Android is like a "sort" of Linux derivated OS... if you can gain "root" privileges, you can access the base operating system. Then you are able to do the usual stuff, like building code and configuring stuff. Usually "rooting" an Android, breaks the warranty. So, this is why is not something every user can do. But it's not crime! =)

Thanks you. I did not know that. That is very interesting, anything "Linux" related is usually pretty dependable. I hope you actually do it. I will love to see how it turns out. I was right in my initial assessment - "super advance user" this is a different league entirely, it almost a different game!

Nice guide! More NZ outreach is great.

I did not know about @blockchainlib... any relationship with NZ?

ABASINKANGA RESTEEM SERVICE

  • This SMARTCASH post was hand-picked and resteemed to 5900 followers inline with my promote SMARTCASH on steemit initiative
  • For anyone to use my resteem service, send 0.1 SBD to @abasinkanga + post link as memo
  • For Smartcash users send 1 SMART + post link as DM to @abasinkanga on discord
    Tip with SMARTCASH or Upvote this comment if you appreciate this service.

Thanks for that.

I have reached out to the smartcash community and found out some changes that you can find in my post. Please let me know if you find anything that is either not explicit or you disagree with.

All I have said is based on my own experience. No one told me to do say anything.

ย 6 years agoย (edited)

just recovered my account please help me to regain my reputation and funds that is stolen by hackers please give your support ๐Ÿ™๐Ÿป๐Ÿ™๐Ÿป
https://steemit.com/steemit/@prashant/i-just-recovered-my-stolen-account

Fortunately, I am just playing this game to boost community... don't give a fuck about profit.

Sorry mate... good effort, but I enjoy boosting morale and skills instead.

Coin Marketplace

STEEM 0.30
TRX 0.12
JST 0.034
BTC 63799.64
ETH 3130.40
USDT 1.00
SBD 3.97