Jedna arhiva obnavlja radnu Pritunl instalaciju; druga obnavlja samo njezinu sliku. Profil klijenta, kopija konfiguracije hosta i tarball direktorija stanja svi izgledaju kao sigurnosne kopije, a nijedna od njih sama ne vraća organizacije, korisnike i definicije poslužitelja kojima upravlja Pritunl. Razlika je u vlasništvu: dio stanja pripada bazi podataka, dio hostu, a dio je ponovno generirani izlaz. Odaberite pogrešan sloj i obnova stvara poslužitelj koji se pokreće, sluša i ne zna ništa. Ova usporedba razdvaja tri sloja kako bi arhiva koju čuvate odgovarala kvaru iz kojeg se oporavljate.

Dva objekta izgledaju kao sigurnosne kopije i samo jedan obnavlja uslugu

Preuzeti profil klijenta sadrži certifikat, ključ i krajnju točku. Potpun je za taj jedan uređaj i beskorisan kao zapis o instalaciji: ne nosi organizacije, onemogućene korisnike, rute poslužitelja ni administrativne račune. Obnova iz mape profila daje klijente koji se ne mogu autentificirati ni prema čemu.

Kopija konfiguracije hosta jednako je djelomična. /etc/pritunl.conf sadrži postavke na razini hosta, uključujući kako doći do baze podataka, i ne sadrži same VPN objekte.

Što posjeduje baza podataka, a što host

Pritunl čuva definicije poslužitelja, korisnike, organizacije i ključeve u MongoDB-u. Ta baza podataka autoritativna je upravljačka ravnina, a svaka generirana OpenVPN datoteka na disku izlaz je izveden iz nje. Promjena napravljena izravno u generiranoj datoteci preživljava do sljedeće regeneracije i zatim nestaje, zato uređivanje izvršnih datoteka nije trajni ispravak. Isto pravilo vrijedi za efektivne rute i sučelja: opisuju što je upravljačka ravnina proizvela, a ne što bi trebala proizvesti.

Host pridonosi manjim, ali neprenosivim skupom vrijednosti. Jedna od njih je /var/lib/pritunl/pritunl.uuid, identitet tog određenog čvora.

Taj je identitet najvažniji u klasteru. Zamjenski host treba vlastitu registraciju umjesto klona UUID-a aktivnog čvora, inače se dvoje bore za isti identitet. Zabilježite mapiranje između svakog hosta, njegova UUID-a i baze podataka na koju pokazuje, jer jedan ispis baze podataka ne opisuje koje su postavke hosta pripadale kojem stroju. Verzije softvera i javna imena krajnjih točaka pripadaju istom zapisu.

Napravite dosljedan ispis, a ne kopiju direktorija

Kopiranje direktorija podataka MongoDB dok usluga piše stvara datoteke koje možda ne tvore upotrebljivu bazu podataka. Upotrijebite umjesto toga podržanu putanju ispisa baze podataka, pokrenutu prema topologiji koju stvarno imate:

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

Samostalni host podnosi taj jednostavni oblik. Skup replika treba dosljednu točku u vremenu, a ispis temeljen na oplogu ima zahtjeve koje obični ispis nema. Podržani postupak ovisi o vašoj verziji i topologiji MongoDB-a, zato ga ne zaključujte iz prisutnosti direktorija podataka. Arhivirajte sloj hosta uz ispis, u istom izvršavanju, s istom vremenskom oznakom.

Vježbajte obnovu prije nego što vam zatreba

Sigurnosna kopija koju nitko nije obnovio jest hipoteza. Izgradite uslugu u izoliranoj mreži, obnovite ispis i vratite datoteke hosta na mjesto:

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

Zatim provjerite objekte, a ne postupak: prijavite se, potvrdite da su organizacije i korisnici prisutni i pokrenite jednog testnog klijenta prema definiciji poslužitelja koju prepoznajete. Spriječite obnovljeni host da oglašava produkcijsku krajnju točku ili prihvaća stvarne veze dok adrese i identiteti nisu namjerni. Ovdje također otkrivate da arhiva treba vjerodajnice koje su živjele samo na pokvarenom stroju, zato pohranite vjerodajnice za oporavak na neovisno mjesto. Obnova koja ovisi o hostu koji ste upravo izgubili nije plan obnove.

Naposljetku, zapamtite da stari snimak obnavlja stare odluke. Ako je administrator onemogućio identitet nakon što je ispis napravljen, obnova ga ponovno omogućuje. Usklađivanje nakon oporavka pripada postupku, a ne naknadnoj misli.

Povezani članci