How to prepare your farm for the farmerbot with WOL

Note: The TF Manual now covers this documentation: https://manual.grid.tf/farmers/farmerbot/farmerbot_intro.html

Hi farmers!

The farmerbot is coming soon so for the ones interested, some guidelines to set up your nodes and their networking. This guide will explain how to setup the technical environment where the farmerbot will operate.

ZOS can utilize 2 NIC’s (Network Interface Card) of a node (server, workstation, desktop, …). The first NIC on the motherboard will always be what we call the ZOS/dmz NIC, the second one is used for public config’s (Gateway, public IP’s for workloads, …). So if you don’t have public IP’s in your farm, only the first NIC of your ZOS node will be used. This subnet is where the farmerbot operates. If you do have public IP’s the same applies.

Wake On LAN (WOL) is used to be able to boot (start) a ZOS node remotely that was shut down by the farmerbot. It works by sending what is called a ‘magic packet’ to the NIC MAC address of a ZOS node. If that NIC is setup correctly, aka ‘listening’ for the packet, the node will start up, post and boot ZOS. The farmerbot will keep a list of MAC addresses for nodes under it’s management, so it knows where to send the packet if it’s required.

WOL comes with a few requirements:

Enable WOL in the BIOS of your ZOS node.

A ZOS node must be capable of doing WOL. Have a look at your node hardware / BIOS manual. If so make sure to enable it in the BIOS! A bit of research will quickly tell you how to enable for your hardware. Some older motherboards do not support this, sometimes you can be lucky it does after a BIOS upgrade, but that is brand/model specific.

Some examples:


All your ZOS nodes and their first NIC (ZOS/dmz) should be in the same network subnet (also called network segment or broadcast domain).

This requires some basic network knowledge. WOL packets can not be send across different subnets by default, it can but this requires specific configuration on the firewall that connects the two subnets. Though cross-subnet WOL is currently not supported by the farmerbot.

A ‘magic’ WOL packet is sent only on networking layer 2 (L2 or the ‘data link layer’) based on MAC address. So not on L3 based on ip address. This is why all nodes that should be brought up via WOL, need to be in the same subnet.

You can check if this is the case like this: if for example one node has the ip 192.168.0.20/24, then all other nodes should have an ip between 192.168.0.1 and 192.168.0.254. You can calculate subnet ranges easely here: https://www.tunnelsup.com/subnet-calculator/

So for the 192.168.0.0/24 example, you can see the range under ‘Usable Host Range’:

Some NIC’s require WOL to be set on the NIC firmware.

This is fully handled by ZOS. Every time ZOS boots it will enable WOL on links if they require it. So if a ZOS node then is added to a farmerbot, it will have WOL enabled on its NIC when it’s turned off (by the farmerbot).

Your farmerbot can be run on any system, including on a node. It doesn’t have to be on the same network subnet as the nodes from the farm. The nodes of the farm on the other hand have to be in the same LAN. Don’t hesitate to ask your technical questions here, we and the community will help you set things up!

5 Likes

Will we be able to choose multiple nodes to run farmerbot on?

One of the challenges of my farm is that I had to split it into 6 individual VLANs due to the high amount of established connections. So I’ll need to have 6 farmerbot nodes at minimum.

Perhaps 6 additional so that I have 2 capable per segment. In case one farmerbot goes down, the “failover” farmerbot can fill in.

Look’s like BCM5720 NIC, the default in R620 and R720 does support WOL.

2 Likes

I just sold 30 NIC’s on ebay. I swear to god if Dell R620’s embedded NIC doesn’t support WOL and I need those NICs back…

R620 NICs are swappable. I have tested and can confirm BCM and Intel NICs in x20 and x30 Dells support WOL. In general I have not come across a server NIC that doesn’t support WOL.

That being said, I believe I did have to enable WOL on my Dells by hitting Ctrl+S during boot to enable within the adapter. By default it’s not on, and it’s not a present option in the BIOS if memory servers me right.

1 Like

so do I understand correctly the BRCM GbE 4P 5720-t rNDC will go or not ?

I have the NIC with 2 RJ ports abs 2 SFP+ ports in my R620s and the specs say it supports WOL.
Haven’t tried it so far, but will move my Lenovo Tinys to the server farms this weekend.
I would also confog a backup farmer bot like @colossus if that’s possible.

https://docs.broadcom.com/doc/12358268 WOL Support BRCM GbE 4P 5720-t rNDC YES Nice

This is my plan as well. Farmerbot nodes will be efficient micro PCs.

Yes. BCM 5720 does support WOL.

1 Like

I don’t know if it will be possible to run multiple farmer bots to cover your different VLANs, but it would always be possible to segment your farm into separate farms per VLAN. I can’t think of any downside to this offhand, besides the work require to migrate the nodes to a different farm (just replacing the boot media is enough).

1 Like

Sounds like farmerbot is going to be coded as 1 per farm?

Is there any sort of failover automation design (like an ansible structure)if this is so? Or would we have to keep tabs manually and reassign the farmerbot role to another node if need be?

No big deal if I have to split into multiple farms. The work to do so would certainly be worth it.

I hope someone posts a video on youtube showing how to set it up :slight_smile:

1 Like

Great question about failover. If it’s not part of the initial release it’s definitely something we should work on.

We can do a video for sure, @stanikzai :slight_smile:

3 Likes

Good stuff. I’m sure the tool will evolve as we move forward. Looking forward to initial implementation.

Also, thank you to the dev team and really all on the admin side of TF. I know you all have a lot on your plate and probably wear a lot of hats.

To clarify some things here:

  • Farmerbot doesn’t have to run physically in the farm since it instructs nodes over RMB to shut down / power on nodes
  • You can only run one Farmerbot for now
  • 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.

You can exclude specific nodes from being controlled by the farmerbot, but then these nodes can never be used by end users.

A way to solve this on the farmerside is to create multiple “farms” that group nodes in a subnet and run a Farmerbot for every farm.

3 Likes

as I understand it we only need one node to wake up the others or do we need more ?

Seems like you need one node with the Farmerbot active, then it will wake up the other nodes.

1 Like

Can we get an update how the testing is going and an outlook when to expect WoL on Testnet…

Correct. Currently you can only deploy one farmerbot for each farm, so the farmerbot can only run on one node.
I’m not sure if it’s this specific node (where the farmerbot is running) that will wake the others, but @brandonpille might know.