Farmerbot: Basic Guide for All Networks [OUTDATED]


NOTE: There is a new Farmerbot. Read more Update on New Farmerbot.


9 Likes

Thanks for this Mik! Much appreciated!

1 Like

Damn, nice and extensive guide! Thx @Mik :slight_smile:

2 Likes

It’s extensive just because I took the work of great farmers like you :stuck_out_tongue:
So thanks to you!

3 Likes

In case anyone was thinking about giving this a shot over the weekend, I want to quickly share my experience so far testing farmerbot:

  • QA net has not worked for me. I suspect that some components of the network may be on older versions that aren’t compatible
  • Devnet works well

I’m following up with the dev team to see about the status on QA net and resolve issues as they come up in my own testing.

4 Likes

That’s a pioneer right there!
Thanks for the info.

Please share your github issue/ticket on this if you can!

hehe good to know, as I was starting the tests for wol I got so much new ideas for my pxe-tool… so I endet up developing new stuff instead of testing it xD just because I don’t want to backup and switch network by hand xD

1 Like

The farmerbot should be working on QA net. I believe @scott used a wrong twinid which resulted in one of the components that the farmerbot is using to crash. We fixed that so it should no longer occur.

2 Likes

Hey Mik, im not sure but isn’t it necessary to wipe the disks before switch to qa net? i didn’t test it cause i wiped it on the go. Just asking because of the tutorial here. if it is necessary we should add this hint.

And side hint, wiping is easy. NMT :stuck_out_tongue_winking_eye:

1 Like

Indeed it is necessary. Thanks for the reminder.

It’s planned in the: got-to-do-this-this-week list.

It’s updated. Will pull request for the manual.grid.tf version. Thanks again.

1 Like

After testing again today on QA net, everything is working fine. I can’t confirm the source of the original problem, since I didn’t maintain the nodes and config on QA net after migrating to devnet for further testing. Surely could have been a typo in my config file.

Anyway, we made the ts_client more robust in the process, so I call it a win overall :slight_smile:

1 Like

Alright good to hear. I’m pretty confident it was a mistake in twinid. The farmerbot would then try to contact the node which would fail. As a result of that it would think that the node is sleeping and would wake it up. We do that using another service that can contact the chain. That service would try to do that and fail. This failure would be send back to the caller 2 times which is not allowed. It was a small bug that is fixed in the meantime. Thank you very much for testing :muscle:. It allowed us to find that bug.

Hi all. I have released a new version of the farmerbot v0.1.0-rc13. It contains a new improvement that reduces CPU usage when the farmerbot is “idle”. You can start using it by downloading the docker-compose file (again, if you already downloaded it before) and by running the docker compose command. Here are the commands you should execute (skip the 2nd and 3rd command if the farmerbot is not running yet):

wget https://raw.githubusercontent.com/threefoldtech/farmerbot/development/docker-compose.yaml
docker compose rm -f -s
mv config/farmerbot.log config/farmerbot.log.archiverc12
docker compose up -d
3 Likes

I’m excited that the farmerbot is available on testnet already, Mik maybe it’s possible that your documentation will be adapted to the testnet and the CPU improvment command is integrated at the right place. Will give it a try tommorow…

1 Like

For testnet, just adjust the .env file as follows:

MNEMONIC="<THE_MNEMONIC_OF_YOUR_FARM>"
NETWORK=test
RELAY=wss://relay.test.grid.tf:443
SUBSTRATE=wss://tfchain.test.grid.tf:443

I’ll go ahead and drop this link to the video guide I published today too :slight_smile:

2 Likes

Thanks to @scott and Jelle via chat!!

A few Infos which would be nice in your post @mik

  1. The Farmerbot works only if you have some small amount of TFT in your chosen network.
  2. Nodes power themselves down by checking TF Chain for a new power target. They power back up by receiving the magic packet from another node in the same LAN.
  3. since you need at least one node to power up a second node. you cant test with just one node. it wont power up and wont power off.
  4. in the config-path where you run the docker-compose you have more logging for error checking
1 Like

OK very nice.

Point 1 is already added from today’s talk.

I’ll do 2.3.4. Can you say more on point 4?

I have Docker installed on a machine on the same network running Windows. I will install the farmerbot on this machine. Is it possible for the farmerbot to wake/sleep all nodes in the network? My idea is that all nodes can be put to sleep. There is no need for a permanently active node as long as the farmerbot works permanently on the same LAN.

@igg

From what I gather, you can clearly do this:

  • Run all nodes on the same LAN
  • Have one 3node active, hosting the farmerbot workload
    • You designated this 3node to be the node that wakes the other nodes

From the other posts and @brandonpille and @dylanv’s wise words:

  • The Farmerbot doesn’t have to run physically in the farm since it instructs nodes over RMB to shut down / power on nodes.
  • You can run only one Farmerbot for now
  • Currently you can only deploy one Farmerbot for each farm, so the Farmerbot can only run on one node.
  • The Farmerbot should be running all the time or not at all (this is up to the farmer)
  • Though you can run the Farmerbot anywhere you want, it doesn’t have to be on a 3node in your farm
  • If you want, you can set your Farmerbot on your farm, in the same LAN as all other nodes, and designate this 3node to be the node that wakes up the other nodes.
  • You can set different farms in different LANs and set one Farmerbot per farm.
  • The farmer bot uses the nodes in the farm to send WOL packets to the node that needs to wakeup.
    • For this reason, you need at least one node per farm to be powered on at all time.
  • The Farmerbot can run on any computer/server, it could even run on a laptop so to speak, as long as it has an internet connection, the Farmerbot will be working fine.
  • If all nodes in a subnet are powered off, there is no way other nodes in other subnets will be able to power them on again so that is an issue.
  • It should be possible to set (at least) 2 instances of the Farmerbot and have a fail over setup. Stay tuned for more information on this.
1 Like