BackupZit

Proxmox VE sanal makineleri nasıl yedeklenir

Eksiksiz bir kılavuz: boş bir Proxmox düğümünden tüm VM ve kapsayıcıların zamanlanmış, şifreli ve tekilleştirilmiş yedeklerine — dış kopya, otomatik geri yükleme testleri ve gerektiğinde saniyeler içinde doğrudan yedekten çalışan bir VM ile.

Neler kuracaksınız

BackupZit, Proxmox VE sanal makinelerini (QEMU) ve kapsayıcılarını (LXC) konuklara hiçbir şey kurmadan yedekler. Her Proxmox düğümünde küçük bir aracı çalışır, her konuğun geçici bir snapshot'ını alır, disklerini okur ve seçtiğiniz depolamaya kaydeder. Bir web konsolu işleri zamanlar, geçmişi tutar ve geri yüklemeleri başlatır.

Proxmox VE'nin kendi yedekleme araçları da vardır: vzdump ve Proxmox Backup Server. Yalnızca Proxmox kullanıyorsanız bunlar iyi ve ücretsiz bir seçimdir. BackupZit; Proxmox ve Windows ile Linux sunucular, VMware, Hyper-V, veritabanları ve Microsoft 365 için tek bir konsol istediğinizde veya önyükleme testli yedekler ve başka bir kümeye replikalar gibi özelliklere ihtiyaç duyduğunuzda anlam kazanır.

Gerekenler

  • Proxmox VE 7, 8 veya 9 çalıştıran bir veya daha fazla düğüm (Debian tabanlıdırlar, bu yüzden aracının Debian paketi uyar).
  • BackupZit konsolu için bir yer: 2 vCPU, 2–4 GB RAM ve 16–20 GB disk ile küçük bir Linux VM. Konsol kendisi yedek verisi saklamaz, bu yüzden aynı kümede VM olarak çalışabilir.
  • Proxmox düğümü dışında yedek depolama — örneğin SFTP ile bir Linux sunucu veya NAS, bir SMB paylaşımı, S3 uyumlu bir bucket ya da BackupZit sağlamlaştırılmış deposu (hardened repository). Aracılar doğrudan buraya yazar.
  • Ağ: aracılar konsola TCP 8443 portundan ulaşır.

Adım 1 — Konsolu kurun

Proxmox'ta en hızlı yol, indirme sayfasındaki hazır appliance imajı backupzit-appliance.qcow2'dir (Debian, PostgreSQL ve konsol hazır kurulu):

  1. Disksiz bir VM oluşturun: 2 vCPU, 2–4 GB RAM, VirtIO ağ.
  2. backupzit-appliance.qcow2 dosyasını düğüme kopyalayın ve VM'in diski olarak içe aktarın (<vmid> değerini değiştirin):
    qm importdisk <vmid> backupzit-appliance.qcow2 local-lvm
  3. İçe aktarılan diski SCSI olarak bağlayın, önyükleme diski yapın ve VM seçeneklerinde QEMU guest agent'ı etkinleştirin.
  4. VM'i başlatın. Ekranında web konsolunun adresi ve admin kullanıcısının ilk parolası görünür. https://<adres>:8443 adresini açın, oturum açın ve parolayı değiştirin.

VM'in kendi ekranında bzadmin olarak oturum açıp sabit adres, sunucu adı ve saat dilimini ayarlayabilirsiniz (appliance UTC ile başlar ve zamanlamalar konsolun saat dilimine göre çalışır). Mevcut bir Debian, Ubuntu, AlmaLinux veya Rocky Linux sunucusunu mu tercih edersiniz? İndirme sayfasındaki tek satırlık kurulum betiği orada aynı işi yapar.

Adım 2 — Depolama hedefi ekleyin

Konsolda Depolama'yı açın ve bir hedef ekleyin. Proxmox yedekleri için tipik seçimler:

TürUygun olduğu yer
SFTPSSH'li her Linux sunucu veya NAS; sunucunun ana bilgisayar anahtarı sabitlenir.
SMB paylaşımıWindows dosya sunucuları, Synology veya QNAP NAS (SMB 2/3).
S3 uyumluDış kopyalar: AWS S3, Wasabi, Backblaze B2, MinIO, Ceph; Object Lock ile değiştirilemez.
Sağlamlaştırılmış depobackupzit-repo çalıştıran bir Linux sunucu: yedekler değiştirilemezlik süresi bitmeden silinemez.

Yedekleri şifrele (AES-256) seçeneğini açık bırakın (varsayılan): her şey düğümden çıkmadan önce düğümde AES-256-GCM ile şifrelenir. Konsol ardından bir kurtarma anahtarı gösterir — kurtarma sayfasını yazdırın veya anahtarı yedeklerden ayrı bir parola yöneticisinde saklayın. Anahtar, depolama konumu ve kimlik bilgileriyle konsol kaybolsa bile geri yükleyebilirsiniz; anahtar olmadan kimse yedekleri okuyamaz.

Adım 3 — Her düğüme aracıyı kurun

  1. Konsolda Aracılar'ı açın ve Kayıt belirteci oluştur'a tıklayın. 7 gün geçerli ve istediğiniz sayıda makinede kullanılabilen bir kayıt kodu (BZ1-…) alırsınız.
  2. Aracılar sayfasından Linux aracısı — Debian / Ubuntu paketini düğüme indirin ve çalıştırın:
    apt install ./backupzit-agent_*.deb
    backupzit-agent enroll --code "BZ1-..."
    systemctl enable --now backupzit-agent
  3. Bir dakika içinde düğüm, Aracılar sayfasında Proxmox VE · N guests etiketiyle görünür.

Aracı, düğümün kendi araçlarını kullanır (qm, pct, pvesm, LVM, ZFS, Ceph). Konsolda Proxmox API belirteci veya root parolası saklanmaz. Bir kümede aracıyı her düğüme kurun.

Adım 4 — Yedekleme işini oluşturun

  1. Yedekleme işleri'ni açın, bir iş oluşturun ve düğümün aracısını seçin.
  2. Sanal makineler (Proxmox VE, Hyper-V, VMware) seçin, ardından Ana bilgisayardaki tüm VM'ler (ve kapsayıcılar) — sonradan oluşturulan konuklar otomatik dahil olur — ya da tek tek konukları işaretleyin.
  3. Adım 2'deki depolama hedefini seçin.
  4. Bir zamanlama belirleyin, örneğin her iş günü 22:00'de. İşler ayrıca 15 dakikadan 12 saate kadar aralıklarla tekrarlanabilir, ayda bir çalışabilir veya başka bir işten sonra başlayabilir.
  5. Saklamayı belirleyin. Örnek: 3 en yeni, 7 günlük, 4 haftalık, 6 aylık; yaklaşık 20 geri yükleme noktasıyla yarım yıllık geçmiş tutar.

Her çalıştırmada olanlar:

  1. Geçici bir Proxmox snapshot'ı (backupzit_…) alınır; konuk çalışmaya devam eder.
  2. Her disk snapshot'tan 1 MiB'lık bloklar halinde okunur. Boş bloklar saklanmaz ve depoda zaten bulunan bloklar yeniden yüklenmez — ilk yedekten sonra ağdan yalnızca değişen veri geçer. Yine de her yedek tam bir geri yükleme noktasıdır.
  3. Snapshot kaldırılır. Konuğun yapılandırması (CPU, bellek, ağ, diskler) yedekle birlikte saklanır.

Değişmeyen veri yalnızca bir kez saklandığı için uzun saklama süresi az ek alan gerektirir.

Hangi diskler konuk çalışırken yedeklenebilir

Proxmox depolamasıÇalışan konuğun yedeği
LVM-thin (local-lvm)evet, snapshot'tan
ZFS (VM diskleri / zvol)evet, snapshot'tan
Ceph RBDevet, snapshot'tan
qcow2 ile dizin, NFS, CIFSevet, snapshot'tan
raw ile dizin, NFS, CIFS; kalın LVMhayır — konuğu durdurun veya diski taşıyın

Durdurulmuş konuklar bunların hepsinde yedeklenebilir. Backup: no (backup=0) işaretli diskler, doğrudan aktarılan fiziksel diskler ve bind mount'lar atlanır ve uyarı olarak bildirilir.

Adım 5 — Uygulama tutarlı yedekler

Bir VM içinde QEMU guest agent çalışıyor ve seçeneklerinde etkinse, Proxmox snapshot için VM'in dosya sistemlerini dondurur; böylece veritabanları ve diğer uygulamalar temiz bir durumda yakalanır. Olmadan yedek çökme tutarlıdır — elektrik kesintisinden sonraki gibi.

Debian veya Ubuntu VM'de:

apt install qemu-guest-agent
systemctl enable --now qemu-guest-agent

Windows VM'lerine VirtIO guest tools kurun. Ardından düğümde VM için aracıyı etkinleştirin (VM'in bir sonraki tam durdurulup başlatılmasından sonra geçerli olur):

qm set <vmid> --agent enabled=1

Her yedeğin çalıştırma sayfası, konuk başına hangi disklerin okunduğunu ve konuğun nasıl yakalandığını gösterir.

Adım 6 — Dış kopya tutun (3-2-1)

3-2-1 kuralı: verilerin üç kopyası, iki farklı ortamda, biri tesis dışında. Yedek kopyası türünde ikinci bir iş ekleyin; kaynak olarak Proxmox işini, hedef olarak da tesis dışında bir yeri seçin — örneğin Object Lock'lu bir S3 bucket'ı veya başka bir binadaki sağlamlaştırılmış depo.

  • Aracı mevcut yedekleri kopyalar; VM'ler yeniden okunmaz.
  • Yalnızca hedefte henüz olmayan veri, hedefin anahtarıyla şifrelenerek gönderilir.
  • Varsayılan olarak kopya, kaynak işin her yedeğinden sonra çalışır; her zamanlama mümkündür, örneğin yavaş bir hatta gecede bir kez.
  • Kopyanın kendi saklaması vardır; örneğin NAS'ta 7 günlük, bulutta 12 aylık.

VM'ler kopyadan da orijinalden olduğu gibi geri yüklenir — tüm VM'ler, tekil dosyalar ve anında kurtarma. Değiştirilemez kopyalar hakkında daha fazlası fidye yazılımı koruması bölümünde.

Adım 7 — Yedeklerin açıldığını kanıtlayın

Okunabilir bloklar bir VM'in hâlâ açıldığını kanıtlamaz. Ayarlar → Geri yükleme testleri altında Proxmox VM yedekleri için önyükleme testi'ni açın. Geri yükleme testi bu durumda en yeni yedekteki her VM'i sırayla işin düğümünde, doğrudan yedekten, yeni bir kimlikle ve orijinalle çakışmaması için ağ kartları bağlantısız olarak başlatır — ve ardından siler.

  • Bir VM, QEMU guest agent'ı zamanında yanıt verdiğinde, yani işletim sistemi açıldığında testi geçer. Guest agent'ı olmayan VM'ler bir dakika çalışmaya devam ederse geçer ve açıldı yerine çalışıyor olarak gösterilir.
  • Test sırasında düğümün bir VM daha için boş belleği olmalıdır.
  • Ayrıca bir veri denetimi (varsayılan olarak aylık) saklanan tüm verileri okur ve sağlama toplamlarına göre doğrular; böylece depolamanın kendisindeki hasar, yedeğe ihtiyaç duymadan önce bulunur.

Geri yükleme

Bir yedek çalıştırmasını açın (iş sayfasından veya Etkinlik'ten) ve Bir VM veya kapsayıcıyı geri yükle'yi seçin.

Tüm VM veya kapsayıcı

  • Aracı kurulu her düğüme geri yükleyin — başka bir kümedeki düğüm de olabilir.
  • Orijinal çalışmaya devam ederken Sonraki boş kimlikle yeni bir konuk olarak (varsayılan); kopya yeni MAC adresleri alır. Ya da konuk silindikten sonra orijinal kimlikle, isteğe bağlı olarak mevcut birinin yerine.
  • Diskler için ad ve depolamayı, konuğun geri yüklemeden sonra başlayıp başlamayacağını seçin.
  • Her geri yükleme VM'lere yeni bir nesil kimliği (vmgenid) verir; böylece Windows etki alanı denetleyicileri geri dönüşü güvenle algılar.

Anında kurtarma: VM saniyeler içinde çalışır

Normal bir geri yükleme, diskleri kopyalamak kadar sürer. Anında, yedekten çalışarak ile aracı diskleri yedekten salt okunur olarak sunar ve yazmaları yerel overlay'lere giden yeni bir VM başlatır. Memnun kaldığınızda Tamamla, VM çalışırken diskleri seçilen depolamaya taşır (qm disk move); VM'yi at VM'i ve değişikliklerini siler. VM, yedek depolaması kadar hızlıdır; bu yüzden yerel diskteki veya hızlı ağ paylaşımındaki bir depo en iyisidir. Anında kurtarma VM'ler içindir, kapsayıcılar için değil.

Tekil dosyalar

Bir yedek çalıştırmasının konuk tablosunda Dosyalara göz at'a tıklayın. Konsol diski doğrudan yedekten okur — önce hiçbir şey geri yüklenmez — ve LVM içinde de NTFS, ext2/3/4 ve XFS'e göz atmanızı sağlar. Dosyaları indirin (birden çoğunu ZIP olarak) veya herhangi bir aracıdaki bir klasöre geri yükleyin. Konsolda göz atmak, ağ depolamasında (SFTP, S3, SMB, Azure veya sağlamlaştırılmış depo) bir yedek gerektirir.

En önemli konuklar için replikalar

İşte Gelişmiş altında VM'lerin replikalarını tut, her yedekten sonra her konuğun durdurulmuş bir kopyasını başka bir düğümde veya kümede güncel tutar. Yalnızca değişen bloklar yazılır — genellikle yedek başına birkaç saniye. Bir konuk kaybolursa Replikayı başlat, geri yükleme olmadan son yedeğin verileriyle onu çalıştırır.

Komut satırından

Her şey konsol olmadan da çalışır, örneğin bir felaketten sonra düğümü yeniden kurmak için:

backupzit-agent pve list
backupzit-agent pve show    --repo ... latest
backupzit-agent pve restore --repo ... --vmid 100 --new-vmid -1 --storage local-lvm --start latest

Proxmox ana bilgisayarının kendisini yedekleme

Konuklar bir düğümün yalnızca yarısıdır: depolama tanımları, ağ, kullanıcılar, güvenlik duvarı, sertifikalar ve her VM ile kapsayıcının ayarları düğümün yapılandırmasındadır. Bunu düğümün aracısında sıradan bir Dosyalar ve klasörler işiyle, örneğin günlük olarak, /etc (/etc/pve, ağ ve /etc/hosts dahil) ve /var/lib/pve-cluster (yapılandırma veritabanı config.db) yollarıyla yedekleyin. Düğüm çalışırken veritabanının tamamen tutarlı bir kopyası için şunu Yedekten önceki komut olarak ekleyin ve /root/pve-config.db yolunu da yedekleyin:

# one-time: apt install sqlite3
sqlite3 /var/lib/pve-cluster/config.db ".backup /root/pve-config.db"

Arızalı bir düğümü yeniden kurmak için: aynı ana bilgisayar adı ve adresle aynı Proxmox VE sürümünü kurun, aracıyı kurun, /etc/network/interfaces ve /etc/hosts dosyalarını geri yükleyin, küme hizmetini durdurun (systemctl stop pve-cluster), config.db'yi /var/lib/pve-cluster içine geri yükleyin, hizmeti yeniden başlatın ve ardından konukları geri yükleyin. Bir kümede, config.db'yi geri yüklemek yerine yeniden kurulan düğümü kümeye tekrar katın.

Bilinmesi gereken sınırlar

  • Proxmox VE 7, 8 ve 9 desteklenir. XCP-ng desteklenmez.
  • ZFS alt birimlerindeki kapsayıcı diskleri henüz desteklenmez.
  • Dizin, NFS veya CIFS depolamasındaki raw diskler ve kalın LVM üzerindeki diskler yalnızca konuk durdurulduğunda yedeklenebilir.
  • Bir kümede iş, kendi düğümündeki konukları yedekler. Başka bir düğüme taşınan konuk uyarı olarak bildirilir — taşınan konukların korunmaya devam etmesi için her düğümde Ana bilgisayardaki tüm VM'ler (ve kapsayıcılar) kullanın.
  • Cloud-init sürücüleri saklanmaz; geri yüklemede yapılandırmadan yeniden oluşturulur.

Sonraki adımlar

BackupZit ücretsiz ve açık kaynaklıdır (AGPLv3), VM veya düğüm sınırı yoktur. İndirin, tüm Proxmox özelliklerine bakın veya konsoldaki kılavuzda Proxmox VE bölümünün tamamını okuyun. Sorularınızı GitHub Discussions'da sorabilirsiniz. Şirketler MaxZit'ten ticari destek alabilir (yalnızca İngilizce).