casper-node
casper-node copied to clipboard
Create a note about using unsupported VM/OS on the operator guide
When running a VM with KVM / qemu, you are able to customize its virtual CPU. If a VM is created without certain CPU features then the node launcher could fail to run the node, without returning a useful error to the operator.
This could be mitigated by compiling the node binary directly on the host, but this is probably not something that new operators will think of if they're following a setup guide, since our current guide instructs operators to install from a package manager repo.
Some steps that we could take:
Try to discover which crates in casper-node require cpu flags aes and avx, then see if there is a crate feature flag that we can use to remove the crate's dependency on those features.
This ticket is meant to act as a reminder so we don't forget to follow through with this issue, but may be replaced with a more concrete set of tasks.
Maybe prioritize this, a https://github.com/casper-network/casper-node/labels/low-priority gains priority as time passes...
Actions
Those actions should be enough to close this issue:
A
File an issue "node-launcher: report missing CPU features before exit"
B
Add a note to the manual
If you plan to run the node for any reasons on "exotic" machines (example: customized virtual CPU on a VM/qemu), consider compiling the binary directly on this machine.
Extend the existing documentation in the https://docs.casper.network/operators/setup/hardware#cpu-requirements section. Refer to the L1 call recording on 24th March'25.
Get the dump from the binary - check with @mpapierski
Michal shared the required details;
List cpu flags on x86_64;
AVX2
AVX
BMI
CMOV
MODE64
NOVLX
SHA
SSE1
SSE2
SSE3
SSE41
SSSE3
The details are will be incorporated in the appropriate documentation section.
PR - https://github.com/casper-network/docs-redux/pull/66