Bir arşiv çalışan bir Pritunl kurulumunu geri yükler; diğeri yalnızca onun bir görüntüsünü geri yükler. İstemci profili, ana makine yapılandırmasının kopyası ve durum dizininin tarball’ı hepsi yedek gibi görünür ve hiçbiri tek başına Pritunl’un yönettiği kuruluşları, kullanıcıları ve sunucu tanımlarını geri getirmez. Fark sahipliktedir: durumun bir kısmı bir veritabanına, bir kısmı ana makineye aittir ve bir kısmı yeniden üretilmiş çıktıdır. Yanlış katmanı seçin ve geri yükleme başlayan, dinleyen ve hiçbir şey bilmeyen bir sunucu üretir. Bu karşılaştırma üç katmanı ayırır, böylece sakladığınız arşiv kurtardığınız arızaya uyar.

İki nesne yedek gibi görünür ve yalnızca biri hizmeti geri yükler

İndirilen istemci profili bir sertifika, bir anahtar ve bir uç nokta içerir. O tek cihaz için eksiksizdir ve kurulumun kaydı olarak işe yaramaz: kuruluşlar, devre dışı kullanıcılar, sunucu rotaları ve yönetim hesapları taşımaz. Profiller klasöründen geri yükleme, hiçbir şeye kimlik doğrulayamayan istemciler verir.

Ana makine yapılandırmasının kopyası da aynı ölçüde kıs midir. /etc/pritunl.conf ana makine düzeyindeki ayarları içerir, veritabanına nasıl ulaşılacağı dahil, ve VPN nesnelerinin kendisini içermez.

Veritabanının sahip olduğu ve ana makinenin sahip olduğu şeyler

Pritunl sunucu tanımlarını, kullanıcıları, kuruluşları ve anahtarları MongoDB’de tutar. O veritabanı yetkili kontrol düzlemidir ve diskte üretilen her OpenVPN dosyası ondan türetilmiş çıktıdır. Üretilen bir dosyada doğrudan yapılan değişiklik bir sonraki yeniden üretime kadar yaşar ve sonra kaybolur, bu yüzden çalışma zamanı dosyalarını düzenlemek kalıcı bir düzeltme değildir. Aynı kural etkin rotalar ve arayüzler için de geçerlidir: kontrol düzleminin ürettiğini tanımlarlar, üretmesi gerekeni değil.

Ana makine daha küçük ama aktarılamaz bir değerler kümesi katkısında bulunur. Bunlardan biri /var/lib/pritunl/pritunl.uuid, o belirli düğümün kimliğidir.

Bu kimlik bir kümede en önemlidir. Yedek ana makine, etkin bir düğümün UUID’sinin klonu yerine kendi kaydına ihtiyaç duyar, yoksa ikisi aynı kimlik için çekişir. Her ana makine, UUID’si ve işaret ettiği veritabanı arasındaki eşlemeyi kaydedin, çünkü tek bir veritabanı dökümü hangi ana makine ayarlarının hangi makineye ait olduğunu açıklamaz. Yazılım sürümleri ve genel uç nokta adları aynı kayda aittir.

Tutarlı bir döküm alın, dizin kopyası değil

Hizmet yazarken MongoDB veri dizinini kopyalamak, kullanılabilir bir veritabanı oluşturmayabilecek dosyalar üretir. Bunun yerine veritabanının desteklediği döküm yolunu, gerçekte sahip olduğunuz topolojiye karşı çalıştırın:

mongodump --uri="mongodb://127.0.0.1:27017/pritunl" --out=/var/backups/pritunl/db
sudo tar czf /var/backups/pritunl/host.tgz /etc/pritunl.conf /var/lib/pritunl/pritunl.uuid

Tek başına bir ana makine bu basit biçime dayanır. Bir replika kümesi tutarlı bir zaman noktasına ihtiyaç duyar ve oplog tabanlı bir dökümün düz bir dökümde olmayan gereksinimleri vardır. Desteklenen yordam MongoDB sürümünüze ve topolojinize bağlıdır, bu yüzden bir veri dizininin varlığından çıkarım yapmayın. Ana makine katmanını dökümün yanında, aynı çalıştırmada, aynı zaman damgasıyla arşivleyin.

Geri yüklemeyi ihtiyaç duymadan önce prova edin

Kimsenin geri yüklemediği bir yedek bir hipotezdir. Hizmeti yalıtılmış bir ağda kurun, dökümü geri yükleyin ve ana makine dosyalarını yerine koyun:

mongorestore --uri="mongodb://127.0.0.1:27017" --drop /var/backups/pritunl/db
sudo tar xzf /var/backups/pritunl/host.tgz -C /

Ardından süreci değil nesneleri doğrulayın: oturum açın, kuruluşların ve kullanıcıların mevcut olduğunu onaylayın ve tanıdığınız bir sunucu tanımına karşı bir test istemcisi başlatın. Geri yüklenen ana makinenin üretim uç noktasını duyurmasını veya adresler ve kimlikler bilinçli olana kadar gerçek bağlantıları kabul etmesini engelleyin. Burası ayrıca arşivin yalnızca arızalı makinede yaşayan kimlik bilgilerine ihtiyaç duyduğunu keşfettiğiniz yerdir, bu yüzden kurtarma kimlik bilgilerini bağımsız bir yerde saklayın. Yeni kaybettiğiniz ana makineye bağlı bir geri yükleme, geri yükleme planı değildir.

Son olarak, eski bir anlık görüntünün eski kararları geri yüklediğini unutmayın. Bir yönetici döküm alındıktan sonra bir kimliği devre dışı bıraktıysa, geri yükleme onu yeniden etkinleştirir. Kurtarma sonrası uzlaştırma prosedüre aittir, sonradan akla gelene değil.

İlgili makaleler