Project

General

Profile

Actions

Task #1647

closed

zalohovani dat z mongodb

Added by Radomír Orkáč almost 10 years ago. Updated about 7 years ago.

Status:
Closed
Priority:
Normal
Category:
-
Target version:
-
Start date:
06/02/2014
Due date:
% Done:

0%

Estimated time:
To be discussed:

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

Actions #1

Updated by Radomír Orkáč almost 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.
Actions #2

Updated by Radomír Orkáč almost 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.

Actions #3

Updated by Pavel Kácha almost 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.

Actions #4

Updated by Radomír Orkáč almost 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.

Actions #5

Updated by Radomír Orkáč almost 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

Actions #6

Updated by Radomír Orkáč almost 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

Actions #7

Updated by Jan Mach about 7 years ago

  • Status changed from In Progress to Closed

Již neaktuální, úklid v úkolech, zavírám.

Actions

Also available in: Atom PDF