This is an old revision of the document!
Table of Contents
Proxmox maintenance
This is a runbook for planned maintenance on the Hackeriet Proxmox hosts in klynge001. It is documentation and procedure, not inventory. Use NetBox for canonical device, IP, cabling, and VM placement data, but verify live Proxmox state before deciding maintenance impact.
Current scope
Planned hosts:
Current goals:
- Bring host006 and host007 up to date.
- Review failed services and storage health.
- Keep the cluster healthy while working one host at a time.
- Avoid guest-level changes unless needed for recovery.
This page covers Proxmox host maintenance. Service hosts that have moved away from this cluster should be checked as external service reachability, not treated as direct reboot impact from host006 or host007.
Announcement draft
Planned Proxmox maintenance for Hackeriet
I plan to do maintenance on the Proxmox hosts host006 and host007 in the klynge001 cluster one of the next days.
Scope:
- OS and Proxmox package updates
- storage and backup health checks
- failed service review
- possible host reboots if required
Expected impact:
- VMs still running on host006 or host007 may be briefly unavailable if their host is rebooted.
- VMs affected by a reboot or migration will be checked from Proxmox and, when possible, by guest-agent and network probes.
- I will avoid guest-level changes unless needed for recovery.
- I will work on one host at a time and check cluster health between steps.
Current service placement notes
Observed on 2026-05-27:
ingressis stopped in Proxmox on host006, while ingress.hackeriet.no is reachable elsewhere.app-01is stopped in Proxmox on host006, while app-01.hackeriet.no is reachable elsewhere.bladeis stopped in Proxmox on host007, while blade.hackeriet.no and public services hosted there are reachable elsewhere.idp1is stopped in Proxmox on host007, while idp.hackeriet.no is reachable.
Current implication:
- Do not list moved services as expected reboot impact from host006 or host007.
- Use live
qm listoutput, not stale inventory records, to decide what a Proxmox reboot will affect. - Keep public service checks as regression checks, because DNS, routing, or documentation can still be wrong.
NetBox still appears to contain stale VM placement for some moved systems. Treat NetBox as inventory to clean up later, not as the final maintenance-impact source for those systems.
Current Proxmox impact
Before maintenance, refresh this with live qm list on each node.
Observed on 2026-05-27, host006 running guests included:
matrixalekseiloginjakknmsub-planaremmafoxboronmeshtastic-br
Observed on 2026-05-27, host007 running guests included:
jakkn2fr30nberghhaus-forumhaushyperborianuxchat
Stopped legacy or moved VMs should remain untouched unless the maintenance task explicitly includes cleanup or migration review.
Affected guest checks
For host006/host007 maintenance, check guests that are actually expected to be affected by the Proxmox work. Do not use unrelated public service checks as the default success criteria.
Use this order:
- Confirm the VM is expected to run with
qm list. - Confirm Proxmox sees the VM running with
qm status <vmid>. - If the QEMU guest agent is configured, check it with
qm agent <vmid> ping. - If the guest agent responds, discover guest IPs with
qm guest cmd <vmid> network-get-interfaces. - If the guest uses cloud-init IP config, check
qm config <vmid>foripconfig0. - If needed, fall back to NetBox or neighbor/ARP information for the guest IP.
- Probe network reachability only when it is expected for that guest.
Useful commands:
qm list qm status <vmid> qm agent <vmid> ping qm guest cmd <vmid> network-get-interfaces qm config <vmid> | sed -n '/^ipconfig/p;/^net/p' ping -c 2 <ip> nc -vz -w3 <ip> 22
Interpretation:
qm status runningmeans the hypervisor sees the VM running.qm agent <vmid> pingmeans the guest OS and guest agent are responsive.pingmeans basic network path works, if ICMP is allowed.nc -vz -w3 <ip> 22means SSH is listening, if SSH is expected for that guest.- Lack of ping or SSH does not always mean the guest is broken; only investigate failures that contradict expectations for that guest.
Observed on 2026-05-31, guest agent responded for:
matrixloginjakknmsub-planaremmafoxboronmeshtastic-brjakkn2berghhaus-forumhyperboria
Observed on 2026-05-31, guest agent did not respond for:
alekseifr30nhausnuxchat
DNS checks are only relevant if DNS, routing, authoritative nameservers, or hosts serving those services are in scope. They are not default host006/host007 Proxmox update checks.
Pre-maintenance checks
Run on both host006 and host007 before making changes:
hostname -f pveversion -v pvecm status systemctl --failed --no-pager pvesm status df -h qm list cat /etc/pve/jobs.cfg apt update apt list --upgradable test -f /var/run/reboot-required && cat /var/run/reboot-required || true
On host006, also check local storage pressure:
du -sh /var/lib/vz/dump /var/lib/vz/template/iso /var/log /var/cache/apt /root/proxmox-templates /var/lib/fail2ban
Host006 storage and backup context is documented at Proxmox backups.
Maintenance procedure
Work one host at a time. Do not reboot both host006 and host007 at once.
Suggested order:
- Start with host006 if the main concern is storage and backup health.
- Start with host007 if its running guests need to be handled first.
For each host:
- Confirm cluster state with
pvecm status. - Confirm storage state with
pvesm statusanddf -h. - Review running guests with
qm list. - Confirm no unexpected critical service VM is running on the host before rebooting.
- Review failed units with
systemctl –failed –no-pager. - Run
apt update. - Review
apt list –upgradable. - Apply updates only after reviewing the package set.
- Reboot only if required or clearly useful.
- After reboot, wait for the node to return and confirm cluster health before touching the next host.
Suggested update command, after review:
apt full-upgrade
Do not change guest VM configuration as part of host maintenance unless needed for recovery.
Post-host checks
After each host update or reboot:
hostname -f pveversion -v pvecm status systemctl --failed --no-pager pvesm status df -h qm list
Check guests affected by the touched host:
qm list qm status <vmid> qm agent <vmid> ping qm guest cmd <vmid> network-get-interfaces qm config <vmid> | sed -n '/^ipconfig/p;/^net/p' ping -c 2 <ip> nc -vz -w3 <ip> 22
For migrated VMs, check both source and target:
qm list # source: VM should be stopped or absent from the source host qm list # target: VM should be running on the target host
Check guest services only when the relevant guest has been touched and the expected service is known.
Known caveats
- host006 has about 1 TB physical storage, but Proxmox local storage is on the root filesystem. The root filesystem was previously close to full, and local backups under
/var/lib/vz/dumpwere the main pressure point. - During host006 maintenance, avoid casual LVM reshaping. It can put VM disks at risk and should only be done with a maintenance window and recovery plan.
- Certificate automation for internal Proxmox hostnames is documented at Proxmox ACME DNS automation.
- NetBox placement may be stale for moved service VMs. Verify live Proxmox state with
qm list.
Safety notes
- There is no plan, and we should avoid, to touch guest VMs unless required for recovery.
- Do not change DNS during the maintenance window unless DNS itself is the incident.
- There is no plan, and we should avoid, delete backups or ISOs without understanding what they are.
- Keep notes locally while working; wiki, NetBox, IDP, and public services may be affected depending on which host is down.