Cześć.
Poniżej mały tutorial w jaki sposób można zautomatyzować kopie zapasowe w proxmox z ich wysyłaniem na zewnętrzny serwer/cloud.
-
W ścieżce
Datacenter
→pve (nazwa node'a)
→local (nazwa storage)
klikamy w zakładkęCT Templates
, przyciskTemplates
i pobieramy template dlaDebian 10
.
-
Tworzymy nowy kontener, ustawiamy wybrane hasło, nazwę hosta, wielkość dysku (10GB), CPU (2 rdzene) i 1024MB RAM / 512 SWAP. Nie uruchamiamy jeszcze kontenera. Notujemy gdzieś numer ID kontenera, w przykładzie użyję. 105.
-
W zależności od naszej konfiguracji Proxmox wybieramy lokalizację dla kopii zapasowych, które będziemy eksportować. Domyślnie proxmox używa folderów w lokalizacji
/var/lib/vz
, ale możemy utworzyć folder w dowolnym miejscu - np. na dodatkowym dysku. W przykładzie użyję/mnt/storage/
Przechodzimy do konsoli SSH proxmox wybierającDatacenter
→pve (nazwa node)
→ zakładkęShell
i wpisujemy kolejno polecenia:
# Jeśli dodatkowy dysk mamy podmontowany w /mnt/storage:
mkdir -p /mnt/storage/export_backups
pct set 105 -mp0 /mnt/storage/export_backups,mp=/mnt/media
# Jeśli korzystamy z domyślnej lokalizacji:
mkdir -p /var/lib/vz/export_backups
pct set 105 -mp0 /var/lib/vz/export_backups,mp=/mnt/media
Dzięki temu nasz kontener LXC będzie miał dostęp do folderu z hosta Proxmox.
-
Przechodzimy do
Datacenter
→ zakładkaStorage
i wybieramyAdd
→Directory
, gdzie nadajemy mu nazwę i podajemy wcześniej utworzony folder.Content
ustawiamy naVZDump backup file
-
Przechodzimy do zakładki
Backup
w Datacenter i wybieramyAdd
. Konfigurujemy zautomatyzowany backup instancji HA, np.:
Jak widać ustawiłem powtarzanie backupu o godzinie 02:00 codziennie. -
Uruchamiamy stworzony kontener i łączymy się przez SSH
root@ADRES.IP.UTWORZONEGO.KONTENERA
Wydajemy polecenie:
apt update -y && apt install -y make curl && curl https://raw.githubusercontent.com/rm-rf-dev-null/arturhome.pl/main/duplicati/Makefile -o Makefile && make install
-
Po zakończeniu skryptu kontener uruchomi się ponownie. Możemy przejść w przeglądarce pod adres: http://ADRES.IP.UTWORZONEGO.KONTENERA/ i przejść do konfiguracji zautomatyzowanego backupu. W 1 kroku ustawiamy hasło - nasz backup będzie zabezpieczony enkrypcją - zapisujemy to hasło do notesika bo bez niego umarł w butach!
-
W drugim kroku wybieramy gdzie będziemy wysyłać nasze backupy. Ja do takich kopii osobiście używam Backblaze B2 - ze względu na cenę (PS. przy backblaze w advanced options trzeba wybrać
accept-any-ssl-certificate
).
-
W trzecim kroku wskazujemy nasz podmontowany folder z Proxmox:
-
Ustawiamy harmonogram naszych backupów - jako, że wysyłanie musi nastąpić po utworzeniu kopii ustawiłem ich synchronizację o godzinie 5:00 codziennie
-
Jako, że utworzyłem w proxmox retencję na 7 dni backupów to tą samą opcję ustawiłem w duplicati:
No i to w sumie tyle. Dzięki temu mamy 7 ostatnich dni backupów instancji HA z PVE w chmurze. W razie awarii Proxmox czy dysku zawsze ostatnią wersję naszej maszyny wirtualnej możemy odtworzyć z kopii stawiając nowego proxmox i konfigurując duplicati.
PS. Miał być gotowy kontener LXC, ale łatwiej będzie komuś sprawdzić Makefile niż dostarczony gotowy kontener a zdaję sobie sprawę, że niekoniecznie ktoś musi chcieć ufać mi na słowo i uruchamiać obcy kontener w swojej sieci.