💾
vps yedekleme stratejileri

VPS Yedekleme Stratejileri - Kapsamlı Rehber

Verilerinizi güvende tutmak için VPS yedekleme yöntemleri. Otomatik yedekleme, rsync, mysqldump ve bulut yedekleme çözümleri.

Yedekleme Uzmanı19 Aralık 20249 dk

Neden Yedekleme Gereklidir?

VPS sunucunuzda barındırdığınız veriler çok değerlidir. Donanım arızaları, insan hataları, siber saldırılar veya doğal afetler gibi durumlar verilerinizin kaybolmasına neden olabilir. Düzenli yedekleme, bu risklere karşı en etkili koruma yöntemidir.

⚠️ Kritik: Yedekleme yapmayan işletmelerin %60'ı veri kaybından sonraki 6 ay içinde kapanmaktadır. Yedekleme lüks değil, zorunluluktur!

3-2-1 Yedekleme Kuralı

Profesyonel yedekleme stratejisinin altın kuralı:

3

Toplam 3 Kopya

Orijinal + 2 yedek kopya

2

Farklı Medya

2 farklı depolama türü

1

Offsite Yedek

1 kopya uzak lokasyonda

1. Dosya Sistemi Yedekleme

Web dosyalarınızı ve yapılandırmalarınızı yedeklemenin farklı yöntemleri:

# Rsync ile etkili yedekleme
rsync -avz --delete /var/www/ /backup/www/

# Uzak sunucuya yedekleme
rsync -avz --delete /var/www/ user@backup-server:/backups/www/

# Tar ile sıkıştırılmış arşiv
tar -czf backup-$(date +%Y%m%d).tar.gz /var/www/

# Arşivi geri yükleme
tar -xzf backup-20241201.tar.gz -C /restore/

2. Veritabanı Yedekleme

MySQL/MariaDB ve PostgreSQL için yedekleme komutları:

🐬 MySQL/MariaDB

# Tek veritabanı
mysqldump -u root -p dbname > db_backup.sql

# Tüm veritabanları
mysqldump -u root -p --all-databases > all_db.sql

# Geri yükleme
mysql -u root -p dbname < db_backup.sql

🐘 PostgreSQL

# Tek veritabanı
pg_dump dbname > db_backup.sql

# Tüm veritabanları
pg_dumpall > all_db_backup.sql

# Geri yükleme
psql dbname < db_backup.sql

3. Otomatik Yedekleme Scripti

Kapsamlı yedekleme scripti örneği:

🤖 Yedekleme Scripti (/usr/local/bin/backup.sh)

#!/bin/bash

# Değişkenler
BACKUP_DIR="/backups"
DATE=$(date +%Y%m%d_%H%M%S)
MYSQL_USER="root"
MYSQL_PASS="your_password"
RETENTION_DAYS=30

# Yedekleme dizini oluştur
mkdir -p $BACKUP_DIR/$DATE

# Web dosyalarını yedekle
tar -czf $BACKUP_DIR/$DATE/www.tar.gz /var/www/

# Veritabanlarını yedekle
mysqldump -u $MYSQL_USER -p$MYSQL_PASS --all-databases > $BACKUP_DIR/$DATE/databases.sql

# Sistem yapılandırmalarını yedekle
tar -czf $BACKUP_DIR/$DATE/etc.tar.gz /etc/

# Eski yedekleri sil
find $BACKUP_DIR -type d -mtime +$RETENTION_DAYS -exec rm -rf \;

# E-posta bildirimi
echo "Backup completed: $DATE" | mail -s "Backup Status" [email protected]

4. Crontab ile Otomatik Çalıştırma

Yedekleme scriptinizi otomatik olarak çalıştırın:

# Crontab düzenleme
crontab -e

# Günlük yedekleme (her gece 02:00)
0 2 * * * /usr/local/bin/backup.sh

# Haftalık tam yedekleme (Pazar 03:00)
0 3 * * 0 /usr/local/bin/full_backup.sh

# Aylık arşiv yedekleme (ayın 1'i 04:00)
0 4 1 * * /usr/local/bin/archive_backup.sh

5. Bulut Yedekleme Çözümleri

Offsite yedekleme için bulut depolama seçenekleri:

☁️ AWS S3 Yedekleme

# AWS CLI kurulumu
apt install awscli -y
aws configure

# S3'e yükleme
aws s3 cp backup.tar.gz s3://my-bucket/

# Klasör senkronizasyonu
aws s3 sync /backups/ s3://my-bucket/backups/

📦 Rclone Multi-Cloud

# Rclone kurulumu
curl https://rclone.org/install.sh | sudo bash

# Yapılandırma
rclone config

# Google Drive'a yedekleme
rclone copy /backups/ gdrive:backups/

6. Yedekleme Doğrulama

Yedeklerinizin bütünlüğünü kontrol edin:

# Tar arşivi kontrol
tar -tzf backup.tar.gz > /dev/null && echo "OK" || echo "CORRUPTED"

# MD5 checksum oluştur
md5sum backup.tar.gz > backup.tar.gz.md5

# Checksum doğrulama
md5sum -c backup.tar.gz.md5

# MySQL dump kontrol
mysql -u root -p --execute="SET sql_mode=''; SOURCE backup.sql;" test_db

7. Disaster Recovery Planı

Felaket durumunda hızlı kurtarma için hazırlıklı olun:

🚨 Acil Durum Prosedürü

  1. 1. Durum Değerlendirmesi: Veri kaybının boyutunu ve nedenini belirleyin
  2. 2. En Son Yedek Tespiti: En güncel ve sağlam yedeği bulun
  3. 3. Test Ortamı: Yedeği önce test ortamında geri yükleyin
  4. 4. Bütünlük Kontrolü: Geri yüklenen verilerin doğruluğunu kontrol edin
  5. 5. Prodüksiyon Geri Yükleme: Onaylandıktan sonra canlı sisteme uygulayın
  6. 6. İzleme ve Test: Sistem stabilitesini takip edin

8. Yedekleme İzleme

Yedekleme süreçlerinizi takip edin:

# Yedekleme log dosyası
echo "$(date): Backup started" >> /var/log/backup.log

# E-posta bildirimi scripti
#!/bin/bash
BACKUP_STATUS=$?
if [ $BACKUP_STATUS -eq 0 ]; then
echo "Backup successful" | mail -s "✅ Backup OK" [email protected]
else
echo "Backup failed!" | mail -s "❌ Backup FAILED" [email protected]
fi

Yedekleme Kontrol Listesi

📋 Yedekleme Kontrolleri

Günlük Kontroller
  • ☐ Yedekleme tamamlandı mı?
  • ☐ Hata mesajı var mı?
  • ☐ Dosya boyutu normal mi?
  • ☐ Yedekleme süresi normal mi?
  • ☐ E-posta bildirimi geldi mi?
Haftalık Kontroller
  • ☐ Tam yedekleme yapıldı mı?
  • ☐ Yedekleme doğrulandı mı?
  • ☐ Eski yedekler temizlendi mi?
  • ☐ Recovery testi yapıldı mı?
  • ☐ Bulut yedekleme senkron mu?

En İyi Uygulamalar

✅ Yapılması Gerekenler

  • • Düzenli yedekleme programı oluşturun
  • • 3-2-1 kuralını uygulayın
  • • Yedekleri düzenli test edin
  • • Şifreli yedekleme kullanın
  • • Yedekleme loglarını izleyin
  • • Recovery prosedürlerini dokümante edin

❌ Yapılmaması Gerekenler

  • • Tek lokasyonda yedek saklamayın
  • • Yedekleri test etmeden bırakmayın
  • • Eski yedekleri hemen silmeyin
  • • Şifresiz yedek oluşturmayın
  • • Yedekleme hatalarını görmezden gelmeyin
  • • Manuel yedeklemeye güvenmeyin

Sonuç

VPS yedekleme stratejiniz, işinizin sürekliliği için kritik öneme sahiptir. Bu rehberdeki yöntemleri kullanarak kapsamlı ve güvenilir bir yedekleme sistemi kurabilirsiniz. Unutmayın: Yedekleme yapmak yeterli değil, düzenli olarak test etmek de şarttır. En iyi yedekleme, hiç kullanmadığınız yedeklemedir, ancak en kötü yedekleme, hiç yapmadığınız yedeklemedir!

Otomatik Yedekleme ile VPS! 💾

Yedekleme özelliği dahil VPS paketlerimizi inceleyin, verileriniz güvende olsun!