mirror of
https://github.com/RWejlgaard/pez-infra.git
synced 2026-11-01 11:23:49 +00:00
Neither Proxmox host had a single backup job, so the game servers, the k3s control planes and the workspace VMs had no backups at all. copenhagen-a has nowhere local to keep them (`local` is the root LV and already 82% full), so both hosts now back up to a new pve-backups Samba share on london-b, each into its own directory. VMIDs overlap between the two hosts, and retention prunes by VMID, so they can't share one. - media_stack creates a Samba-only pvebackup user on london-b, the share and the per-host directories. The password comes from SOPS and gets re-set if the login stops working. smb.conf is now checked with testparm before it's deployed. - proxmox_ve adds a backup-only london-b-backups CIFS storage, pushes the credentials again if the storage goes inactive, and fails the deploy if it still can't reach london-b. - Jobs are defined in host_vars. Each job keeps a hash of its settings in its comment, so the role only touches jobs that changed and removes ones I delete from host_vars. Jobs made by hand are left alone. london-a backs up the control plane every night. copenhagen-a backs up the control plane and game servers every night and the workspace VMs weekly, since every run is a full archive going over the WAN.
13 lines
418 B
YAML
13 lines
418 B
YAML
---
|
|
host_role: proxmox-ve
|
|
host_description: "Proxmox VE hypervisor"
|
|
host_location: "London"
|
|
ansible_python_interpreter: /usr/bin/python3
|
|
|
|
# Nightly backup of the k3s control plane. Karpenter worker VMs are disposable
|
|
# and the template (1000) is rebuilt by Karpenter, so neither is backed up.
|
|
proxmox_ve_backup_jobs:
|
|
- id: daily
|
|
schedule: "02:30"
|
|
vmids: [101]
|
|
prune_backups: "keep-daily=7,keep-weekly=4"
|