Mine sisu juurde

Küpsiste seaded

Vali iga liigi kohta, milliseid küpsiseid lubad. Oma valikut saad alati muuta iga lehe allosas oleva lingi „Küpsiste seaded“ kaudu. Privaatsuspoliitika

Vajalikud

Alati sees

Vajalikud sisselogimiseks, ostukorvi säilitamiseks ja sinu valikute meelespidamiseks. Need on alati sees.

Millised küpsised?
  • weboke_sessie, weboke_klant, weboke_remember: sinu seanss ja sisselogituks jäämine
  • weboke_basket: sinu ostukorv
  • wkBtwIncl: hindade näitamine koos käibemaksuga või ilma
  • wok_cookies: sinu küpsisevalik, 12 kuud

Mõõdab, milline reklaam viib külastuse või tellimuseni, et me ei maksaks reklaamide eest, mis midagi ei anna.

Millised küpsised?
  • Google Ads Google Tag Manageri kaudu (_gcl_au, _gcl_aw), kuni 90 päeva
  • OpenAI Ads, reklaamid ChatGPT-s
  • wok_aff: millise partneri kaudu meie juurde jõudsid (partnerprogramm), 60 päeva

4,6

Riik ja keel

Igal riigil on oma sait, selle riigi hindade ja käibemaksuga.

Vaata

Varundusplaan sinu serverile

Moodul 8: Varukoopiad ja jälgimine · Lugemisaeg: 11 minutit

Õpieesmärk: Pärast seda õppetundi oskad oma serverile varundusplaani koostada: mida hoiad, kus, kui tihti ja kui kaua ning kuidas veenduda, et taastamine töötab.

Põhimõisted: reegel 3-2-1, hetktõmmis (snapshot), teenusepakkuja varukoopia, oma varukoopia väljaspool teenusepakkujat, RPO, RTO, andmebaasi tõmmis (mariadb-dump, pg_dump), seadistus kaustas /etc, Dockeri köited (volumes), krüpteerimine, lunavara, append-only, taastamise test

Miks plaan, mitte lihtsalt "varukoopia ju on olemas"?

Peaaegu kõik, kes on serveri kaotanud, arvasid, et varukoopia on olemas. Siis selgub, et selles on ainult operatsioonisüsteem, mitte andmebaas, või asub see samas serveris, mis nüüd kadunud on, või on sama lunavara selle krüpteerinud, või ei tea keegi parooli. Varukoopial on väärtus alles siis, kui saad selle taastada. Seepärast alusta plaanist ja lõpeta testiga.

Plaan vastab viiele küsimusele:

  1. Mida peab saama taastada?
  2. Kui palju andmeid tohid kaotada? (RPO)
  3. Kui kiiresti peab kõik jälle töötama? (RTO)
  4. Kus koopiad asuvad ja kui palju neid on?
  5. Kuidas tead, et see töötab?

Mida peab saama taastada?

Server koosneb kihtidest. Kõiki kihte ei pea varundama:

KihtNäideVarundada?
Operatsioonisüsteem ja paketidDebian, nginx, PHPMitte tingimata: saab uuesti paigaldada. Küll aga nimekiri: dpkg --get-selections
Seadistus/etc (nginx, SSH, tulemüür, systemd üksused), sinu compose-failidJah, väike ja hädavajalik
Rakendused ja veebisaidid/var/www, /opt/<app>, /srvJah, kui need ei tule Gitist
Andmedandmebaasid, üleslaaditud failid, Dockeri köited (/var/lib/docker/volumes)Jah, kõige olulisem
Saladusedparoolid, API-võtmed, sinu varukoopia enda võtiJah, kuid eraldi ja krüpteeritult (vt allpool)
Logid, vahemälud, ajutised failid/var/log, /var/cache, /tmpTavaliselt mitte

Pööra erilist tähelepanu andmebaasidele. Töötav andmebaas kirjutab pidevalt. Kui kopeerid töötava MariaDB või PostgreSQLi faile, võid saada vigase koopia. Seepärast tee kõigepealt tõmmis (dump): järjepidev hetkeseis failina, mille võtad seejärel varukoopiasse kaasa.

root@web1:~# mariadb-dump --single-transaction --all-databases | gzip > /var/backups/db/alles-$(date +%F).sql.gz
root@web1:~# sudo -u postgres pg_dumpall | gzip > /var/backups/db/pg-$(date +%F).sql.gz

(mariadb-dump kandis varem nime mysqldump; see käsk töötab enamasti ka praegu.) Kui andmebaas töötab konteineris, tee sama käsuga docker compose exec (õppetund 9.4).

RPO ja RTO: kui palju tohid kaotada?

Kaks erialast mõistet aitavad valikuid teha:

  • RPO (recovery point objective): kui mitme tunni andmed tohid kõige rohkem kaotada? Igapäevane varukoopia kell 03:00 tähendab, et kui server kell 22:00 kokku jookseb, on peaaegu terve päev kadunud. Tellimustega e-poe jaoks on see liiga palju, kord nädalas muutuva blogi jaoks aga täiesti sobiv.
  • RTO (recovery time objective): kui kaua tohib aega minna, kuni kõik jälle töötab? Teenusepakkuja täieliku varukoopia taastamine võib võtta minuteid, uue serveri ülesehitamine ja kõige käsitsi taastamine aga tunde.

Pane need oma serveri jaoks kirja. Neist sõltub, kui tihti varukoopiat teed ja kuidas seda hoiad.

Hetktõmmis, teenusepakkuja varukoopia, oma varukoopia

VPS-il on tavaliselt kolme liiki turvavõrku. Need sarnanevad, kuid kaitsevad erinevate asjade eest.

1. Hetktõmmis (snapshot). Kogu virtuaalse ketta hetkeseis, mis tehakse teenusepakkuja paneelis. Kiire teha ja kiire taastada. Ideaalne vahetult enne uuendamist (õppetund 4.3). Kuid enamikul teenusepakkujatel asub hetktõmmis serveriga samal andmesalvestil. Kui see salvesti rikki läheb või kaotad oma konto, on ka hetktõmmis kadunud. Ja hetktõmmist ei hoita kaua: see kasvab koos kõigi hilisemate muudatustega. Hetktõmmis ei ole varukoopia.

2. Teenusepakkuja varukoopia. Paljud teenusepakkujad teevad (vajadusel lisavalikuna) automaatselt iga päev koopia kogu sinu serverist teisele andmesalvestile. WebOkés on see näiteks kogu VPS-i igapäevane varukoopia, mida hoitakse seitse päeva; teistel teenusepakkujatel toimib see sarnaselt, oma tähtaegadega. See on hea teine kiht riistvararikete ja sinu enda eilsete eksimuste vastu. Kuid see on endiselt üks osapool: sinu konto, sinu makse, nende rike. Ja taastatakse tavaliselt kogu server korraga.

3. Sinu oma varukoopia väljaspool teenusepakkujat. Koopia sinu andmetest teise osapoole juures või teises asukohas, mille teed ja mida haldad ise (õppetund 8.2). See on kiht, mis jääb alles, kui kõik muu läheb nässu.

Reegel 3-2-1

Levinud rusikareegel:

  • 3 koopiat sinu andmetest (originaal ja kaks varukoopiat);
  • 2 eri liiki andmesalvestil või süsteemis;
  • millest 1 asub teises asukohas.

VPS-i puhul võib see olla: andmed serveris, teenusepakkuja igapäevane varukoopia ja restic abil tehtud krüpteeritud oma varukoopia teise osapoole andmesalvestisse. Tänapäevane lisanõue on, et vähemalt ühte koopiat ei saa kustutada see, kes serveri üle võtab (võrguühenduseta või append-only, õppetund 8.2). Serverisse sattunud lunavara otsib aktiivselt varukoopiaid, et ka need krüpteerida või kustutada. Varukoopia, mida server ise kustutada tohib, selle vastu ei kaitse.

Krüpteerimine ja sinu varukoopia parool

Teise osapoole juures asuv varukoopia peab olema krüpteeritud: selles on kliendiandmed, paroolid ja võtmed. restic (õppetund 8.2) krüpteerib vaikimisi. Sellega tekib aga uus risk: sinu varukoopia parool. Kui see kaob, on varukoopia kasutu. Ja kui see on ainult serveris, mille kaotasid, samuti.

Seepärast hoia parooli ka väljaspool serverit: oma paroolihalduris ja soovi korral paberil seifis. Sama kehtib selle andmesalvesti juurdepääsuandmete kohta, kus su varukoopia asub.

Taastamise testimine

Plaani kõige olulisem osa. Taastamise test tähendab, et taastad varukoopia päriselt kohta, kus see midagi katki ei tee, ja kontrollid, kas tulemus töötab.

  • Väikselt ja tihti: taasta üks fail või üks kaust asukohta /tmp/terug ja võrdle (diff). Näiteks kord kuus.
  • Suurelt ja aeg-ajalt: ehita varukoopiast üles täiesti uus testserver, impordi andmebaas, käivita veebisait. Näiteks kord aastas või iga suurema muudatuse järel. See on ühtlasi harjutus päris hädaolukorra jaoks (õppetund 10.3).

Pane kirja, kui kaua see aega võttis: see on sinu tegelik RTO.

Säilitustähtajad

Ära hoia ainult viimast varukoopiat. Kui avastad alles kahe nädala pärast, et fail on vigane või kustutatud, vajad kolme nädala tagust varukoopiat. Levinud skeem: seitse päevast, neli nädalast ja kuus kuist versiooni. restic korraldab selle käsuga forget (õppetund 8.2). Mõtle ka isikuandmete kaitse üldmäärusele (GDPR): isikuandmeid ei hoita kauem kui vaja, ka mitte varukoopiates. Pane oma säilitustähtajad kirja.

Praktikas

Kasuta teenusepakkuja hetktõmmist vahetult enne riskantseid muudatusi ja kustuta see pärast; jäta teenusepakkuja igapäevane varukoopia sisse, kui see on olemas; ja tee lisaks oma krüpteeritud varukoopia andmetest ja seadistusest teise osapoole juurde. WebOkés on need VPS-i vaates nimega Snapshots ja Backups; teistel teenusepakkujatel on nimed ja tähtajad teised, kuid põhimõte on sama. Majutuspaketi või hallatud teenuse puhul kehtivad sageli teised kokkulepped: vaata, mis sinu puhul korraldatud on.

Kokkuvõte

  • Varukoopial on väärtus alles siis, kui taastamine töötab; alusta plaanist ja lõpeta testiga.
  • Varunda eelkõige andmeid ja seadistust: andmebaasid tõmmisena, /etc, veebisaidid, Dockeri köited, compose-failid.
  • Määra RPO (kui palju tohid kaotada) ja RTO (kui kiiresti peab kõik töötama).
  • Hetktõmmis (sama andmesalvesti, lühiajaline), teenusepakkuja varukoopia (teine andmesalvesti, sama osapool) ja oma varukoopia väljaspool teenusepakkujat on kolm eri kihti; järgi reeglit 3-2-1 ja hoia vähemalt üht koopiat, mida server ise kustutada ei saa.
  • Krüpteeri, hoia varukoopia parooli väljaspool serverit ning testi taastamist väikselt ja tihti, suurelt aeg-ajalt.

Test (quiz)

1. Miks ei ole hetktõmmis varukoopia?



2. Kopeerid igal ööl kausta /var/lib/mysql ajal, kui MariaDB töötab. Mis on risk?



3. E-pood teeb igal ööl kell 03:00 varukoopia. Server kaob kell 21:00. Mitu tellimust võib kõige rohkem kaduma minna?



4. Lunavara krüpteerib sinu serveri ja seejärel ka varukoopia, sest server sai SFTP kaudu varukoopiate salvestisse kirjutada ja sealt kustutada. Mis oleks seda ära hoidnud?



5. Millal tead kindlalt, et sinu varukoopia töötab?



Ülesanne

Ülesanne O8.1: Sinu varundusplaan. Koosta oma serverile ühe lehekülje pikkune varundusplaan: mida peab saama taastada (kihtide kaupa), sinu RPO ja RTO, millised koopiad sul on (hetktõmmis, teenusepakkuja, oma) ja kus, sinu säilitustähtajad, kus asub varukoopia parool ja millal teed taastamise testi. Täida vorm; pärast saatmist näed näidisplaani, millega oma plaani võrrelda.

Ülesanne O8.1: Sinu varundusplaan

Selle ülesande teed ise, keegi ei kontrolli seda. Märgi ära, mida tegid, ja märgi ülesanne tehtuks.




Su linnukesed ja märkmed jäävad ainult sellesse brauserisse, me ei saada neid kuhugi. Kui oled sisse loginud, salvestame Minu kursustes ainult info, et tegid ülesande ära.

Loe edasi

Hetk…

Seadista oma domeenid

Määra iga domeeni jaoks nimeserverid, seos sinu majutusega ja kes saab omanikuks.

Laadin sinu domeene…