Drupal varukoopia taastetest — miks „varukoopia olemas“ ei piisa
🎧 Kuula kõiki artikleid järjest
Varukoopia väärtus selgub alles siis, kui seda on vaja kasutada. Taastetest aitab veenduda, et kriitilisel hetkel on võimalik veeb päriselt tööle saada.
Varukoopia olemasolu ei tähenda veel turvalisust
Peaaegu kõigil veebidel on mingisugune varunduslahendus.
Hostingupakkuja teeb automaatseid koopiaid, serveris töötab varundusskript või kasutatakse spetsiaalset varundusteenust.
Probleem on selles, et varukoopia olemasolu ei tõesta veel midagi.
Oluline küsimus on:
> Kas seda varukoopiat on võimalik päriselt taastada?
Varukoopia, mida pole kunagi taastatud, on sisuliselt testimata hüpotees.
Alles taastetest näitab, kas kriitilisel hetkel on võimalik veeb tegelikult tööle saada.
Millest Drupal varukoopia koosneb?
Täielik Drupal varukoopia sisaldab vähemalt kahte osa.
Andmebaas
Andmebaasis asuvad:
- sisu;
- kasutajad;
- õigused;
- konfiguratsioon;
- vormide andmed;
- süsteemiseaded.
Ilma andmebaasita ei ole veeb kasutatav.
Failid
Drupal salvestab üleslaetud failid tavaliselt kataloogi:
sites/default/files/Seal asuvad:
- pildid;
- dokumendid;
- meediafailid;
- ekspordid.
Praktikas unustatakse failide varundamine üllatavalt sageli.
Kood ja konfiguratsioon
Lisaks tasub säilitada:
composer.jsoncomposer.locksettings.php- serverikonfiguratsioon
- CI/CD konfiguratsioonid
Need ei pruugi olla vajalikud iga taastamise puhul, kuid muudavad süsteemi taastamise märksa lihtsamaks.
Miks taastetesti teha?
Taastetest aitab kontrollida:
- kas varukoopia on täielik;
- kas failid on loetavad;
- kas andmebaas on terve;
- kui kaua taastamine aega võtab;
- kas meeskond teab taastamisprotsessi.
Sageli avastatakse probleemid just taastetesti käigus.
Näiteks:
- andmebaasifail on vigane;
- failid puuduvad;
- varukoopiad on liiga vanad;
- taastamisjuhend puudub;
- vajalikud ligipääsud pole teada.
Selliseid probleeme on parem avastada kontrollitud olukorras kui päris intsidendi ajal.
Kuidas taastetest välja näeb?
1. Loo eraldi keskkond
Taastetesti ei tehta kunagi tootmiskeskkonnas.
Sobivad näiteks:
- testkeskkond;
- arenduskeskkond;
- ajutine server;
- kohalik DDEV keskkond.
Eesmärk on taastada veeb võimalikult sarnasesse keskkonda ilma tootmist mõjutamata.
2. Taasta andmebaas
Näiteks:
mysql -u drupal_user -p drupal_db < backup.sqlTaastamise järel kontrollitakse, et:
- tabelid on olemas;
- andmed on loetavad;
- Drupal käivitub.
3. Taasta failid
Näiteks:
tar -xzf files_backup.tar.gzKontrolli:
- kas pildid kuvatakse;
- kas dokumendid avanevad;
- kas meedia viited töötavad.
4. Kontrolli kriitilised töövood
Taastatud keskkonnas võiks läbi testida vähemalt:
- avalehe;
- sisselogimise;
- kontaktivormid;
- otsingu;
- e-poe ostuprotsessi;
- olulised integratsioonid.
Kui need töötavad, võib varukoopiat pidada kasutatavaks.
Levinumad probleemid taastamisel
Puuduvad failid
Andmebaas taastub edukalt, kuid:
- pildid ei avane;
- dokumendid puuduvad;
- meedia on katki.
Põhjuseks on tavaliselt puudulik failide varundus.
Vigane andmebaas
Varukoopia loomine katkestati või kettaruum sai otsa.
Tulemuseks on SQL-fail, mida ei saa taastada.
Kood ei vasta andmetele
Andmebaas on uuem kui kood või vastupidi.
Sellisel juhul võib Drupal anda vigu isegi siis, kui taastamine tehniliselt õnnestus.
Taastamine võtab liiga kaua aega
Taastetest näitab sageli ka seda, et organisatsioon ei tea tegelikult, kui kaua taastumine aega võtab.
See on oluline sisend talitluspidevuse planeerimiseks.
Kui sageli taastetesti teha?
Üldine soovitus on vähemalt kord kvartalis.
Lisaks tasub taastetesti teha:
- pärast suuremaid Drupal uuendusi;
- pärast infrastruktuuri muudatusi;
- enne suuremaid migratsioone;
- pärast varunduslahenduse vahetamist.
Mida kriitilisem süsteem, seda sagedamini tuleks taastamist kontrollida.
Hea varunduse põhimõtted
Kasuta 3-2-1 reeglit
Hoia:
- vähemalt 3 koopiat;
- vähemalt 2 erineval andmekandjal;
- vähemalt 1 koopiat teises asukohas.
Hoia varukoopiad eraldi serveris
Kui tootmisserver kompromiteeritakse või hävib, peavad varukoopiad jääma alles.
Krüpteeri varukoopiad
Varukoopiad sisaldavad sageli:
- kasutajaandmeid;
- kontaktandmeid;
- äriliselt tundlikku teavet.
Need vajavad sama kaitset kui tootmisandmed.
Kontrolli säilitusaegu
Liiga lühike säilitusaeg võib muuta taastamise võimatuks, kui probleem avastatakse alles nädalaid hiljem.
Kokkuvõte
Varukoopia eesmärk ei ole lihtsalt olemas olla.
Selle eesmärk on võimaldada süsteem taastada.
Kui varukoopiat pole kunagi taastatud, ei ole võimalik kindlalt teada, kas see kriitilisel hetkel töötab.
Seetõttu peaks taastetest olema regulaarne osa iga Drupal veebiplatvormi hooldusest.
Varukoopia annab turvatunde. Taastetest annab kindluse.

Vajad Drupal abi?
Kui artikkel puudutab sinu olukorda, ei pea kõike lõpuni lugema. Sinuga suhtleb päris inimene ja aitab järgmise sammuni jõuda.