Záloha a obnovení

Zálohy mají vlastní aplikaci. Přichází se systémem a instalace ji nastaví, není tedy co kupovat ani co nastavovat. Tento blok ukazuje, co ukládá, kdy běží a jak dostanete všechno zpátky, když na to dojde. Celý tento blok patří do edice Basic.

1

Aplikace pro zálohu a obnovení

Aplikace se jmenuje „Ticket System Backup & Restore“. Sedí vedle ticketovacího systému a má vlastního zástupce na ploše.

Existuje verze pro Windows a verze pro Linux. Je to táž aplikace, jen sestavená pro každý operační systém.

Má šest záložek. „Restore“ vypisuje zálohy, které máte, „Create Backup“ udělá novou, „Schedule“ obstarává načasování, „Encryption“ ukazuje obnovovací klíč, „Settings“ ukazuje cesty a „Log“ protokol.

Nastavení jsou už vyplněná. Při prvním spuštění si aplikace sama zjistí, kde ticketovací systém leží.

Složka pro zálohy je pod „Backup directory“. Můžete ji změnit, třeba na jiný disk.

Ve Windows si aplikace při spuštění vyžádá práva správce. Její nastavení platí pro každého správce počítače a leží v „%ProgramData%\SMITEY\backup-app“.

Záložka „Restore“ s pěti zálohami, každá s časem, velikostí, druhem a šifrováním.
Červený rámeček je u sloupce „Encryption“. Nové zálohy končí na „.smbk“ a jsou „Encrypted“. Starší zálohy ve formátu ZIP ukazují „Not encrypted“. Sloupec „Type“ říká, jestli záloha vznikla z plánu, byla udělána ručně, nebo byla pořízena před aktualizací.Otevřít obrázek v plné velikosti
Záložka „Settings“ se složkou pro zálohy a údaji o databázi.
Červený rámeček je u názvu kontejneru PostgreSQL. Níže jsou svazky, které se ukládají zároveň.Otevřít obrázek v plné velikosti
2

Plán běží od okamžiku instalace

Než začnete: Ve Windows se aplikace vždy spouští s právy správce a s těmito právy plán zaregistruje. Pokud Windows nedovolí úlohu spouštět bez přihlášeného uživatele, zůstane vázaná na přihlášení a aplikace vám to řekne.

Instalace si denní zálohu nastaví sama. Běží ve 23:00 v časovém pásmu ticketovacího systému.

Plán žije v operačním systému. Ve Windows je to Plánovač úloh, v Linuxu služba cron. Kvůli zálohám tedy neběží žádná služba navíc.

Záloha nepotřebuje, aby byl někdo přihlášen. Na serveru, kam se nikdy nikdo nepřihlašuje, běží také.

Řádek pod tlačítky vám řekne, jestli úloha v operačním systému opravdu existuje. Zaškrtnuté políčko říká jen to, co bylo uloženo.

Zálohy se uchovávají v pěti stupních: 14 dní, 4 týdny, 12 měsíců, 4 čtvrtletí a 5 let. Záloha zůstane, dokud je v některém z těch stupňů nejnovější ve svém období.

Počítají se kalendářní dny, ne soubory. Dvě zálohy v jeden den jsou jeden den.

Zálohy, které uděláte ručně, se nikdy nemažou automaticky. To znamená ta 0 u „Keep manual“.

Když plán změníte, vaše změna přežije aktualizaci. Instalace jej nastaví, jen pokud jste plán nikdy nenastavili. Pokud jste zálohování vypnuli, zůstane vypnuté. Trvá i „Remove all scheduled tasks“: aktualizace plán potom znovu nenastaví.

Záložka „Schedule“ se zaškrtnutým „Daily“ a s časem nastaveným na 23:00.
Červené rámečky jsou u „Daily“ a u času. Věta nad tím jmenuje obě cesty: Plánovač úloh a cron.Otevřít obrázek v plné velikosti
Řádek „Registered with the operating system: yes (Daily)“ pod tlačítky.
Tento řádek se kontroluje při každém spuštění znovu. Stojí-li tam „NO“, neběží samo nic — pak použijte „Apply schedule“ jako správce.Otevřít obrázek v plné velikosti
Šest polí uchovávání: 14, 4, 12, 4, 5 a 0.
Červený rámeček je u těch stupňů. „Keep manual (0 = keep all)“ znamená, že ručně udělané zálohy zůstanou.Otevřít obrázek v plné velikosti
Karta „Schedule“ po „Apply schedule“, pod ní „02:00 (America/New_York)“ a „Registered with the operating system: yes (Daily)“.
Červené rámečky leží na „Apply schedule“ a na řádcích pod ním. V závorce stojí časové pásmo ticketovacího systému. Čas platí v tomto pásmu, a ne v časovém pásmu počítače.Otevřít obrázek v plné velikosti
3

Co záloha obsahuje

Záloha obsahuje všechno, co tvoří stav vašeho systému. Je to databáze, přílohy, archiv a klíče. Chybí v ní jen databáze mimo SMITEY.

Klíče jsou ta část, kterou lze snadno přehlédnout. Dešifrují uložené přístupové údaje, například k vašemu poštovnímu účtu. Bez nich by se obnovení vrátilo s mrtvými přístupovými údaji.

Každá nová záloha je jeden šifrovaný soubor s příponou „.smbk“. Drží jeden soubor na každý svazek, seznam svého obsahu a databázi jako textový soubor, pokud je zahrnuta.

Systém při tom běží dál. Vaši řešitelé zálohu vůbec nepoznají.

„Estimate size“ vám dopředu řekne, jak je databáze velká. Svazky s přílohami přibudou navíc. Záloha se nekomprimuje.

Nic se nikdy nepřepisuje. Každá záloha je vlastní soubor a staré odstraňuje jedině úklid.

Zálohy mohou číst jen správci. Totéž platí pro konfigurační soubor a pro soubor s prvním přihlášením v instalační složce. Instalační program a každá aktualizace nastaví tato oprávnění samy.

Pokud vaše databáze běží na vlastním serveru, a ne v kontejneru SMITEY, aplikace ji zálohovat nemůže. Zálohujte ji pak vlastními nástroji. Záloha v tom případě obsahuje jen přílohy, archivy a klíče, šifrované jako obvykle. Aktualizace takovou databázi sama pozná a aplikaci přepne. Do té doby denní záloha na takové instalaci selhává, pokud ji předtím nepřepnete ručně. V příkazové řádce to můžete udělat i ručně příkazem „config --database external“. Příkazem „config --database bundled“ přepnete zpět.

Více k tomu na kartě: Šifrování a obnovovací klíč

Záložka „Create Backup“ s tlačítky „Estimate size“ a „Create backup now“.
Červený rámeček je u obou tlačítek. Věta nad tím vypisuje, co je součástí.Otevřít obrázek v plné velikosti
Hlášení dole s celou cestou k vytvořenému souboru.
Po vytvoření se název souboru objeví dole v okně. Čas je součástí názvu.Otevřít obrázek v plné velikosti
4

Šifrování a obnovovací klíč

Než začnete: Obnovovací klíč uložte mimo server. Bez něj nelze po ztrátě serveru otevřít žádnou zálohu. Nikdo vám ho nemůže obnovit.

Každá nová záloha je šifrovaná. Platí to pro zálohy z plánu, ruční zálohy i zálohy před aktualizací. Nemusíte nic zapínat.

Zálohy se šifrují pomocí AES-256. Klíč vytvoří instalace sama. U existující instalace vznikne při první aktualizaci na verzi se šifrováním. Je uložen na serveru chráněně. Číst ho mohou jen správci.

Chrání to kopie mimo server. Kdo najde zálohu na síťovém disku, na USB disku nebo v online úložišti, nemůže ji bez klíče přečíst. Kdo ovládá samotný server, má i klíč.

Obnovovací klíč je tentýž klíč ve formě, kterou si můžete zapsat. Začíná na „SMBK-“. Najdete ho na záložce „Encryption“ a v souboru „SMITEY-credentials.txt“ ve složce instalace. Pokud jste ten soubor smazali, klíč pořád najdete na záložce „Encryption“.

„Copy“ vloží klíč do schránky. „Save to file...“ ho uloží i s ID klíče a datem do textového souboru. Uložte si ho například do správce hesel nebo na papíře do sejfu.

Dokud nepotvrdíte, že je klíč uložen, ukazuje aplikace nahoře žlutý pruh. Potvrdíte kliknutím na „I stored the key outside this server“ a odpovědí „Yes“ na otázku. Pruh pak zmizí. Záložka poté ukazuje, kdy jste potvrdili.

ID klíče říká, ke kterému serveru záloha patří. Pokud záloha k tomuto serveru nepatří, aplikace uvede její ID klíče. Potom požádá o odpovídající obnovovací klíč.

Pokud aplikace klíč přečíst nemůže, zálohu neudělá. Neudělá ani nešifrovanou. V takovém případě záložka „Encryption“ uvádí, že klíč nelze přečíst. Pokud soubor s klíčem chybí úplně, vytvoří další záloha nový klíč. Žlutý pruh se pak objeví znovu, protože i nový klíč je třeba uložit. Starší zálohy lze nadále otevřít jen se starým obnovovacím klíčem.

Starší zálohy ve formátu ZIP nejsou šifrované. Stále je můžete obnovit. Záložka ukazuje, kolik jich je. Úklid je odstraňuje podle stejných pravidel jako každou jinou zálohu.

Na serveru bez grafického prostředí ukáže totéž „key --show“ v příkazové řádce.

Více k tomu na kartě: Jak dostat všechno zpět, Na serveru bez grafického prostředí

Záložka „Encryption“ s obnovovacím klíčem, ID klíče a třemi tlačítky. Nahoře je žlutý pruh s upozorněním.
Červené rámečky jsou u pruhu s upozorněním, u klíče a ID klíče a u „I stored the key outside this server“. Klíč na obrázku pochází z testovacího prostředí.Otevřít obrázek v plné velikosti
Táž záložka po potvrzení, bez pruhu s upozorněním.
Horní rámeček je u času potvrzení. Dolní ukazuje, kolik záloh ještě není šifrovaných.Otevřít obrázek v plné velikosti
5

Jak dostat všechno zpátky

Než začnete: Obnovení přepíše dnešní stav. Všechno, co od zvolené zálohy vzniklo, je potom pryč.

V záložce „Restore“ vyberete zálohu, kterou chcete zpátky. Pak klepnete na „Restore“.

Aplikace se nejdřív zeptá. Řekne, co se stane: dnešní stav se přepíše a aplikace restartuje kontejnery. Pokud jsou v dnešním stavu anonymizované osoby, následuje druhá otázka. Uvede jejich počet a zeptá se, zda je po obnovení znovu anonymizovat. „Yes“ je předvybráno. S „No“ se záloha obnoví bez tohoto kroku. Pokud místo toho okno zavřete, nic se neobnoví.

Zaškrtnutí „Wipe target volumes before restore“ svazky nejdřív vyprázdní. Nezůstane tak ležet žádný soubor, který v době zálohy neexistoval.

Kroky se objeví v záložce „Log“. Tam vidíte jeden po druhém, co aplikace udělala. Pokud jste na druhou otázku odpověděli „Yes“, řádek na konci uvádí, kolik anonymizací ticketovací systém následující noc znovu použije. Pokud je nelze přenést, protokol místo toho ukáže varování. Pokud se objevila varování, stavový řádek dole v okně uvádí jejich počet.

Pokud záloha obsahuje databázi, vrátí se úplný stav. Tikety, komentáře, historie, přílohy, zaznamenaný čas i znalostní báze jsou zase tam, jak byly v době zálohy.

Potom je systém zase použitelný. U malé instalace to trvá méně než minutu.

Pokud záloha obsahuje databázi, vrátí se celá, nebo vůbec. Svazky následují po ní. Selže-li svazek, databáze je už zpátky, ale soubory mohou chybět; záložka „Log“ ukazuje, který krok selhal. V každém případě aplikace potom kontejnery znovu spustí, i když obnovení selhalo.

Zálohu ze starší verze lze obnovit do novější. Při příštím spuštění systém převede databázi na svou verzi.

Souhlasy a odhlášení z odběru průzkumu spokojenosti se přenesou bez dotazu. Platí to i tehdy, když na druhou otázku odpovíte „No“. Aplikace je před obnovou přečte z běžící instalace. Poté řádek na záložce „Log“ uvede počet, například „12 consent and unsubscribe record(s) were carried over.“ Systém tiketů je převezme při prvním startu. Souhlas nebo odhlášení z odběru zapsané po záloze proto zůstane platné. Pokud přenos selže, protokol ukáže varování. Obnova se přesto počítá jako úspěšná.

Aplikace nejdřív šifrovanou zálohu celou zkontroluje. Stavový řádek mezitím hlásí „Checking the encrypted backup before anything is changed...“. Teprve potom zastaví kontejnery. Pokud je soubor poškozený nebo byl změněn, aplikace se zastaví a ohlásí „The backup file is damaged. Nothing was changed.“

Pokud záloha pochází z jiného serveru, aplikace požádá o obnovovací klíč toho serveru. Stane se to po otázkách. Okno „Recovery key needed“ uvádí ID klíče zálohy. Stejné okno se objeví, pokud klíč tohoto serveru chybí.

Překlep se pozná dřív, než se cokoli změní. Stavový řádek pak hlásí „The recovery key has a typing error. Check each character.“ Potom se okno zeptá znovu. Pokud klíč patří k jiné záloze, stavový řádek hlásí „This recovery key does not belong to this backup.“ Tlačítkem „Cancel“ se aplikace zastaví a ohlásí „Restore cancelled. Nothing was changed.“

Aplikace zadaný klíč nepřevezme. Ponechá si svůj vlastní. Nové zálohy se dál dělají klíčem tohoto serveru. Pokud obnovujete na novém serveru, uložte i obnovovací klíč toho serveru.

Záloha bez databáze obnoví jen přílohy, archivy a klíče. Stávající klíče zůstanou. Databáze zůstane, jak je. Aplikace to před obnovením oznámí a zeptá se. Při odpovědi „No“ se nic nezmění.

Pokud je instalace nastavena na vlastní databázi, aplikace přeskočí databázovou část i tehdy, když záloha databázi obsahuje. Týká se to například starší zálohy. Aplikace se předem zeptá. Při odpovědi „No“ se nic nezmění.

Vybraná záloha v seznamu, se zaškrtnutím a s tlačítkem „Restore“ pod tím.
Červené rámečky jsou u zaškrtnutí a u „Restore“. Bez vybraného řádku zůstane tlačítko vypnuté.Otevřít obrázek v plné velikosti
Potvrzení před obnovením s tlačítky „Yes“ a „No“.
Otázka jmenuje oba následky: dnešní stav se přepíše a kontejnery se restartují.Otevřít obrázek v plné velikosti
Protokol po obnovení, dole s hlášením „Restore complete.“
Každý krok je tam se svým časem. Na konci aplikace hlásí „Restore complete.“Otevřít obrázek v plné velikosti
Druhá otázka „6 person(s) were anonymized in the current system.“ s tlačítky „Yes“ a „No“.
Červené rámečky leží na otázce a na „Yes“. „Yes“ je předvybrané. Číslo udává osoby, které jsou v dnešním stavu anonymizované.Otevřít obrázek v plné velikosti
Stavový řádek po obnovení: „1 warning(s) while carrying over anonymizations and survey consents. See the Log tab.“
Červený rámeček leží na stavovém řádku. Ten uvádí jen počet varování. Co přesně se stalo, najdete na kartě „Log“.Otevřít obrázek v plné velikosti
Žádost o obnovovací klíč s ID klíče zálohy, vstupním polem a tlačítky „OK“ a „Cancel“.
Červené rámečky jsou u otázky s ID klíče a u vstupního pole. Při psaní klíče nezáleží na pomlčkách, mezerách ani na velkých a malých písmenech. Klíč na obrázku pochází z testovacího prostředí.Otevřít obrázek v plné velikosti
6

Na serveru bez plochy

Server často žádnou plochu nemá. Táž aplikace proto funguje i jako příkaz.

V každodenním provozu potřebujete pět příkazů: „backup“ uloží, „list“ ukáže zálohy, které máte, „restore“ jednu vrátí, „schedule“ nastaví načasování a „config“ ukáže nastavení. Pro klíč přibudou „key“ a „decrypt“.

Za nimi je táž aplikace jako v okně. Neexistuje druhá cesta, která by dělala něco jiného.

Aplikace sedí v „/opt/smitey/Backup“. Voláte ji přes „sudo“ a připojíte příkaz. Kontejnery běží jako „root“, záloha proto tato práva potřebuje také.

Šest rámečků níže si můžete zkopírovat. Pokrývají to, co je v každodenním provozu opravdu potřeba.

Obnovení se ptá i tady. Proběhne, jen když připojíte „--yes“. Přenese pak i anonymizace z dnešního stavu, stejně jako „Yes“ v okně. S „--no-reapply“ proběhne bez tohoto kroku.

Na serveru je soubor, kde si o tom všem můžete přečíst. Jmenuje se „BACKUP-RESTORE.txt“ a sedí v „/opt/smitey“. Projde plán, každý příkaz i cestu zpátky ještě jednou, vaším vlastním tempem. Existuje německy a anglicky: pokud jste při instalaci zvolili němčinu, dostanete německý, jinak anglický. Obě verze sedí také pod „/opt/smitey/docs“.

„key --show“ ukáže obnovovací klíč, ID klíče a počet nešifrovaných záloh. Jakmile je klíč uložen mimo server, potvrdíte to příkazem „key --confirm-stored“.

Zálohu z jiného serveru obnovíte příkazem „--key-file“. Soubor, který uvedete, obsahuje obnovovací klíč. Použít lze i soubor z „Save to file...“. Místo souboru můžete použít také proměnnou prostředí „SMITEY_BACKUP_KEY“. S „sudo“ ji napíšete přímo před program, tedy „sudo SMITEY_BACKUP_KEY=<klíč> /opt/smitey/Backup/TicketSystemBackup restore …“. Klíč pak skončí v historii shellu. Pokud klíč nesedí, nic se nezmění.

„decrypt“ zapíše obsah zálohy jako nešifrované soubory do prázdné složky. Tyto soubory nejsou šifrované. Obsahují hesla a osobní údaje. Jakmile skončíte, smažte je.

Ukázat zálohy, které máte

sudo /opt/smitey/Backup/TicketSystemBackup list

Každý řádek nese čas, důvod, velikost a název souboru. Je to týž seznam jako v okně.

Ukázat plán

sudo /opt/smitey/Backup/TicketSystemBackup schedule --show

První řádek jmenuje nastavený čas i s časovým pásmem. Poslední říká, jestli úloha v operačním systému opravdu existuje. Stojí-li tam „NO“, neběží samo nic.

Změnit plán

sudo /opt/smitey/Backup/TicketSystemBackup schedule --daily 23:00 --keep 14

Čas platí v časovém pásmu ticketovacího systému. „--keep“ říká, kolik denních záloh se uchová. „schedule --off“ denní zálohu vypne.

Vytvořit zálohu hned teď

sudo /opt/smitey/Backup/TicketSystemBackup backup

Tato záloha se počítá jako „Manual“. Ručně udělané zálohy se nikdy nemažou automaticky.

Ukázat obnovovací klíč

sudo /opt/smitey/Backup/TicketSystemBackup key --show

Poslední řádek říká, zda jste už potvrdili, že je klíč uložen. Příkaz klíč nevytváří.

Obnovit zálohu z jiného serveru

sudo /opt/smitey/Backup/TicketSystemBackup restore <file>.smbk --yes --key-file /root/recovery-key.txt

Nahraďte <file> názvem nebo cestou zálohy. Soubor „/root/recovery-key.txt“ vytvoříte předem. Obsahuje obnovovací klíč. Použít lze i soubor z „Save to file...“.

Příkazový řádek na linuxovém serveru se seznamem z „list“ a pod ním výstupem „key --show“.
Nahoře ukazuje „list“ zálohy. Starší zálohy ve formátu ZIP nesou poznámku „(Not encrypted)“. Pod tím dává „key --show“ obnovovací klíč, ID klíče a počet nešifrovaných záloh. Klíč na obrázku pochází z testovacího prostředí.Otevřít obrázek v plné velikosti
7

Zálohy sedí na témže stroji

Než začnete: Záloha vedle systému vás před selháním disku nechrání. Kopírujte soubory pravidelně jinam.

Zálohy jsou soubory ve složce, kterou jste nastavili. Ta složka je na témže stroji jako ticketovací systém.

Pro běžné případy to funguje dobře. Omylem smazaná data, nepovedená aktualizace i chyba v datech jsou pokryté.

Proti selhání disku to nepomůže. Když je disk pryč, jsou zálohy pryč s ním.

Kopírujte proto soubory někam jinam. Stačí síťový disk, druhý server nebo úložiště v síti.

Zkopírovaný soubor lze načíst zpět na libovolném serveru. Na jiném serveru k tomu potřebujete obnovovací klíč. Přes „Import backup file…“ soubor vrátíte do seznamu.

Kopie jsou šifrované. Nikdo je nepřečte bez obnovovacího klíče. Neukládejte proto klíč vedle kopií. Starší zálohy s příponou „.zip“ šifrované nejsou.

Záložka „Settings“ s polem „Backup directory“.
Pole „Backup directory“ říká, kde soubory jsou. Právě tu složku byste měli pravidelně kopírovat jinam.Otevřít obrázek v plné velikosti
8

Před každou aktualizací systém uloží sám

Aktualizace si předtím udělá vlastní zálohu. Děje se to nezávisle na vašem plánu a bez toho, abyste cokoli zaškrtávali.

Ukládá totéž co vždycky: databázi, přílohy, archivy a klíče. Pokud databáze běží mimo SMITEY, aktualizace zálohuje jen přílohy, archivy a klíče.

Tuto zálohu dělá aplikace „Ticket System Backup & Restore“. Je šifrovaná jako každá jiná a leží ve stejné složce. V seznamu má druh „Update“. Uchovají se tři nejnovější takové zálohy. Starší aplikace smaže sama.

Upozornění před aktualizací vám to řekne. Nemusíte si sami pamatovat, že máte nejdřív uložit.

Když tato záloha selže, aktualizace se zastaví dřív, než se cokoli nahradí. Databáze mimo SMITEY aktualizaci nezdržuje. Aktualizace pak aplikaci přepne tak, aby denní záloha databázi také vynechala. Tuto databázi zálohujte vlastními nástroji.

Více k tomu na kartě: Aktualizace stiskem tlačítka

Potvrzení před aktualizací s poznámkou o záloze.
Věta „A full backup is taken automatically beforehand“ je součástí otázky. Záloha proběhne dřív, než se cokoli vymění.Otevřít obrázek v plné velikosti

Snímky obrazovky jsou z verze 1.3.1. Na zobrazených obrazovkách se až do verze 1.13.3 nic nezměnilo. Jediné, co vypadá jinak, je číslo verze dole v postranním panelu.