DBAtlas · Veritabanı operasyon atlası

Redis yedek ve geri yükleme (RDB, AOF, replica ve cluster)

RedisSeviye: OrtaSüre: 30–60 dk

Kurulu bir Redis ya da Valkey (tek instance, Sentinel'li master/replica ya da Redis Cluster) için yedekleme düzenini kurar ve yedekten geri dönüşü anlatır. RDB (save kuralı, BGSAVE, LASTSAVE, dump.rdb kopyası) ve AOF (BGREWRITEAOF, 7.x çok dosyalı appendonlydir) yedekleri, replica'dan yedek, Cluster'da tüm master'ların yedeği, geçici instance'ta test restore, AOF önceliği tuzağına düşmeden yerinde geri yükleme ve systemd timer / cron ile saklama süreli, uzak kopyalı zamanlanmış yedek adım adım yapılır; sonunda düzenli çalışan ve geri yüklenebildiği sınanmış bir yedek elde edilir. Replikasyon (Sentinel, Cluster) yedeğin yerine geçmez: yanlışlıkla silinen veri tüm replica'lara yayılır. Kurulum ve günlük işletim ayrı Redis rehberlerindedir.

Yapı: Tek instance, replica ya da Redis Cluster sunucusu (Redis 7.2 / 8.x, Valkey)

Başlamadan önce

  • … çalışıyor ve yapılandırma dosyası … içinde requirepass tanımlı (parola bu dosyadan okunur). Kurulum DBAtlas …Redis Cluster…Redis Sentinel… rehberindeki yollarla yapılmış olmalı; farklıysa yolları uyarlayın.
  • … veri diskinden ayrı bir diskte ya da ağ paylaşımında; boş alan en az bellekteki veri boyutunun (used_memory) saklama süresi kadar katı. Ayrıca veri dizininde BGSAVE için yeni RDB'nin yazılacağı kadar boş alan olmalı.
  • BGSAVE/BGREWRITEAOF fork ile çalışır: yazma yoğunluğuna göre (copy-on-write) ek bellek gerekir. vm.overcommit_memory = 1 ayarlı olmalı; aksi halde fork "Can't save in background: fork: Cannot allocate memory" ile başarısız olur.
  • Yedekte kullanılan komutlar (CONFIG, BGSAVE, LASTSAVE, BGREWRITEAOF…, CLUSTER, SYNC…) rename-command ile kapatılmamış ve parolanın sahibi kullanıcı (default) bunları çalıştırabiliyor.
  • Root ya da sudo yetkisi var. Yerinde geri yükleme yapılacaksa bakım penceresi alındı ve uygulama ekibi bilgilendirildi.

Rehberin aşamaları

  • Mevcut kalıcılık ayarları — Kalıcılık ve rol bilgisini incele · RDB save kuralını ayarla · AOF'u canlıda aç · Yedek dizinini hazırla
  • RDB yedeği — Replica'nın güncel olduğunu doğrula · BGSAVE ile güncel RDB al · dump.rdb'yi yedek dizinine kopyala ve doğrula · Cluster master'larını listele · Her master'dan RDB al (--rdb)
  • AOF yedeği — AOF'u sıkıştır (BGREWRITEAOF) · appendonlydir'i yedekle · AOF dosyalarını doğrula
  • Test restore (geçici instance) — RDB'yi geçici instance'ta aç · Kaynakla karşılaştır ve geçici instance'ı kapat · AOF yedeğini geçici instance'ta aç
  • Yerinde geri yükleme — Servisi durdur ve mevcut dosyaları kenara al · RDB yedeğini yerine koy · AOF'u geçici olarak kapat · AOF yedeğini yerine koy · Servisi başlat ve veriyi doğrula · AOF'u canlıda yeniden aç …
  • Zamanlanmış yedek ve saklama — Yedek betiğini yaz · Betiği çalıştırılabilir yap · Uzak sunucuya SSH erişimini hazırla · systemd service ve timer'ı oluştur · Zamanlanmış yedeği elle tetikle ve doğrula · cron görevini yaz …
  • İzleme — Kalıcılık ve yedek yaşını izle · Düzenli geri dönüş tatbikatı
Ortamına göre adım adım planı aç →