Regardless of your setup, some server resources will need to be allocated. This guide will help you identify how to size things appropriately.
To successfully manage a large-scale cryptocurrency mining operation, we typically recommend that Pickaxe, our miner metrics agent, runs on a server at your farm, connected directly to the network with your miners. For multiple sites, there would be a different server per site, each running their own Pickaxe.
Our agent can also be ran remotely and can query miners over a VPN connection.
While other monitoring platforms require a very powerful single server to manage a mining operation, our architecture allows you to break things up and run multiple Pickaxes at each of your locations. This means that rather than having one large server, you can instead have many smaller ones, making things much more scalable.
The following examples cover common deployment postures:
- One computer per mining container, with each Pickaxe responsible for ~500 miners.
- One computer per collection of mining containers, with each Pickaxe responsible for several thousand miners.
- One enterprise server responsible for an entire site, with one Pickaxe responsible for over 10,000 miners.
For very large deployments, we recommend that our agents run on a VM cluster to promote resiliency. This allows each Pickaxe to shift to an available node in the event of an outage, keeping your operation online and updating.
A Safe Starting Point
The scalability of Pickaxe generally comes down to CPU; the more cores and threads available, the quicker it can query miners and process commands in parallel. Disk usage is minimal (only used for ERROR-level logging), as is memory consumption (little data is stored locally, so at least 2 GB of free system memory will suffice).
Regarding CPU usage, the following should serve as a safe starting point:
0 - 2,500 Miners
At least a server with an Intel i5 or AMD equivalent. Ideally, you'll want a CPU that has at least 4 cores and hyper-threading. You can tell if hyper-threading is provided based on the relationship between CPU cores and the number of threads available. Here's an example of a CPU with hyper-threading (6 cores, 12 threads). Here's an example of one without (6 cores, 6 threads).
2,500 - 10,000 Miners
At least a server with an Intel i7 or AMD equivalent. For this size of a deployment, we recommend at least 16 threads (8 cores, but 16 threads with hyper-threading).
Over 10,000 Miners
If you're in this range, we recommend that you contact us. Typically, an enterprise server is what you'll need, but operations of this size often have to participate in power curtailment and load shedding events. Our team is happy to help you design your Foreman deployment to ensure the system meets your timeliness constraints.
We support both Windows and Linux. When selecting an operating system, we recommend that you pick the one where you feel most comfortable.