Veeam HouseKeeping

Housekeeping, Veeam Backup & Replication’ın yedekleme dosyalarının yaşam döngüsünü yöneten, otomatik, arka planda çalışan ve kullanıcıya görünmeyen bir bakım sürecidir.

Bu süreç, yedekleme zincirini temizler, eski restore noktalarını siler, dosyaları birleştirir, bütünlüğü doğrular, boş alanları geri kazanır ve depolama sistemini optimize eder.

Veeam’in resmi belgelerinde şu şekilde tanımlanır:

“Housekeeping, yedekleme dosyalarının düzenli olarak temizlenmesi, birleştirilmesi ve doğrulanması için kullanılan arka plan mekanizmasıdır.”

Veeam, genellikle forward incremental veya reverse incremental yedekleme stratejileri kullanır. Bu stratejiler, zaman içinde şu sorunlara yol açar:

  • Yedekleme zinciri uzar
  • Depolama alanı gereksiz yere dolar
  • Restore performansı düşer
  • Sessiz veri bozulmaları (bit flip) fark edilmez
  • Silinen sanal makinelerin blokları hâlâ diskte kalır

Housekeeping, bu sorunları çözmek için vardır. Amacı, yedekleme sisteminin sürdürülebilir, güvenilir ve performanslı kalmasını sağlamaktır.

Housekeeping Ne Zaman Çalışır?

Housekeeping, tamamen otomatik ve kullanıcı müdahalesi olmadan çalışır. Varsayılan zamanlamalar şöyledir:

  • Background Retention: Her 24 saatte bir, gece 00:30’da
  • Health Check: Aylık, genellikle ilk Cuma gecesi
  • Compact Full: Her merge işleminden hemen sonra
  • Space Reclamation: Sürekli, arka planda

Bu işlemler, yedekleme işleri çalışıyorken kesintiye uğratılmaz. Eğer bir yedekleme aktifse, housekeeping beklemeye alır ve iş bittikten sonra devam eder.

Arka Planda Tam Olarak Neler Olur?

Housekeeping, birden fazla alt süreçten oluşan, katmanlı, otonom ve son derece akıllı bir bakım sistemidir. Şimdi bu süreci adım adım, mikro seviye teknik detaylarla, Veeam’in iç işleyişine inerek anlatıyoruz.


1. Tetikleme (Trigger)

Veeam Backup Service (VeeamBackupSvc.exe), her 4 saatte bir housekeeping kontrol döngüsü başlatır. Gece 00:30 olduğunda, Background Retention resmi olarak devreye girer.

2. Metadata Analizi

Sistem, Configuration Database’ten (SQL Server veya PostgreSQL) job yapılandırmalarını okur.

  • Ardından, her job için mevcut yedek dosyaları listelenir.
  • Bu sorgular, retention politikası, GFS (Grandfather-Father-Son) ayarları ve mevcut restore point sayısı gibi kritik bilgileri toplar.

3. Zincir Tespiti (Chain Analyzer)

Bu aşamada, fiziksel dosya sistemi taranır:

  • Depolama konumu: D:\Backup\SQL Servers Backup\
  • Dosya türleri:
    • .vbk → Full backup (tam yedek)
    • .vib → Incremental backup (fark yedek)
    • .vbm → Metadata (zincir haritası, CBT verisi, hash’ler

.vbm dosyası, her restore point’in:

  • Hangi blokları içerdiğini,
  • SHA1 hash’lerini,
  • CBT (Changed Block Tracking) durumunu,
  • GFS etiketlerini tutar

4. Retention Uygulaması

Retention = 14 nokta, mevcut = 15 noktaRetention’a doldu. ( Forward Incremental Senaryosu )

Karar Motoru:

  1. En eski incremental tespit edilir: VBK_2025-10-09.vib
  2. Merge nokta sayısı hesaplanır:
    • İlk full yedek ile en eski incremental yedek merge edilir.
    • En eski incremental silinir.

5. Compact Full – Boşluk Temizliği

Merge sonrası, eski .vbk dosyasında silinen VM’lere ait bloklar kalır.

Compact Süreci:

  1. Yeni geçici dosya: VBK_2025-10-16.vbk.compact.tmp (örnek isimlendirme)
  2. Sadece kullanımdaki bloklar kopyalanır
  3. Eski dosya silinir
  4. Yeni dosya adlandırılır: VBK_2025-10-16.vbk (örnek isimlendirme)

6. Health Check – Bütünlük Doğrulaması

Aylık, ilk Cuma gecesi:

  1. Tüm .vbk ve .vrb dosyaları salt okunur açılır
  2. Her blok için:
    • CRC32 hesaplanır
    • SHA1 hash hesaplanır
    • Veritabanındaki ([Backup.Model.Blocks]) hash ile karşılaştırılır
  3. Sonuç:
    • Eşleşmezse
      • En yakın sağlam noktadan onarım
      • Başarısızsa → “Corrupted” işaretlemesi

7. Space Reclamation – Boş Alan Geri Kazanımı

Sürekli arka planda:

  1. CBT verisi temizliği
    • Silinen VM’lerin .ctk dosyaları kaldırılır
  2. Deduplication DB temizliği
    • Veeam.Agent.exe → appliance’e reclaim komutu
  3. ReFS/XFS fast clone
    • Silinen bloklar anında serbest bırakılır

8. Repository Bakımı

Depolamaİşlem
ReFS/XFSMetadata sync, blok serbest bırakma
Object StorageImmutability varsa silme bekletilir
SOBRTier’lar arası taşıma, extent cleanup
Dedupe ApplianceMaintenance mode sinyali

Deduplication Appliance ve Maintenance Mode Sinyali: Veeam’de Ne Anlama Gelir?

Önceki açıklamalarımda bahsettiğim “Dedupe Appliance-Maintenance mode sinyali”, Veeam Backup & Replication’ın deduplication (veri tekrarını önleme) cihazlarıyla (örneğin, Dell EMC Data Domain, ExaGrid, HPE StoreOnce gibi) entegrasyonunda kullanılan bir uyumluluk mekanizmasıdır. Bu, housekeeping (temizlik) işlemleri sırasında çakışmaları önlemek için tasarlanmıştır. Şimdi bunu adım adım, detaylı bir şekilde açıklayalım.

1. Deduplication Appliance Nedir?

  • Dedupe Appliance: Bu, yedekleme verilerini tekrar eden blokları tespit edip tek seferde saklayan özel depolama cihazlarıdır. Veeam, bu cihazları backup repository olarak kullanır.
  • Örnek Cihazlar (Veeam’in entegre olduğu):
    • Dell EMC Data Domain
    • ExaGrid
    • HPE StoreOnce
    • Quantum DXi
    • Fujitsu ETERNUS CS800
    • Infinidat InfiniGuard
  • Avantajı: Depolama alanını %90’a kadar azaltır, ama performans açısından hassastır — özellikle okuma/yazma işlemlerinde yavaş olabilir.
  • Veeam Entegrasyonu: Veeam, bu cihazlara doğrudan bağlanır ve native API’ler üzerinden veri gönderir. Bu sayede, Veeam’in kendi compression/dedupe’si ile cihazın dedupe’si çakışmaz.

2. Veeam’den “Maintenance Mode Sinyali” Ne Demek?

  • Sinyal: Veeam, housekeeping sırasında (örneğin, merge, compact full, health check gibi işlemler) dedupe appliance’e bir API çağrısı veya sinyal gönderir. Bu, cihazı geçici olarak maintenance mode’a sokar.
  • Amaç: Veeam’in arka plan işlemleri (housekeeping) ile cihazın kendi bakımının çakışmasını önlemek.
    • Örnek: Housekeeping sırasında Veeam, eski yedekleri silerken veya merge yaparken yoğun okuma yapar. Bu sırada cihazın kendi dedupe optimizasyonu çalışırsa, performans %50’ye kadar düşer.
    • Sinyal Gönderme: Veeam.Agent.exe (transport agent) üzerinden gerçekleşir. Veeam, cihazın API’sine “maintenance mode” komutu yollar → Cihaz, trafiği optimize eder (örneğin, okuma queue’sunu kısaltır).
  • Entegre Cihazlarda Otomatik: Veeam, entegre appliance’lar (yukarıdaki liste) için bu sinyali otomatik gönderir. Non-entegre cihazlarda manuel ayar gerekebilir.

Leave a Reply

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir