create account

Node Governor for EOS.IO by eosrio

View this thread on: hive.blogpeakd.comecency.com
· @eosrio ·
$3.81
Node Governor for EOS.IO
![eos-control-panel.PNG](https://steemitimages.com/DQmchXjwh1Dg4YwA1JHhHXAodgkcHfoNbFRSwAhTMC1Vkkv/eos-control-panel.PNG)

Ever since we started experimenting with eosio to create private testnets back in dawn 1.0 days, we had the necessity to manage our nodes (start, stop , verify logs and so on...) and it hasn't been very pratical in a security standpoint to give direct ssh access to the machine for everyone.

Then we joined public testnets and noticed that crashes were happening very often and sometimes we weren't able to relaunch our nodes, simply because we weren't in a place or time with ssh access. So came the idea to build a web based remote control panel for eos.io nodes. It will be most useful to block producers, but also to other non-producing full nodes as well.

The project was started by @igorls and @domiscd, they have already received some help from the community on github (https://github.com/toonsevrin, @eosdublin)

We welcome everyone to test our tool and collaborate with future improvements
You can read the instruction on how to install on your node in:
https://github.com/igorls/eos-node-governor

### So, how it works...

We are using the PM2 process manager for Node.js to launch and keep running two apps and also lately we decided to launch keosd (eosio wallet daemon) with it too, PM2 is very handy to manage startup launch an monitor individual apps.

## eos-governor

This is the main app, its responsible for doing constant health checks on the nodeos process and to launch a secure web sever (https) with authentication support that hosts the control panel.
*remember to change the login and password on the config.js file*
The app creates a self-signed ssl certificate on the fly, but you can add your own too ;)

For now you are able to Start / Stop / Reload you node as well as to keep an eye on RAM and CPU usage, but there is much more to come!

## eos-api

Its an api proxy to protect the **net_api_plugin** from external access, while allowing any other traffic to pass through, its launched as a clustered process in PM2 which allow to lighten request load on the single-threaded (for now) nodeos process. We plan to add support for cached block request to come exclusively from this api, leaving nodeos to handle only the slower actions  (such as pushing transactions)

### Planned roadmap
- P2P connection management
- Fork detection
- Cached requests
- Network metrics
- Disk usage metrics
- External Alerts (email , sms maybe)
- Multi-node management support
- Master/slave node operation

We also like to thank our friends in the [Jungle](http://jungle.cryptolions.io:9898/monitor/) and [Arrowhead](http://eosslc.com/monitor/) testnets for ideas and support!
👍  , , , , , , , , , , , , , , , , , , , , ,
properties (23)
authoreosrio
permlinknode-governor-for-eos-io
categoryeos
json_metadata{"tags":["eos"],"users":["igorls","domiscd","eosdublin"],"image":["https://steemitimages.com/DQmchXjwh1Dg4YwA1JHhHXAodgkcHfoNbFRSwAhTMC1Vkkv/eos-control-panel.PNG"],"links":["https://github.com/toonsevrin","https://github.com/igorls/eos-node-governor","http://jungle.cryptolions.io:9898/monitor/","http://eosslc.com/monitor/"],"app":"steemit/0.1","format":"markdown"}
created2018-04-16 04:01:39
last_update2018-04-16 04:01:39
depth0
children3
last_payout2018-04-23 04:01:39
cashout_time1969-12-31 23:59:59
total_payout_value2.932 HBD
curator_payout_value0.873 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length2,715
author_reputation487,380,711,180
root_title"Node Governor for EOS.IO"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id50,309,153
net_rshares749,617,187,902
author_curate_reward""
vote details (22)
@bodget ·
Awesome, can't wait to give it a go!
👍  
properties (23)
authorbodget
permlinkre-eosrio-node-governor-for-eos-io-20180416t112112939z
categoryeos
json_metadata{"tags":["eos"],"app":"steemit/0.1"}
created2018-04-16 11:20:51
last_update2018-04-16 11:20:51
depth1
children0
last_payout2018-04-23 11:20:51
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length36
author_reputation84,435,500,752
root_title"Node Governor for EOS.IO"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id50,362,835
net_rshares611,862,247
author_curate_reward""
vote details (1)
@cryptolions ·
Very cool!
👍  
properties (23)
authorcryptolions
permlinkre-eosrio-node-governor-for-eos-io-20180416t112419960z
categoryeos
json_metadata{"tags":["eos"],"app":"steemit/0.1"}
created2018-04-16 11:24:21
last_update2018-04-16 11:24:21
depth1
children0
last_payout2018-04-23 11:24:21
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length10
author_reputation486,995,178,958
root_title"Node Governor for EOS.IO"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id50,363,306
net_rshares605,743,624
author_curate_reward""
vote details (1)
@eosnation ·
Amazing! We will make sure to try this out in EOS Scholar Testnet.

Keep up the great work!
👍  
properties (23)
authoreosnation
permlinkre-eosrio-node-governor-for-eos-io-20180416t141844517z
categoryeos
json_metadata{"tags":["eos"],"app":"steemit/0.1"}
created2018-04-16 14:18:45
last_update2018-04-16 14:18:45
depth1
children0
last_payout2018-04-23 14:18:45
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length91
author_reputation529,323,804,132
root_title"Node Governor for EOS.IO"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id50,389,578
net_rshares605,743,624
author_curate_reward""
vote details (1)