Task #1647
closedzalohovani dat z mongodb
0%
Description
Po dohode s Mekem jsem vytvoril/nastrelil skript /root/bin/backupdb pro denni zalohovani alerts, groups, users do /var/backups:
# ls -alh 20140* -rw-r--r-- 1 root root 114M May 28 14:00 20140528.tgz -rw-r--r-- 1 root root 93M May 29 00:00 20140529.tgz -rw-r--r-- 1 root root 76M May 30 00:00 20140530.tgz -rw-r--r-- 1 root root 104M May 31 00:00 20140531.tgz -rw-r--r-- 1 root root 84M Jun 1 00:00 20140601.tgz -rw-r--r-- 1 root root 80M Jun 2 00:00 20140602.tgz
Updated by Radomír Orkáč over 10 years ago
Poznamky od Pavla k memu nastrelu:
- Nebylo by dobré si ukládat čas posledního použitého začátku inkrementu, a při dalším zálohování dumpovat od něho? Pokud z nějakého důvodu neproběhne cron, bude ten den chybět (protože ve skriptu je zadrátováno "od včerejška do dneška").
- Bylo by možná rozumné prohodit pořadí backup a backupdb, a nechat backup zazálohovat dump, vytvořený backupdb.
- Nitpicking - přidal bych do jména souboru nějakou příponu, třeba 'mongodump.tgz', ať je při prohlížení záloh zřejmé, co to je, a ať je to dohledatelné findem.
Updated by Radomír Orkáč over 10 years ago
Ja to nebral jako ukol, ale pokus o reseni problemu s timeouty a kesovanim:( Oki, zapsal jsem si to pred chvili jako ukol a dotahnu nastrel do konce.
Nebylo by dobré si ukládat čas posledního použitého začátku inkrementu, a při dalším zálohování dumpovat od něho? Pokud z nějakého důvodu neproběhne cron, bude ten den chybět (protože ve skriptu je zadrátováno "od včerejška do dneška").
Souhlasim.
Bylo by možná rozumné prohodit pořadí backup a backupdb, a nechat backup zazálohovat dump, vytvořený backupdb.
Denni dump (backupdb) trva cca 30s, proto neni problem ho naplanovat na 0:00 a backup posunout z 23:23 na 0:05.
30 23 * * * /root/bin/backup
0 0 * * * /root/bin/backupdb
Napriklad dump 1 mesice trva cca 13min.
- Nitpicking - přidal bych do jména souboru nějakou příponu, třeba 'mongodump.tgz', ať je při prohlížení záloh zřejmé, co to je, a ať je to dohledatelné findem.
Souhlasim.
Updated by Pavel Kácha over 10 years ago
Radomír Orkáč wrote:
Ja to nebral jako ukol, ale pokus o reseni problemu s timeouty a kesovanim:( Oki, zapsal jsem si to pred chvili jako ukol a dotahnu nastrel do konce.
Však jo, není potřeba se na něco vrhat jenom proto, že k tomu mám pár poznámek. I takhle je to lepší, než vůbec, a detaily je možné zvážit/dotáhnout, až se to bude nasazovat naostro proti datovým úložištím. Tohle nemá velkou prioritu, důležitější je pořád výkon monga.
Updated by Radomír Orkáč over 10 years ago
Ja zkusim jet na maximum.. .
Do vykonnosti se pustim zase zitra.
K zalohovani..
Zapisuji posledni zazalohovane $TO.
Pokud jiz odzalohovane dany den bylo, skript se ukonci:
FROM: Sun Jun 1 00:00:00 CEST 2014 TO: Mon Jun 2 00:00:00 CEST 2014 LAST: Mon Jun 2 00:00:00 CEST 2014 Backup has already been created... LAST equal TO
Pokud chybi nekolik dni, pouzije se jako FROM posledni ulozeny LAST:
# /root/bin/backupdb FROM: Sun Jun 1 00:00:00 CEST 2014 TO: Mon Jun 2 00:00:00 CEST 2014 LAST: Thu May 1 00:00:00 CEST 2014 Some backups are missing... FROM NEW: Thu May 1 00:00:00 CEST 2014 connected to: 127.0.0.1 2014-06-02T21:05:54.866+0200 DATABASE: mentat to /var/tmp/20140602/mentat 2014-06-02T21:05:54.867+0200 mentat.alerts to /var/tmp/20140602/mentat/alerts.bson 2014-06-02T21:05:57.005+0200 Collection File Writing Progress: 264000/95696238 0% (documents) ...
Pridan i prefix:
root@mentat:/var/backups# ls -alh mongodb_* -rw-r--r-- 1 root root 114M May 28 14:00 mongodb_20140528.tgz -rw-r--r-- 1 root root 93M May 29 00:00 mongodb_20140529.tgz -rw-r--r-- 1 root root 76M May 30 00:00 mongodb_20140530.tgz -rw-r--r-- 1 root root 104M May 31 00:00 mongodb_20140531.tgz -rw-r--r-- 1 root root 84M Jun 1 00:00 mongodb_20140601.tgz -rw-r--r-- 1 root root 80M Jun 2 00:00 mongodb_20140602.tgz -rw-r--r-- 1 root root 11 Jun 2 18:19 mongodb_last
Ale to je jen tak ve strucnosti. Proste jsem to ted vecer prekopal.. .
Uvidime zitrejsi ranni vypis.
R.
Updated by Radomír Orkáč over 10 years ago
Odzalohovani dat probehlo v poradku:
# ls -alh mongodb_* -rw-r--r-- 1 root root 114M May 28 14:00 mongodb_20140528.tgz -rw-r--r-- 1 root root 93M May 29 00:00 mongodb_20140529.tgz -rw-r--r-- 1 root root 76M May 30 00:00 mongodb_20140530.tgz -rw-r--r-- 1 root root 104M May 31 00:00 mongodb_20140531.tgz -rw-r--r-- 1 root root 84M Jun 1 00:00 mongodb_20140601.tgz -rw-r--r-- 1 root root 80M Jun 2 00:00 mongodb_20140602.tgz -rw-r--r-- 1 root root 79M Jun 3 00:00 mongodb_20140603.tgz -rw-r--r-- 1 root root 11 Jun 3 00:00 mongodb_last
Pro otestovani zitrejsi zalohu vynecham a pozitri by se mely odzalohovat dva dny najednou:
#0 0 * * * /root/bin/backupdb
Updated by Radomír Orkáč over 10 years ago
Je to pouze chyba, ze nemuze na vzdalene strane smenit vlastnika?
Mounting remote volume... sshfs -o idmap=user cesnet_mentat_backup@ssh.du2.cesnet.cz:/home/cesnet_mentat_backup/VO_cesnet_mentat-tape_tape/ /media/du-store Moving backup file /var/backups/mongodb_20140617.tgz to remote storage... mv: failed to preserve ownership for `/media/du-store/mongodb_20140617.tgz': Permission denied Unmounting remote volume... fusermount -u /media/du-store
Updated by Jan Mach over 7 years ago
- Status changed from In Progress to Closed
Již neaktuální, úklid v úkolech, zavírám.