Weboldalak mentése éles szerverről másolatra.
Sziasztok,
van egy Debián alapú webszerverem, amin van néhány (30-40) weboldal + ISPConfig.
Erről a rendszerről van az asztali gépemen egy másolat. (XEN segítségével). Tök ugyanúgy néz ki.
Szeretnék egy olyan dolgot (scriptet? programot?) beállítani, amely elindításával különbözeti mentést hajtódna végre a másolat rendszerre.
Tehát, ha változik valami az éles szerveren akkor a backupon is megcsinálná a változtatást. Ha valami törlődött az éles gépen, akkor törlődnie kell a backupon is.
A nehézség (szerintem) ott van, hogy a MySQL adatbázisokat, és az ISPConfig beállításokat is szinkronizálni kellene, nemcsak a fájlokat.
Tudtok tanácsot adni, hogy merre induljak el?
Minden válasznak örülök.
Üdv: Péter
■ van egy Debián alapú webszerverem, amin van néhány (30-40) weboldal + ISPConfig.
Erről a rendszerről van az asztali gépemen egy másolat. (XEN segítségével). Tök ugyanúgy néz ki.
Szeretnék egy olyan dolgot (scriptet? programot?) beállítani, amely elindításával különbözeti mentést hajtódna végre a másolat rendszerre.
Tehát, ha változik valami az éles szerveren akkor a backupon is megcsinálná a változtatást. Ha valami törlődött az éles gépen, akkor törlődnie kell a backupon is.
A nehézség (szerintem) ott van, hogy a MySQL adatbázisokat, és az ISPConfig beállításokat is szinkronizálni kellene, nemcsak a fájlokat.
Tudtok tanácsot adni, hogy merre induljak el?
Minden válasznak örülök.
Üdv: Péter
Ne
Igen, én is mindent mentenék.
Jut eszembe: még az emailokat is kell.
Csak jó lenne valahogy automatizálni.
Command Line SSH User Guide
sh
USER='gyoker'
PASSWD='titok'
DATUM=`date +"%Y-%m-%d"`
cd /data/bizt
mysqldump --user=rott --password=titkos --add-drop-database --add-drop-table --all-databases --compact --default-character-set=utf8 --events --routines --extended-insert | gzip > ./mysql_$DATUM.sql.gz
tar -cjf ./rendszer_$DATUM.tar.bz2 /data/web --exclude="wiki" --exclude="letoltes" --exclude="feltoltes" --exclude="tmp"
ftp -n $HOST <<END_SCRIPT
quote USER $USER
quote PASS $PASSWD
binary
cd Volume_1/mentes
put mysql_$DATUM.sql.gz
put rendszer_$DATUM.tar.bz2
quit
END_SCRIPT
rm ./rendszer_$DATUM.tar.bz2
rm ./mysql_$DATUM.sql.gz
exit 0
Köszönöm a scriptet. Valami
Már "csak" értelmeznem kell, majd átírni az én verziómra.
Egy másolat nem elég, mert ha
A peremfeltételektől függően (alkalmazás kritikussága, adatok mennyisége, a változások gyakorisága) határozd meg, hogy milyen sűrűn kell mentened (legfeljebb hány órányi adatot vagy hajlandó kockáztatni, illetve milyen időközönként viseled el a mentéssel járó esetleges lassulást/leállást) és hogy mely mentéseket milyen hosszan őrzöl meg (probléma esetén milyen időpontokra kell tudj visszaállni, illetve mennyi rendelkezésre álló tárkapcitásod van).
Egy példa egy kevéssé kritikus rendszerre: naponta készítesz egy mentést, amikből mindig rendelkezésre áll az utolsó egy hétnyi, és az elmúlt fél évből minden hónap végi.
Ha mások adatait kezeled, akkor nem árt tájékoztatni őket a fentiekről, hogy tudják, mivel számoljanak.
Szia Ádám, az éles gép
az éles gép minden este csinál egy mentést egy mappába visszamenőleg 10-nappal.
S az utolsót törli. Az adatbázisokat is összetömöríti, tehát ez valamennyire rendben van.
Amire nekem szükségem van, az az, hogy legyen egy 'pótszerverem'. Ha hardware probléma miatt állna le, akkor a javítás idejére bevinném. (az, hogy költözzek virtuális gépre nem megoldott)
Mindennap lefuttatnám a scriptet, ami aktualizálná a pótszerveren a változásokat.
az éles gép minden este
S az utolsót törli. Az adatbázisokat is összetömöríti, tehát ez valamennyire rendben van.
Akkor neked nincs mentésed. Ha leég a szerverterem, akkor teljesen mindegy, hány napra visszamenőleg volt bent mentésed. Csak az a mentés releváns, ami fizikailag máshova történik.
Mindennap lefuttatnám a scriptet, ami aktualizálná a pótszerveren a változásokat.
Ha már be kell cipelned egy szervert és beállítani, hogyha valami történik az elsődlegessel, akkor úgyis lesz annyi kiesésed, hogy nem érdemes a másodlagos folyamatos naprakészen tartásával foglalkozni (és még koptatni is közben). Ha baj van, akkor telepítsd fel (ehhez használj valamilyen konfigurációmenedzsment eszközt, erről az imént volt szó), húzd fel a mentést, és vidd be.
A másik lehetőséged, hogy egy másik teremben folyamatosan működteted és naprakészen tartod a másodlagos szervert, és automatikusan áttereled a forgalmat, ha az elsődleges elérhetetlen. És készülj fel hosszú olvasással töltött hónapokra.
Ádámnak igaza van, ha
Biztonsági mentést mindig fizikailag másik adathordozóra kell végezni, és két mentés között lehetőleg meg kell (fizikailag) szakítani a kapcsolatot a gépek között.
Hot backup?
1. Ha hardverhiba ellen akarsz védekezni és un. hot backupot akarsz tartani, amit bármikor lehet "promótálni" éles verzióvá, akkor viszontlag gyakran másolatot kell csinálni. Ez esetben érdemes az rsyncet használni a fájlokra, a MySQL-t pedig replikálni. Így mindig csak a változások mennek át.
2. Ha a cél a stabil biztonsági mentés, akkor erre tervezett backup szoftvet kell használni, pl Amanda. Ez ugyan nem biztosít azonnali visszaállási lehetőséget, viszont több változatot ment el időben visszamenőleg, amelyből bármelyikre vissza tudsz állni.
Általánosságban véve javaslom, hogy fogalmazd meg a céljaidat és ahhoz válassz eszközt.