Guides

Collection of instructables, some of which aspire to be full-fledged walkthroughs. Posts are arranged by topic.

Upgrades and repositories
Set up necessary APT repositories upon fresh Proxmox VE install without any subscription license. Explainer on apt, apt-get, upgrade, dist-upgrade and full-upgrade.
Get rid of systemd-boot
Ditch the unexpected bootloader from ZFS install on a UEFI system without SecureBoot. Replace it with the more common GRUB and remove superfluous BIOS boot partition.
GRUB verbose boot
Most PVE boots are entirely quiet. Avoid issues with troubleshooting non-booting system later by setting verbose boots. If you are already in trouble, there is a remedy as well.
ZFSBootMenu setup
A complete feature-set bootloader for ZFS on root install. It allows booting off multiple datasets, selecting kernels, creating snapshots and clones, rollbacks and much more - as much as a rescue …
HA disable - permanent
Do away with the High Availability stack in a safe manner. Avoid the risk of reboots when troubleshooting suspected hardware woes. Particularly useful for frequent loss-of-quorum scenarios.
HA disable - maintenance
Avoid unexpected non-suspect node reboot during maintenance in any High Availability cluster. No need to wait for any grace periods until it becomes inactive by itself, no uncertainties.
DHCP setup - single node
Set up your sole node Proxmox VE install as any other server - with DHCP assigned IP address. Useful when IPs are managed as static reservations or dynamic environments. No pesky scripting involved.
DHCP setup - cluster
Keep control of the entire cluster pool of IPs from your networking plane. Avoid potential IP conflicts and streamline automated deployments with DHCP managed, albeit statically reserved assignments.
Configs - backup/recovery
Backup cluster-wide configuration virtual filesystem in a safe manner, plan for disaster recovery for the case of corrupt database. A situation more common than anticipated.
Configs - extract
Recover individual cluster configuration without need for a bogus node. Both from previous backup or a corrupt database. The source does not need to originate from the same cluster.
Host - rescue/backup
Access PVE host root filesystem when booting off Proxmox installer ISO. A non-intuitive case of ZFS install not supported by regular Live Debian. Fast full host backup (no guests) demonstration …
Host - restore
Restore a full root filesystem of a backed up Proxmox node - use case with ZFS as an example, but can be appropriately adjusted for other systems. Approach without obscure tools. Simple tar, sgdisk …
Popup nag removal - manual
Brief look at what exactly brings up the dreaded notice regarding no valid subscription. Eliminate bad UX that no user of free software should need to endure.
Popup nag removal - script
Automate subscription notice suppression to avoid manually intervention during periods of active UI development. No risky scripts with obscure regular expressions that might corrupt the system in the …
Container shell - no password
Do not set passwords on container users, get shell with native LXC tooling taking advantage of the host authentication. Reduce attack surfaces of exposed services.
W: Setting locale failed
Common Perl warning during upgrades regarding locale settings lies in AcceptEnv directive of SSH config. A better default for any Proxmox VE install, or any Debian-based server in fact.
E: dkpg processing - apt install
Conflicts in files as packaged by Proxmox and what finds its way into underlying Debian install do arise. Pass proper options to the apt command for remedy.
E: Failed to load - pve-ssl.key
Misleading error message during failed boot-up of a cluster node that can send you chasing a red herring. Recognise it and rectify the actual underlying issue.
Cluster probe setup
Experimental setup that can in fact serve as a probe to the health of a cluster. Unlike e.g. Quorum Device, it mimics an actual full fledged node without the hardware or architecture requirements.
Cluster filesystem build
The bespoke filesystem that is the heart of Proxmox stack compiles from its sources in C. Necessary when changing hardcoded defaults or debugging unexplained quirks.