ShipChain / hydra

Centralized network management for decentralized networks -- helping organize and publish sidechain connection details
https://docs.shipchain.io/docs/validatorGuide.html
Apache License 2.0
8 stars 2 forks source link

Install non-validator node and provide feedback #3

Closed ajhodges closed 5 years ago

ajhodges commented 5 years ago

As part of our ShipChain sidechain test network evaluation, we are trying to gather feedback from node operators. We will be providing a Gitcoin bounty for any parties who will assist in testing the hydra project, and set up a non-validating node synchronized to our shipchain-testnet-alpha network.

Please complete the survey below:

  1. What are the hardware specifications (CPU/RAM/Disk space/SSD or HDD/Network link speed) of your server?
  2. Where is your server located, geographically?
  3. What operating system and version are you using?
  4. What version of Python are you using?
  5. Did you encounter any issues when installing the hydra package?
  6. Did you encounter any issues with the hydra client join-network command?
  7. Did you encounter any issues with the hydra client configure command?
  8. Approximately how long did it take for your node to sync with the network? (Your node is sync'd when curl localhost:46657/status returns catching_up: false)
  9. Are you interested in running a validator on the network?
  10. Do you have any other feedback for us?
gitcoinbot commented 5 years ago

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


This issue now has a funding of 2500.0 SHIP attached to it as part of the ShipChain fund.

gitcoinbot commented 5 years ago

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


Work has been started.

These users each claimed they can complete the work by 5 days, 1 hour ago. Please review their action plans below:

1) captaincavedann has been approved to start work.

I am interested in running a node for ShipChain's testnet. I have a dedicated computer for nodes. I will run the node and provide feedback on it.

Learn more on the Gitcoin Issue Details page.

2) gutsal-arsen has been approved to start work.

will complete ##1-10 and provide feedback.

Learn more on the Gitcoin Issue Details page.

3) maexx393 has been approved to start work.

Hi, I'm interested in this issue as we've listed SHIP token on our exchange http://chankura.com I would like to start testing the NODE for integrations later

Learn more on the Gitcoin Issue Details page.

4) maexx393 has applied to start work _(Funders only: approve worker | reject worker)_.

Hi, I'm interested in this issue as we've listed SHIP token on our exchange http://chankura.com I would like to start testing the NODE for integrations later

Learn more on the Gitcoin Issue Details page.

5) travisdmathis has been approved to start work.

I will make sure it is completed in a timely manner and get my feedback to you within 48hrs.

Learn more on the Gitcoin Issue Details page.

6) starkblaze01 has been approved to start work.

Will follow the steps given and provide detailed feedback.

Learn more on the Gitcoin Issue Details page.

7) marvinkruse has been approved to start work.

Hey,

I'd be happy to contribute to your project by completing this ticket. I have a Germany-based Server (i7, SSD, 32GB ram, 1gbit connection).

Best, Marvin

Learn more on the Gitcoin Issue Details page.

8) anshumanv has applied to start work _(Funders only: approve worker | reject worker)_.

Will run through the docs and provide feedback on it.

Learn more on the Gitcoin Issue Details page.

9) hiturunk has applied to start work _(Funders only: approve worker | reject worker)_.

I am an Ethereum/Bitcoin miner with experience managing full nodes and various kinds of server-hardware as well as professional front-end bug-testing/web development. I would be interested in running a validator node for shipchain and in bug/use-testing and providing feedback on my experience.

Shipchain has a very logical focus and I'd love to be a part of that. Web 3.0 is the future!

Learn more on the Gitcoin Issue Details page.

aahutsal commented 5 years ago

@ajhodges have run non-validator network, thus answering your questions:

  1. Core i7/32Gb RAM/35Gb free disk space out of 512Gb SSD/About 52 Mbps on WiFi
  2. Ternopil, Ukraine. lat/lng: 49.553516, 25.594767
  3. Gentoo Linux, recent updates: Linux trussardi 4.19.27-gentoo-r1 #2 SMP Mon Mar 18 17:38:09 EET 2019 x86_64 Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz GenuineIntel GNU/Linux
  4. image

  5. Nope
  6. Nope
  7. Nope
  8. 1.66s user 0.42s system 12% cpu 17.330 total image 0.77s user 0.09s system 34% cpu 2.459 total image
  9. I think yes
  10. Docker does not builds. Looks like you forgot it install GCC and build packs to alphine distro: image
leewardbound commented 5 years ago

@gutsal-arsen Thanks so much for participating! Your feedback is appreciated! I think that docker container came with Cement, which we used to build Hydra, we should have either updated it or deleted it -- we appreciate knowing that it's broken!

With regards to your node, it looks like it's still sync'ing -- we realize our directions were a bit unclear here -- could you please monitor your http://localhost:46657/status until it shows catching_up: False and let us know how long it took! We'll go ahead and accept your bounty submission for now anyway.

leewardbound commented 5 years ago

@gutsal-arsen Also, please remember to go to Gitcoin and create a Submission for this work. We'll mark the bounty as resolved once we have a few more workers create submissions, we're still accepting more feedback!

aahutsal commented 5 years ago

@leewardbound haven't sent submission yet on gitcoin, will do later. I'll run /status monitoring and send you feedback.

Seems it's easy to run bunch of nodes in different locations on different Linux distros/Python versions with Amazon AWS to see how it performs. What do you think about that?

leewardbound commented 5 years ago

@gutsal-arsen Yes that'd be a simple and effective test! We already have done some AWS testing of our own, hence the bounty to see how the community approaches it :-)

A minor note -- Python is not actually a factor in client/network performance; the Hydra CLI is just a wrapper for downloading and running the client binary (which is written in Go), so different Python versions might affect the setup process, but shouldn't make any difference in how long it takes to sync your node.

aahutsal commented 5 years ago

@leewardbound that's clear about Python wrapper, however what is more important to test at this stage? Does it easily runs on different architectures or does it runs fast? I guess both should be tested.

I suggest to create testing farm on AWS and some scripts to automate installation and network tests. Will see where it fails and what is the actual speed from different locations. If you have AWS account you can share it with me by adding IAM user, or I can run my own (but guess you would need that farm in the future so your AWS account is preferred).

Will finish tests now and provide results.

gitcoinbot commented 5 years ago

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


Work for 2500.0 SHIP (17.17 USD @ $0.01/SHIP) has been submitted by:

  1. @gutsal-arsen
  2. @acolytec3
  3. @starkblaze01
  4. @maexx393
  5. @travisdmathis
  6. @marvinkruse

@leewardbound please take a look at the submitted work:


aahutsal commented 5 years ago

@leewardbound have running /status check for 10 mins, it constantly updates latest_block_hash, latest_app_hash, latest_block_height and latest_block_time, but catchign_up it still showing true.

Should I run any longer?

ajhodges commented 5 years ago

@gutsal-arsen for reference, my personal node running on a VPS took multiple hours to fully sync (you can tell how close you are by the latest_block_time, it should be roughly now). I imagine this is largely dependent on network performance, disk write speed, and how long the network has been running.

As far as what is important to test, for the purposes of this bounty we would just like to gather feedback on both hydra (the configuration/installation tool) as well as some basic statistics about the node itself.

aahutsal commented 5 years ago

@ajhodges okay, I've started node monitor, will let you know how long it take to sync fully.

aahutsal commented 5 years ago

@ajhodges FYI: during the sync getting that:

image

But seems sync keep going.

aahutsal commented 5 years ago

@ajhodges I've also found strange behavior once internet connection goes down:

  1. It greatly loads CPU: image strace shows that it stuck inside futex: image

  2. It does not resume network sync, so application should be manually restarted.

aahutsal commented 5 years ago

@ajhodges Sync finished.

Started at 2019-03-21T05:29 UTC+2.00 Finished at 2019-03-21T14:48 UTC+2.00

Consider there was network down period for 2 hours and 45 minutes described above. I had to manually restart
./hydra/shipchain-testnet-alpha/start_blockchain.sh

gitcoinbot commented 5 years ago

⚡️ A tip worth 2500.00000 SHIP (17.34 USD @ $0.01/SHIP) has been granted to @gutsal-arsen for this issue from @leewardbound. ⚡️

Nice work @gutsal-arsen! Your tip has automatically been deposited in the ETH address we have on file.

itsN1X commented 5 years ago

image ¯\\_(ツ)_/¯

acolytec3 commented 5 years ago

Here's responses to each of the questions. It won't let me submit work on Gitcoin so hoping you'll see all my feedback here. Note my last comment. Would be happy to do a PR to flesh out the "usage" details.

What are the hardware specifications (CPU/RAM/Disk space/SSD or HDD/Network link speed) of your server? i7/12GB/63GB SSD/ ~3 MB download Where is your server located, geographically? NC, USA What operating system and version are you using? Ubuntu 18.04 What version of Python are you using? 3.6.7 Did you encounter any issues when installing the hydra package? Not when I used the pip install path. I tried Pipenv and it didn't work for some reason. I didn't dig further but can try again if so desired. I will note that a few of the tests failed on my machine. Let me know if you want the output from the tests. Did you encounter any issues with the hydra client join-network command? Nope, just user cluelessness in figuring out how to use it at first. Did you encounter any issues with the hydra client configure command? None. Approximately how long did it take for your node to sync with the network? Roughly 10 hours Are you interested in running a validator on the network? Maybe. Would need to learn more about the project. Do you have any other feedback for us? The readme could stand some clean-up. Would you take PRs to spell out some of the usage a bit?

ajhodges commented 5 years ago

@gutsal-arsen thank you for all of your detailed reports, this is very helpful.

@itsN1X , looks like an issue with your Gitcoin account. I would contact their support/message them in Slack.

@acolytec3 thank you for the feedback! We have internally drafted some more detailed instructions, which actually might be appropriate to merge into the README and/or publish on this issue. @leewardbound thoughts? and how do you think about a bounty for README improvments? Also it looks like @acolytec3 earned their bounty for this issue :)

leewardbound commented 5 years ago

@ajhodges yeah agree that readme cleanup is worth our time

@acolytec3 i'll release your tokens now, gitcoin is kind of confusing about these "cooperative" jobs, i guess i already paid out 1 guy (which was registered as a "tip"?) so now nobody else can submit? i don't get it shrugs. if you just make a PR for readme improvements, i'll gladly toss you another tip, 500-1000 tokens depending on how thorough/useful your improvements are!

leewardbound commented 5 years ago

Anyone else wishing to apply --

We've accepted 7 candidates so far, and 2 have completed. I won't accept any more applicants now, unless we have some drop out. Thanks for your interest everyone!

gitcoinbot commented 5 years ago

⚡️ A tip worth 2500.00000 SHIP (18.54 USD @ $0.01/SHIP) has been granted to @acolytec3 for this issue from @leewardbound. ⚡️

Nice work @acolytec3! Your tip has automatically been deposited in the ETH address we have on file.

starkblaze01 commented 5 years ago

Here are my responses:-

  1. What are the hardware specifications (CPU/RAM/Disk space/SSD or HDD/Network link speed) of your server?-

    i5-6200U/8GB/1TB HDD/7Mbps download and 6Mbps upload.

  2. Where is your server located, geographically?

    Gujarat, India

  3. What operating system and version are you using?

    OS- Windows 10 Pro, Version - 1809

  4. What version of Python are you using?

    3.7.1

  5. Did you encounter any issues when installing the hydra package?

    Got error:- "Couldn't find the version that satisfies the requirement" when used pip install setup.py but python setup.py install did the trick.

  6. Did you encounter any issues with the hydra client join-network command?

    Initially got OSError: [winerror] which worked fine after updating my dependencies.

  7. Did you encounter any issues with the hydra client configure command?

    Worked totally fine.

  8. Approximately how long did it take for your node to sync with the network?

    11 hours

  9. Are you interested in running a validator on the network?

    Not sure.

  10. Do you have any other feedback for us?

    Need more clear instructions to run the project.

acolytec3 commented 5 years ago

PR #6 submitted to add a quick-start guide to the readme. It's not super expansive but feels like the right place to help someone coming at this fresh.

travisdmathis commented 5 years ago

What are the hardware specifications (CPU/RAM/Disk space/SSD or HDD/Network link speed) of your server?

Intel i7 4790k, 16GB, SSD, Network speed: 250/12

Where is your server located, geographically? Burlington, VT

What operating system and version are you using? Ubuntu 18.04

What version of Python are you using? Python 3.6.7

Did you encounter any issues when installing the hydra package? Yes, the readme is not correct. pip install setup.py returned an error as the readme is wrong.. However the makefile is correct and running make install set everything up fine..

Readme should be updated to read python setup.py install

Also, Instructions for ubuntu should include information about setting up aliases, since ubuntu kernal uses python 2 it's not recommended to uninstall it and hydra does not seem to work w/ python2.. I recommend setting up alias in bash.rc alias python=python3 and alias pip=pip3

Did you encounter any issues with the hydra client join-network command? None

Did you encounter any issues with the hydra client configure command? None

Approximately how long did it take for your node to sync with the network? 10hrs

(Your node is sync'd when curl localhost:46657/status returns catching_up: false) Are you interested in running a validator on the network? Very much so, I was a delegate for the ARK network before stepping down and seeking other projects to work with. I'm very much interested in running Loom/Celer validator nodes.

Do you have any other feedback for us? Improve the Readme.. the installation instructions are extremely incomplete. It was very unclear that i needed to go into the ship-chain-alpha dir and run the blockchain_startup script that was created.. maybe make that section stand out more when running the configure command

gitcoinbot commented 5 years ago

⚡️ A tip worth 2500.00000 SHIP (17.46 USD @ $0.01/SHIP) has been granted to @starkblaze01 for this issue from @leewardbound. ⚡️

Nice work @starkblaze01! Your tip has automatically been deposited in the ETH address we have on file.

gitcoinbot commented 5 years ago

⚡️ A tip worth 2500.00000 SHIP (17.46 USD @ $0.01/SHIP) has been granted to @travisdmathis for this issue from @leewardbound. ⚡️

Nice work @travisdmathis! Your tip has automatically been deposited in the ETH address we have on file.

gitcoinbot commented 5 years ago

⚡️ A tip worth 500.00000 SHIP (3.49 USD @ $0.01/SHIP) has been granted to @acolytec3 for this issue from @leewardbound. ⚡️

Nice work @acolytec3! Your tip has automatically been deposited in the ETH address we have on file.

leewardbound commented 5 years ago

@itsN1X -- No clue what that error is about, but it seems to be with gitcoin and not us, please use their slack for support.

@starkblaze01 -- Thank you for participating! Bounty paid.

@acolytec3 -- Thanks for your updates to the readme! Tipped out 500!

@travisdmathis -- Thanks for your participation, bounty paid. RE: your note on starting the server -- it shouldn't actually be necessary, as the hydra client configure --install step should setup a systemd service that launches the script automatically. Also w/r/t your interest in running a validator: Please signup here and join our gitter room

leewardbound commented 5 years ago

@maexx393 -- I see Gitcoin says you have submitted your work, but all I see when I click the link is a forked repository with no commits/issues -- please submit feedback in this thread for payout.

marvinkruse commented 5 years ago

1) What are the hardware specifications (CPU/RAM/Disk space/SSD or HDD/Network link speed) of your server? Intel i7-4770 / 32GB / 200/256 GB / SSD / 1Gbit

2) Where is your server located, geographically? Germany, Nuremberg

3) What operating system and version are you using? Ubuntu 18.04 LTS

4) What version of Python are you using? Python 3.6.7

5) Did you encounter any issues when installing the hydra package? When doing pip install setup.py the following occured:

Collecting setup.py
  Could not find a version that satisfies the requirement setup.py (from versions: )
No matching distribution found for setup.py

Afterwards I did python3 setup.py install which worked.

6) Did you encounter any issues with the hydra client join-network command? Got a warning, but other than that it worked fine.

WARNING: Error getting network version details from https://shipchain-network-dist.s3.amazonaws.com/networks/shipchain-testnet-alpha.json, using "latest"
INFO: Initializing Loom...

7) Did you encounter any issues with the hydra client configure command? No, worked fine!

8) Approximately how long did it take for your node to sync with the network? Started on Mon. 25th March at about 10:25pm, finished on Tue. 26th March at about 10:25am at block #1296610 , so about 12 hours.

9) Are you interested in running a validator on the network? Not sure yet, so far I like the project, but I'm still in the process of checking it out!

10) Do you have any other feedback for us? Including a "how to get started" in the issue would have saved some seconds, but I quickly found out how use it, so that wasn't a problem. Good work overall!

gitcoinbot commented 5 years ago

⚡️ A tip worth 2500.00000 SHIP (17.17 USD @ $0.01/SHIP) has been granted to @marvinkruse for this issue from @leewardbound. ⚡️

Nice work @marvinkruse! Your tip has automatically been deposited in the ETH address we have on file.

aahutsal commented 5 years ago

@leewardbound well, there's a prob with gitcoin actually. All guys who received a tip from you still have this job slot loaded (gitcoin allows to start 3 jobs at a time). You should probably send a payment not tip to the last guy or contact gitcoin asking to resolve. Most of tipped guys think need that slot to place bids at start work on other projects :)

leewardbound commented 5 years ago

Ah, thanks for the feedback, I'll make sure to close the issue. The reason it got sent as a tip was actually that I used the "Advanced Payout" mode, because basic payout would close the job for work and we wanted many people to be able to get paid out as it was ongoing. I find it pretty weird that they classify all advanced payouts as a tip. The period for the gitcoin bounty is now closed, thanks all for participating!

gitcoinbot commented 5 years ago

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


This Bounty has been completed.

Additional Tips for this Bounty: