Bir sunucuyu yeni donanıma veya bulut ortamına taşımak, ya da düzenli yedekleme stratejisi kurmak; doğru araç ve yöntemle oldukça öngörülebilir bir süreçtir. Bu yazıda, kurumsal ortamda en çok güvendiğim iki mekanizmayı paylaşıyorum: rsync ve snapshot.
rsync: Neden Basit kopyalamadan Daha İyi?
rsync, sadece değişen bloğu aktardığı için (delta transfer algoritması) büyük veri setlerinde klasik cp veya scp‘ye göre çok daha verimlidir. Ayrıca kesinti durumunda kaldığı yerden devam edebilir.
rsync -avz --progress /kaynak/ kullanici@hedef:/hedef/ # -a: arşiv modu (izinleri, zaman damgalarını korur) # -v: ayrıntılı çıktı # -z: sıkıştırma # --progress: ilerleme durumunu gösterir
Sunucu Taşımada Aşamalı rsync Stratejisi
Büyük veri hacimli bir sunucu taşımasında (örn. birkaç TB’lık dosya sunucusu), veriyi tek seferde kopyalamak yerine aşamalı senkronizasyon uygularım:
- İlk senkronizasyon: Sistem canlı çalışırken büyük veri kütlesini önceden aktar (kesinti yok, uzun sürebilir)
- Fark senkronizasyonu: Bakım penceresinde, sadece ilk aktarımdan sonra değişen dosyaları tekrar rsync ile senkronize et (çok daha hızlı)
- Kesme (cutover): Kısa bir kesinti penceresinde son bir rsync daha çalıştırıp hizmeti yeni sunucuya yönlendir
Bu yaklaşım, kesinti süresini saatlerden dakikalara indirir.
–dry-run: Güvenlik Ağınız
Özellikle silme işlemi içeren (--delete) rsync komutlarını çalıştırmadan önce mutlaka --dry-run ile test ederim:
rsync -avz --delete --dry-run /kaynak/ /hedef/ # Gerçekte hiçbir değişiklik yapmadan, ne olacağını gösterir
Snapshot: Anlık Geri Dönüş Noktası
rsync veri taşımak için idealken, snapshot mekanizmaları (LVM snapshot, ZFS/Btrfs snapshot, sanallaştırma platformu snapshot’ları) belirli bir andaki durumu dondurup gerektiğinde anında geri dönebilmek için kritik. Özellikle riskli bir değişiklik (büyük güncelleme, yapılandırma değişikliği) öncesi snapshot almak, “bir şeyler ters giderse” diye standart bir refleks olmalı.
Yedekleme Stratejisinde 3-2-1 Kuralı
Kurumsal ortamda uyguladığım temel prensip: en az 3 kopya veri, 2 farklı ortam/medya türünde saklanmalı, bunlardan 1 tanesi fiziksel olarak farklı bir lokasyonda (offsite/bulut) olmalı. Tek bir yedekleme noktasına güvenmek, felaket senaryolarında en büyük risk faktörüdür.
Sonuç
rsync ve snapshot, birbirini tamamlayan iki farklı güvenlik ağı sağlar: rsync veriyi taşır ve senkronize eder, snapshot ise belirli bir zamana anında geri dönme imkânı verir. İkisini birlikte, planlı bir stratejiyle kullanmak, sunucu taşıma ve yedekleme süreçlerindeki riski büyük ölçüde azaltır.