Stake pool setup : Hardware or VM

I have stopped the VM setup of Stake pools heres why.

Some Stake Pool operators have stated a preference for Dedicated hardware for nodes as 1) Costs can be cheaper 2) the CPU is not shared 3) Security factors on a one to many host. 4) blocks being missed can be costly financially for a working pool

Any thoughts here ?

Why not do both? IE. Run virtual machines on your “bare metal” machine.

Running individual server instances, with specific software requirements, within a virtual machine, can provide security benefits. You can audit and specifically lock down the software running in each virtual machine. Other virtual machines can be running different software and be secured differently. Furthermore, you can firewall between the virtual machines differently giving them different network access.

How you allocate resources to each virtual machine can be tailored to requirements. For example, you can choose how CPUs get allocated to each virtual machine. CPUs can be allocated without contention or they can be shared.

Here is a listing of CPU allocation for some of my virtual machines:

virsh vcpuinfo relay1

VCPU:           0
CPU:            2
State:          running
CPU time:       148513.5s
CPU Affinity:   yyyyyyyyyyyy----
   
VCPU:           1
CPU:            6
State:          running
CPU time:       150069.3s
CPU Affinity:   yyyyyyyyyyyy----

VCPU:           2
CPU:            10
State:          running
CPU time:       150200.5s
CPU Affinity:   yyyyyyyyyyyy----

VCPU:           3
CPU:            8
State:          running
CPU time:       149852.5s
CPU Affinity:   yyyyyyyyyyyy----

virsh vcpuinfo relay2

VCPU:           0
CPU:            3
State:          running
CPU time:       142146.6s
CPU Affinity:   yyyyyyyyyyyy----

VCPU:           1
CPU:            9
State:          running
CPU time:       141501.1s
CPU Affinity:   yyyyyyyyyyyy----

VCPU:           2
CPU:            11
State:          running
CPU time:       144277.7s
CPU Affinity:   yyyyyyyyyyyy----

VCPU:           3
CPU:            0
State:          running
CPU time:       138892.8s
CPU Affinity:   yyyyyyyyyyyy----

virsh vcpuinfo bp1

VCPU:           0
CPU:            13
State:          running
CPU time:       172288.1s
CPU Affinity:   ------------yyyy

VCPU:           1
CPU:            15
State:          running
CPU time:       168687.8s
CPU Affinity:   ------------yyyy

VCPU:           2
CPU:            14
State:          running
CPU time:       168619.5s
CPU Affinity:   ------------yyyy

VCPU:           3
CPU:            12
State:          running
CPU time:       169750.2s
CPU Affinity:   ------------yyyy

Note that each of the three listed virtual machines have 4 CPUs each. The CPU Affinity list shows which physical CPUs they can be allocated. relay1 and relay2 can be allocated CPUs from the first 12 physical CPUs. Whereas bp1 can be allocated CPUs from the last 4 physical CPUs. If no other virtual machines can be allocated the last 4 physical CPUs then that would mean that bp1 is guaranteed these 4 physical CPUs without contention.

These virtual machines are all running on my “bare metal” machine.

Yes a hybrid approach am leaning towards

How much roughly is that per month and are you leasing the bare metal ?

I own a couple of different types of “bare metal” machines:

One is an ARM 64 built from this motherboard: HoneyComb LX2 - Arm Workstation & Developer Platform | SolidRun
with 64Gb RAM. It has a similar processor to a Raspberry Pi but a bit faster, with more cores, and much more RAM. Low power usage and can be run fanless in a case with heat pipes.

The other is a standard PC with intel processor and 64Gb RAM. If you use a Tensor PC: Tensor-PC – fit IoT
Then it is also fanless.

Ok so when it comes to hosting is that self hosted or in a rented rack in a DC ?