[TUTORIAL] HiveStation - Developer Workstation for Proxmox Virtual Environment

Thanks for the links, good reading.

A few notes on zswap since you bring it up.

On the Proxmox kernel it's built in but disabled by default. I checked on a 7.0.14-pve host:

Code:
# cat /sys/module/zswap/parameters/enabled
N
# cat /sys/module/zswap/parameters/compressor
lzo
# cat /sys/module/zswap/parameters/max_pool_percent
20

So enabling it is just zswap.enabled=1 on the kernel command line, nothing to install or build.

It's also relevant to the original SSD question: zswap compresses pages in RAM and only writes them out to the swap device once its pool is full, so fewer writes actually reach the disk. The swap partition stays in place as backing.

Between the two I'd go with zswap rather than zram here. In HiveStation the swap is always a LUKS2 partition outside the ZFS pool, because swap on a zvol deadlocks under memory pressure. zram is a different mechanism but carries the same kind of risk: it keeps the swapped pages in RAM with no device behind it, so when it fills there's nothing to fall back on - hence the userspace OOM killer you mention. zswap still has a real device behind it.

Also, a correction to my previous post: I wrote that the RAID1 layout gives you SWAP1/SWAP2 failover. That's true with a cleartext swap, but not with an encrypted one. In that case HiveStation doesn't enable swap-failover, and crypttab with nofail handles a missing disk instead. @fruchtzwerg since your install is encrypted, that's your case.

HiveStation doesn't enable zswap at the moment. I'll test it properly before deciding anything.
 
  • Like
Reactions: Johannes S