HowTo run and connect to PoW Miner pool
See: Main_Page, NodeCore_Networking
See also: List_of_mining_pools_testnet
Contents
Overview
A brand new pool will start at Current Round = 1, as the Current Round is based on number of blocks won... not to be confused with the current blockchain height
- Current Round: X - the blocks that have been won by this pool. This increments each time the pool wins a new block.
- Pool Mining Block: Y - the current block the pool is working on
- Blockchain height: Z - the height of the blockchain
Once a round is won, then the pool payouts the reward from the block proportionally to all the shares submitted.
For example, if you mine on a pool for 10 minutes, and it wins a block (block time is targeted for every 30 seconds, other pools may win other blocks in the meantime), and you contributed 10% of the shares to that round, then you will receive approximately 10% of the block reward (less pool fees).
Technical note - The pool data is stored in the file: "\testnet\poolshares-normal.txt". Is that is deleted, then the html page will start anew.
Setup a Pool
Modify the nodecore.properties file:
#Allow the pool statistics page to be reachable from any remote host pool.stats.bind.address=0.0.0.0 #Allow the UCP pool server to be reachable from any remote host ucp.mining.bind.address=0.0.0.0
- Run an instance of NodeCore
- In the NodeCore_CommandLine, run startpool
- Make note of the public IP (pool miners will connect to this)
- Open firewall ports for 8500/tcp and 8501/tcp such that other clients can connect
Opening firewall ports will vary per OS and version. One set of commands is:
firewall-cmd --permanent --add-port=8500/tcp firewall-cmd --permanent --add-port=8501/tcp firewall-cmd --reload
Connect to an Existing Pool
- Run the PoW Miner
- Specify thread count to mine on
- Connect to the IP and port provided by the pool owner (Note that pools generally want to maximize users, to pools binding to 0.0.0.0 allow connections from any IP)
- Enter the address to mine to (run getinfo from the NodeCore_CommandLine)
You can see pool results by viewing the web page:
http://<IP_Address>:8500
Troubleshooting
Cannot see the pool web page
Check for http (as in http://<IP_Address>:8500), not https
Ensure that the nodecore.properties file has been updated per above steps (and NodeCore was restarted).
Ensure that firewall ports are open for 8500/tcp and 8501/tcp
I start the pool but another computer can not connect its IP
Set this option in your nodecore.properties file (See: Nodecore.properties)
ucp.mining.bind.address=0.0.0.0
And restart NodeCore and the pool software
Error: unable to start pool Starting pool failed: the port 8500 is already bound on 127.0.0.1!
Ensure that the nodecore.properties file is updated per above, and restart nodecore.
Pool is stuck at round 1
Troubleshooting questions to check:
- Is there a miner connecting to it?
- If you run NC_CLI getinfo, does it show the latest block (i.e. does NodeCore appear to be updating)?
Pool is stuck at block X
This should not happen, but if it does... have the administrator restart nodecore on the server.
General Troubleshooting tips
Make sure that it works locally:
- You can connect a miner on 127.0.0.1
- You can view the html page at http://127.0.0.1:8500
- You can connect NC_CLI on 127.0.0.1 and run getInfo and it shows the latest block
Make your you're connecting to the right ports:
The website is on port 8500 http://111.194.224.159:8500/ The miner connects to port 8501 111.194.224.159:8501