How to set-up your own 3Node

My issue was fixed by going back to the boot loader and downloading and image for the testnet vice the mainnet. I’m not sure if its worth going back to try and build another farmer node on the mainnet.

1 Like

Thanks! I finally got it! I knew I messed up somewhere lol. So I needed to re-download the image but put the CORRECT farm id in because I actually put the workload id in (one of the three that is shown when clicking info in deployed 3Bots). I realized afterwards that I was supposed to first go to the grid.tf page where it shows the dashboard and all, then go to Farm Management, then get the Farm ID from there, then return to the bootstrap zeroOS page and enter that id in before downloading the image and burning it to the usb flash drive. After I did all that, when I booted up it still was showing “Not Configured” in the network section, so I took the advice from someone in the telegram group that said he had to enable ipv4 and ipv6 network stack in bios. Then booting back up and letting it do it’s thing, it got to the zeroOS window but it still showed “Not Configured” for a couple minutes…then it went away and finally started showing real info there. i can finally see it in the node explorer as well.

I wonder if I had waited a little longer on the first boot, would the “Not Configured” part go away and maybe I didn’t need to enable the ipv4 and ipv6 network stack in bios??? oh well, it’s working now so I’ll probably just leave it for the time being. maybe i’ll turn it off in a few days just to see if that was actually necessary or not.

1 Like

Both the correct farm id and having network stack/boot enabled are necessary for zos to function properly.

Is Packages->Farm Management only available for people who buy the 3Node. I created my own today and was wondering where i would access that? Thanks.

The package is available to anyone, on the 3Bot interface. Right now there are some issues with hosted 3Bots, and we’re now recommending the gofarmer tool as a simpler option:

Setting up a farm with the gofarmer tool

I have the farm running on a Dell server and it shows up on TFEXPLORER website no problem. Install actually went very smooth with the GoFarmer Tool. Thanks for making that part easy. I just don’t know if there is a different “farm management” panel that I can access or it that panel just for hosted 3Bots? Sorry for my confusing post.

Oh, I didn’t realize that your node was already online—that’s great!

Thanks for being an alpha tester of Go Farmer, and for reporting that the experience went smoothly. The very talented @ahmedthabet whipped that up recently to make things easier on new farmers :grinning:

Farm management is only a feature of 3Bot, whether hosted or running locally, for now. I hear that we should expect to see it in a later release of Go Farmer.

might be a daft question but how do I add a second node to my farm? Do I just create another bootable USB from the original *.IMG file, boot it on another rig and away it goes?

I just got my build running, a HP Prodesk 600 G5 SFF, intel core i9 9900, 2tb samsung evo 970 plus m.2 NVMe, 96GB DDR4, and it looks just like this, is this a problem ? is there anything else I have to do or am I good to go ??

1 Like

Yes, you can reuse the boot image or create another one with your same farm id.

1 Like

If all the resources in your node are shown on the explorer/farm management screen, you’re good to go :+1:

1 Like

What inbound and outbound ports are required for the 3Node to run?

No inbound ports are required. For outbound, just standard stuff like web and ping, as well as Yggdrasil. Yggdrasil does not use a fixed set of outbound ports, rather it is determined by the peers in use and which ports they choose for inbound connections. Since the peer list is dynamic, strictly limiting outbound ports may be tricky, if that’s your goal.

Nahh. Enterprise firewalls dont support UPNP or NAT Hole punching so the 3node only does GET calls or? ofc i can allow stuff outbound, but im guessing NAT holepunching is required as most Cryptos are designed this way.

So what you are saying is that there’s nothing that will try to contact my nodes in anyway?

Things may try :wink: What I’m saying is that there is no need to allow inbound connections for 3Nodes. The node gets it’s workload deployments via an outbound connection to the explorer. An inbound firewall does mean that those workloads won’t be directly publicly accessible (so some users creating deployments may see greater value in publicly reachable nodes). However, Yggridasil (very cool project that’s worth a look if you haven’t seen it) allows other Yggridasil enabled devices, including other 3Nodes to make inbound connections.

In summary, farming behind a firewall is fine (my node at home is), but inbound connections are still possible via an always on outbound connection created by Yggridasil.

Ahh so the node has outbound connections and “fetches” the jobs and Yggdrasil does support inbound connections.

I will check out Yggdrasil. Do you have any source code I can read up on with regards to 3Node and Yggdrasil?

Yep! Through Yggdrasil, and also Wireguard, all connections between nodes and from users to nodes are end to end encrypted by default. Very secure and groovy architecture, if you ask me :sunglasses:

All code can be found in the Zos repo: https://github.com/threefoldtech/zos

There are some links in the repo readme to docs and specs that might be helpful too, though some are perhaps outdated. Let me know if you need any help navigating.

I have look at the source code and the Network large scale deployment wiki and it looks like all the 3nodes require a public IP or on small scale home networks it uses UPNP.

Are you sure there’s no documentation on the packet flow? Is wireguard a requirement for the node to come up? because wireguard uses UDP NAT holepunching.

Hey, I’m thinking that rather to continue cluttering this thread, perhaps we should shift the convo back to the thread you made on this subject: TFT ZeroOS - Enterprise Firewall without UPNP

We’re honestly getting beyond the limits of my current understanding of Zos, so I’ll tag in the heavyweights to make sure you’re getting correct info :wink:

If I was going to setup a second node, could I just clone my USB key and run it on a second system? Or do i have to generate a new farm ID for every node I setup?