Zálohování systému

 

ISPadmin disponuje funkcí automatického zálohování dat. Zálohy lze ukládat jak lokálně (SW/HW RAID), tak i na vzdálené uložiště (FTP, NFS, CIFS). Lokální zálohy je vhodné ukládat na jiný než systémový oddíl. Pokud by došlo k zaplnění systémového disku zálohami, mohlo by dojít k poškození systému.

 

Nastavení zálohování

Provádí se v Nastavení Systémové nastavení Zálohování.

 

Šifrování záloh systému a routerů

icon info2 Šifrování záloh routerů je po instalaci vypnuté a volitelně se dá nastavit spuštěním externího scriptu z konzole linuxu pod právy root.

Heslo můžete nastavit/změnit prostřednictvím tohoto scriptu:

/usr/local/script/ispadmin/ispadmin_backup_crypt.pl

Pokud nastavíte jako heslo hodnotu -1, tak se šifrování vypne a v budoucích zálohách se již šifrování provádět nebude.
V průběhu nastavení/změny hesla budete dotázáni na zadání emailové adresy. Na tento email poté dorazí zpráva o změně hesla do záloh a bude obsahovat jak staré tak i nově nastavené heslo. Tento email buď nemažte nebo si jeho obsah vytiskněte a někam pečlivě uložte, protože při obnovení dat ze zálohy bude heslo potřeba. Není jiná možnost jej získat nebo obnovit! Před změnou šifrování zkontrolujte funkčnost odesílaní emailů ze systému. V případě selhání odesílání nebude na váš email doručena zpráva s novým a starým heslem k zálohám.

 

Zálohy systému a routerů

Možnost vytvořit zálohu a již vytvořené zálohy jsou dostupné v Ostatní Zálohy

Ruční záloha systému

Okamžitou zálohu systému ISPadmin je možné v příkazové řádce spustit příkazem

ispadmin_backup backup all

V tomto případě se opět provede kompletní záloha systému do adresáře /data/backup/incremental/. Celá záloha obvykle trvá mezi 10 až 30 minutami v závislosti na počtu klientů respektive na množství zálohovaných dat. Pokud máte třeba 8 GB zálohy a navíc hodně zatížený server, může to trvat i déle. Je však potřeba počítat s tím, že se může po tuto dobu projevit zpomalení webového rozhraní.

Příkazem ispadmin_backup zobrazíte nápovědu k zálohovacímu a obnovovacímu scriptu.

ispadmin_backup

+ - - - - - - - - - - - - - - - - - - - - [ ispadmin_backup ] - - - - - - - - - - - - - - - - - - - - - +

This script can help you to backup and recover of ISPamin backup easy way. Well, you can run script this way:

ispadmin_backup [help] [debug] [source-path=SRC-PATH] [path=PATH] MODE SCOPE [BID]

[PATH] Path to the ISPadmin's restore directory. Absolute or relative path can be used.
       Default path is root / !!.
[SRC-PATH] Path to the ISPadmin's source directory for recovery or Backup directory. Absolute path can be used.
           Default path is ISPadmin backup directory /data/backup/incremental/
[MODE] Determine function of script:
backup   - backup system
restore  - restore system from [PATH]

[SCOPE]
all      - recover or backup all files important parts of the ISPamin (auto mode for db, etc, data)
etc      - recover or backup files in /etc
db       - backup the binary MySQL database (only ispadmin,system,mysql db)  and  backup all dump database to  /db_dump
         - recovery the binary MySQL database (only ispadmin,system,mysql db)
db_dump  - recovery all dump databases
graph    - recover or backup graph data in ISPadmin (RRD files)
scripts  - recover or backup scripts of ISPadmin (/usr/local/script/ispadmin)
ispadmin - recover or backup ISPadmin data (/data/support)

[BID] Determine incremental level. If is not given, last backup will be executed as default.

First argument is required ( or backup all ) or second one is optional.
If recover MODE is not given, full recover will be executed as default!

And finaly, a simple example of usage:
   ispadmin_backup restore scripts 401
   ispadmin_backup path=/backup/graph/ restore all
   ispadmin_backup backup
   ispadmin_backup source-path=/home/toor/backup/ backup
 

+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (c) NET service solution, s.r.o.  - +

 

  • Standardní záloha celého systému ISPadmin do defaultního adresáře /data/backup/incremental/

Po spuštění zálohy budete ještě dotázáni, zda opravdu chcete zálohu udělat:

ispadmin_backup backup all

Are you sure want to do the backup  - ALL to /data/backup/incremental/ !!?  [y/n]:

Zobrazení souborů zálohy:

ls -la /data/backup/incremental/

total 9
drwxr-xr-x 9 virtual virtual 1024 Mar 20 12:45 .
drwxr-xr-x 4 virtual root    1024 Mar 20 10:27 ..
drwxr-xr-x 2 virtual virtual 1024 Mar 27 09:55 db
drwxr-xr-x 2 virtual virtual 1024 Mar 27 09:55 db_dump
drwxr-xr-x 2 virtual virtual 1024 Mar 27 09:55 db_dump_last
drwxr-xr-x 2 virtual virtual 1024 Mar 27 09:55 etc
drwxr-xr-x 2 virtual virtual 1024 Mar 27 09:55 graph
drwxr-xr-x 2 virtual virtual 1024 Mar 27 09:55 ispadmin
drwxr-xr-x 2 virtual virtual 1024 Mar 27 09:55 scripts

 

  • Záloha celého systému ISPadmin do uživatelského adresáře např. /new/backup

ispadmin_backup source-path=/new/backup backup all

Are you sure want to do the backup  - ALL to /data/backup/incremental/ !!?  [y/n]:

Zobrazení souborů zálohy

ls -la /new/backup/

total 9
drwxr-xr-x 9 virtual root    1024 Mar 27 10:02 .
drwxr-xr-x 3 root    root    1024 Mar 27 10:02 ..
drwxr-xr-x 2 virtual virtual 1024 Mar 27 10:02 db
drwxr-xr-x 2 virtual virtual 1024 Mar 27 10:02 db_dump
drwxr-xr-x 2 virtual virtual 1024 Mar 27 10:02 db_dump_last
drwxr-xr-x 2 virtual virtual 1024 Mar 27 10:02 etc
drwxr-xr-x 2 virtual virtual 1024 Mar 27 10:02 graph
drwxr-xr-x 2 virtual virtual 1024 Mar 27 10:02 ispadmin
drwxr-xr-x 2 virtual virtual 1024 Mar 27 10:02 scripts

 

  • Záloha jen části systému (systém záloh je rozdělen do jednotlivých sekcí - jsou povolené tyto volby)

ispadmin - systém ISPadmin (/data/support/ispadmin)
ispadmin_backup backup ispadmin

scripts - záloha skriptů ISPadmin
ispadmin_backup backup scripts

graph - záloha všech klientských grafů prováděných na konci dne, které jsou uloženy jako statické obrázky. (/data/support/ispadmin/client_images/)
ispadmin_backup backup graph

etc - záloha celého config adresáře linuxu
ispadmin_backup backup etc

db - záloha binárních DB - tabulky ispadmin, system, mysql
    - záloha všech dumpovaných databází mysql do adr. ./db_dump
    - vytvořen adresář ./db_dump_last/, kde jsou uloženy tyto aktuální dumpované soubory z poslední zálohy
ispadmin_backup backup db

alert icon Před jakýmkoliv obnovováním si vždy zazálohujte aktuální data.
icon info2 Důležité adresáře jsou /data/support, /usr/local/script/ispadmin, /var/lib/mysql a /etc


Z adresáře se zálohami /data/backup/incremental/ do /. Dojde k přepsání dat systému!!! Používejte tedy jen v případě, že máte data systému ISPadmin poškozená a chcete je nahradit daty ze zálohy.

alert icon Pokud obnovujete kompletní data na nový server s jinou verzi operačního systému Debian, nelze tento typ obnovy doporučit, jelikož dochází k obnově systémových konfiguračních adresářů v /etc a s rozdílnou verzí OS mohou tyto soubory mít jiný formát a syntaxi. Proto doporučujeme v těchto případech použít obnovu dílčích části viz níže. (bez obnovy /etc a následně obnovit adresář /etc do jiného místa v systému a provést manuální konfiguraci systémových nastavení - apache, hosts, dns, ..... ).


Pokud máte zálohy šifrované, budete ještě dotázáni na heslo do záloh a následně se Vás program ještě jednou zeptá, zda chcete obnovu dat opravdu udělat.

ispadmin_backup source-path=/data/backup/incremental/ path=/ restore all

Type Postcode password : Vaše_heslo_do_záloh

Restore script started.

Recover will destroy actual data on the server! Do backup before the recovery is a good idea.
Are you sure want to do the restore  - from /data/backup/incremental/ directory to /  !!?  [y/n]:

Tímto způsobem si můžete obnovit data z poslední full zálohy včetně incrementů od poslední full zálohy (pokud jsou nastaveny).

alert icon Předpokladem pro správné obnovení dat je přítomnost a funkčnost všech predcházejících zalohovacích dat. Nestačí mít nakopírovaný jen poslední "5.den" zálohy s číselnou identifikaci. (např. Ispadmin_scripts.5.tar.gz)

 Z uživatelova adresáře se zálohami /data/backup/incremental/ do /. Dojde k přepsání dat systému!!! Používejte tedy jen v případě, že máte data systému ISPadmin poškozená a chcete je nahradit daty ze zálohy.
Příklad: Dnes je 30.3.2012 a Vy chcete obnovit data z 27.3.2012.
Postup: Je potřeba zjistil číslo zálohy, která se udělala 27.3.2012. To zjistíte pomocí příkazu:

ls -la /data/backup/incremental/ispadmin/

total 188712
drwxr-xr-x 2 virtual virtual     2048 Mar 29 07:51 .
drwxr-xr-x 9 virtual virtual     1024 Mar 27 10:55 ..
-rw-r--r-- 1 virtual root       13697 Mar 29 07:46 backup2l_ispadmin.conf
-rw-r--r-- 1 virtual root         390 Mar 26 10:55 Ispadmin_ispadmin.1.check
-rw-r--r-- 1 virtual root         107 Mar 26 10:55 Ispadmin_ispadmin.1.error.gz
-rw-r--r-- 1 virtual root      106410 Mar 26 10:55 Ispadmin_ispadmin.1.list.gz
lrwxrwxrwx 1 virtual root          27 Mar 26 10:55 Ispadmin_ispadmin.1.new.gz -> Ispadmin_ispadmin.1.list.gz
-rw-r--r-- 1 virtual root          51 Mar 26 10:55 Ispadmin_ispadmin.1.obsolete.gz
-rw-r--r-- 1 virtual root         440 Mar 26 10:55 Ispadmin_ispadmin.1.skipped.gz
-rw-r--r-- 1 virtual root    64043583 Mar 26 10:55 Ispadmin_ispadmin.1.tar.gz
-rw-r--r-- 1 virtual root         390 Mar 27 13:15 Ispadmin_ispadmin.2.check
-rw-r--r-- 1 virtual root         107 Mar 27 13:15 Ispadmin_ispadmin.2.error.gz
-rw-r--r-- 1 virtual root      106139 Mar 27 13:15 Ispadmin_ispadmin.2.list.gz
lrwxrwxrwx 1 virtual root          27 Mar 27 13:15 Ispadmin_ispadmin.2.new.gz -> Ispadmin_ispadmin.2.list.gz
-rw-r--r-- 1 virtual root          51 Mar 27 13:15 Ispadmin_ispadmin.2.obsolete.gz
-rw-r--r-- 1 virtual root         436 Mar 27 13:15 Ispadmin_ispadmin.2.skipped.gz
-rw-r--r-- 1 virtual root    64043616 Mar 27 13:15 Ispadmin_ispadmin.2.tar.gz
-rw-r--r-- 1 virtual root         390 Mar 29 07:47 Ispadmin_ispadmin.3.check
-rw-r--r-- 1 virtual root         107 Mar 29 07:47 Ispadmin_ispadmin.3.error.gz
-rw-r--r-- 1 virtual root      106139 Mar 29 07:46 Ispadmin_ispadmin.3.list.gz
lrwxrwxrwx 1 virtual root          27 Mar 29 07:47 Ispadmin_ispadmin.3.new.gz -> Ispadmin_ispadmin.3.list.gz
-rw-r--r-- 1 virtual root          51 Mar 29 07:46 Ispadmin_ispadmin.3.obsolete.gz
-rw-r--r-- 1 virtual root         436 Mar 29 07:46 Ispadmin_ispadmin.3.skipped.gz
-rw-r--r-- 1 virtual root    64043616 Mar 29 07:47 Ispadmin_ispadmin.3.tar.gz

Nyní již víme, že data, která chceme obnovit ze dne 27.3.2012, mají číslo 2. Můžeme tedy přistoupit k samotné obnově. Napíšeme příkaz pro obnovu a na jeho konec dopíšeme zjištěné číslo zálohy. Tím zajistíme, že nebude obnovena poslední záloha z 29.3.2012, nýbrž bude obnovena záloha z 27.3.2012.
Pokud máte zálohy šifrované, budete ještě dotázáni na heslo do záloh a následně se Vás program ještě jednou zeptá, zda chcete obnovu dat opravdu udělat.

ispadmin_backup source-path=/data/backup/incremental/ path=/ restore all 2

Type Postcode password : Vaše_heslo_do_záloh

Restore script started.

Recover will destroy actual data on the server! Do backup before the recovery is a good idea.
Are you sure want to do the restore  - from /data/backup/incremental/ directory to /  !!?  [y/n]:

Tímto způsobem si můžete obnovit data z jakékoliv full zálohy či jakýchkoliv incrementů včetně předcházející full zálohy (pokud jsou nastaveny).

alert icon To vše za předpokladu, že všechny zálohy v patřičných sekcích (ispadmin,scripts,graph,db,etc) budou mít stejné číslo u odpovídajícího dne obnovy. V opačném případě se obnoví data ze dne příslušného danému číslu zálohy. Obnova databáze se provádí ze zálohy db_dump formou importu zálohovaného dump souboru jednotlivých databází.

Stejně jako u zálohy jednotlivých částí systému, jsou u obnovy tyto volby:

ispadmin - systém ISPadmin (/data/support/ispadmin)
ispadmin_backup source-path=/data/backup/incremental/ path=/ restore ispadmin all

scripts - skripty ISPadmin
ispadmin_backup source-path=/data/backup/incremental/ path=/ restore scripts all

graph - klientské grafy
ispadmin_backup source-path=/data/backup/incremental/ path=/ restore graph all

etc - config adresář linuxu
ispadmin_backup source-path=/data/backup/incremental/ path=/ restore etc all

db - databáze
Příklad: Dejme tomu, že se Vám poškodila vlivem tvrdého restartu či vlivem vypnutí elektřiny databáze ISPadmin. Dnes je 30.3.2012 a Vy víte, že pravděpodobně k poškození databáze došlo někdy po 27.3.2012, protože v této době byl výpadek proudu a server neběžel.
Potřebujete tedy obnovit databázi ze dne 27.3.2012.
Máte v zásadě 3 možnosti:

  • Obnova celého systému ISPadmin

Viz Klasická obnova, popř. Obnova starší zálohy

  • Obnova poslední textové zálohy databáze

Můžete obnovit poslední textovou či binární zálohu pomocí příkazu ispadmin_backup source-path=/data/backup/incremental/ path=/ restore db_dump all

Popř. můžete obnovit konkrétní starší zálohu - zjištění čísla zálohy viz Obnova starší zálohy, poté použijte příkaz ispadmin_backup source-path=/data/backup/incremental/ path=/ restore db_dump all 2, kde číslo 2 reprezentuje číslo zálohy. Obnovovací script se Vás u každé databáze zeptá, jestli ji chcete opravdu obnovit (Enter).

  • Obnova poslední binární zálohy databáze

Můžete obnovit poslední textovou či binární zálohu pomocí příkazu ispadmin_backup source-path=/data/backup/incremental/ path=/ restore db all

Popř. můžete obnovit konkrétní starší zálohu - zjištění čísla zálohy viz Obnova starší zálohy, poté použijte příkaz ispadmin_backup source-path=/data/backup/incremental/ path=/ restore db all 2, kde číslo 2 reprezentuje číslo zálohy. Obnovovací script se Vás u každé databáze zeptá, jestli ji chcete opravdu obnovit (Enter).

Tuto volbu využijete zejména tehdy, chcete-li si projít data ze zálohy a něco si v nich zjistit (třeba jestli v této záloze nějaký soubor je, či jestli tam chybí, a bude zřejmě až ve starších zálohách atp.)

ispadmin_backup restore all

Type Postcode password : Vaše_heslo_do_záloh

Restore script started.

Recover will destroy actual data on the server! Do backup before the recovery is a good idea.
Are you sure want to do the restore  - from /data/backup/incremental/ directory to /backup/  !!?  [y/n]:

Zobrazení obsahu adresáře /backup

ls -la /backup
total 6
drwxr-xr-x  6 root root 1024 Mar 27 11:00 .
drwxr-xr-x 33 root root 1024 Mar 27 10:53 ..
drwxr-xr-x  4 root root 1024 Mar 27 11:00 data
drwxr-xr-x  4 root root 1024 Mar 27 11:00 etc
drwxr-xr-x  3 root root 1024 Mar 27 11:00 restore_mysql_dump
drwxr-xr-x  3 root root 1024 Mar 27 11:00 usr

alert icon Po vytvoření nového adresaře (např. /old_server/) musíte do toho adresáře nakopírovat kompletní adresářovou strukturu záloh z FTP serveru. Tj. pokud potřebujete obnovit z FTP zálohu číslo 3, musíte nakopírovat i všechny předcházející zálohy 1 i 2.

Následně můžete provést obnovu podobně jako výše příkazem ispadmin_backup source-path=/old_server/ path=/restore/  restore all    pokud budete chtit obnovit do adresáře restore, nebo ispadmin_backup source-path=/baa/ path=/ restore all  do ostré verze.

alert icon V obou případech dojde k obnovení ostré databáze zálohovanými daty.

I v těchto případech se můžete omezit na obnovu určitých sekcí (ispadmin, etc, graph, scripts), např. ispadmin_backup source-path=/baa/ path=/restore/ restore ispadmin all  (případně přidat číslo zálohy z /old_server/)

 

Související články:

 

KONTAKT

NET service solution, s.r.o.
Žerotínova 3056/81a
787 01 Šumperk
Česká republika