Sziasztok,
a helyzet a következő: vannak szerverek, azokon vannak szolgáltatások, és a szolgáltatásokról készülő mentések, illetve az azt végző scriptek. A scriptek emailt küldenek, ha a mentés befejeződik, az emailben benne, hogy sikeres-e vagy sem.
Jelenleg a helyzet az, hogy reggel sok-sok ilyen backupról jövő mailt kell kézzel átnéznem/átkattingatnom, hogy minden lefutott-e rendben. Ez az egyik probléma. A másik pedig az, hogy ha nem jön meg egy-kettő (mert valaki feltöltött a megosztásra avatar bdrip-et, és azóta is fut; vagy rdiff-backup defunct lett mert mondjuk elfogyott a hely a céllemezen, stb...), az nekem nem nagyon tűnik fel azonnal 30-40-50 ilyen mail között, hogy hiányzik pár. A kérdésem az lenne, hogy van-e valami olyan program, ami ezt valahogy emészhető formában tudja kezelni?
Amire gondolok pl.: A backupról a mailok egy külön fiókba mennének. Van egy webinterfészes app, amihez lehet hozzáadni olyan opciókat, hogy kitől, milyen tárggyal, nagyjából mikor kell emailnek jönni. Pl. megadom, hogy noreply@s1.abc.hu feladótól kell jönni "mysql backup" tárgyú mailnek, mondjuk 3:00 és 4:30 között. Sikeres, ha az email törzse tartalmazza a következő mintát: "Minden adatbázis mentése sikerült.". Sikertelen, ha tartalmazza a "NEM SIKERÜLT" mintát. A program X időnként ellenőrzi a dedikált fiókot, poppal letölti a leveleket, megnézi mi van benne, ennek megfelelően frissíti a kis nyilvántartását.
Reggel felkelek, és mondjuk egy nagioshoz hasonló webes felületen egyszerűen egy pillanat látom, hogy minden "zöld", azaz mind lefutott rendben, vagy látom hogy sárga (pl. 4:42-kor lett kész a mentés, volt warning, stb.), vagy piros (sikertelen mentés, vagy nem jött mail).
Létezik, használ valaki ilyet?
Köszi előre is.
- 8652 megtekintés
Hozzászólások
Hali
Hasonló megvalósításon én is gondolkozom már egy pár éve, de még nem valósítottam meg. Legutóbb épp a napokban jutott eszembe ismét a régi terv.
Én fájl szinten gondoltam feldolgozni az imapon lévő leveleket, de akár php-nak is van vmi imap okosság, amin keresztül le lehet kérdezni ezeket.
Ha jutok valami konkrét dologgal előre, jelzem.
Most jutott eszembe:
A script végén akár egy paraméterezett wget/curl sort is be lehet dobni ami egy adott php-t meghív, paraméterrel átadva, hogy melyik azonosítójú szerver melyik mentése milyen státusszal futott le. Ezzel pedig az adott php-ban már azt csinálsz amit akarsz:)
- A hozzászóláshoz be kell jelentkezni
Akár... Hogy hogyan, az már mindegy végül is. De meglévő megoldást te se ismersz ezek szerint :).
[szerk] Az emailes megoldás talán azért jobb, mert ha megszakad a netkapcsolat, vagy nem elérhető a szerver, ami gyűjti az infókat, akkor később újra próbálja küldeni a mailt, a wget meg failed és kész.
--
Discover It - Have a lot of fun!
- A hozzászóláshoz be kell jelentkezni
Nem.
Ha a wget failed, de volna mit küldeni, akkor csak egy sleep, és újra wget, amíg már nem failed, vagy $i==$max.
Beugró szintű feladat lehetne vizsgán.
- A hozzászóláshoz be kell jelentkezni
Valóban...
--
Discover It - Have a lot of fun!
- A hozzászóláshoz be kell jelentkezni
A levelfeldolgozasra amit irsz, Outlook/Exchange szabalyokkal megoldhato.
A masodikra ott a System Center Operation Manager, amit konnyu ilyen szabalyokkal ellatni.
Udv,
Marci
- A hozzászóláshoz be kell jelentkezni
Nincs se outlook, se exchange, és nem akarok egy vagyont se rákölteni.
--
Discover It - Have a lot of fun!
- A hozzászóláshoz be kell jelentkezni
Ha akárhogyan - pl. autoforwarddal - elérted, hogy egy *nixos gépen kössenek ki az értesítő leveleid, akkor pl. perl, és
use Mail::Box::Manager;
de kétségtelen, hogy ennél még egyszerűbb, amit említett itt az egyik kolléga, hogy wget/curl hívással adjon számot az eredményéről egy/több koncentrátornak az x gép.
- A hozzászóláshoz be kell jelentkezni
Végiggondolom hogyan legyen, mert ahogy látom akkor nincs erre "célprogram".
--
Discover It - Have a lot of fun!
- A hozzászóláshoz be kell jelentkezni
Ezt a szétválogatást a sieve simán tudja, ha minden igaz.
Ezt lehet, hogy a tárgyba is be kell raknod: "NEM SIKERÜLT"
Azt hiszem az adott sieve képességeitől függ, hogy tud-e levéltörzsben keresni.
Manapság szerintem minden IMAP szerver támogatja már a sieve-et, de a Dovecot és a Cyrus biztosan.
- A hozzászóláshoz be kell jelentkezni
Igen, ez egy jó ötlet...
[szerk] Viszont a hiányzó mail problémával ez se tud mit kezdeni.
--
Discover It - Have a lot of fun!
- A hozzászóláshoz be kell jelentkezni
SCOM-ban tudsz missing event alertet csinalni.
Udv,
Marci
- A hozzászóláshoz be kell jelentkezni
Csak tipp.
Ha a scriptet át lehet olyan szinten írni, hogy hiba esetén írjon az elküldendö mail végére annyit, hogy PROBLEM, vagy megfelelö futás esetén, hogy OK akkor már egyszerübb átnézni.
Ha gond van akkor megvizsgálod részletesen, ha nincs gond, akkor mehetsz a köv. mailre.
Ezt meg lehet oldani a backupot végzö parancsok visszatérö értékeinek vizsgálatával. Végülis utólag se túl nagy meló beleírni egy ilyet a scriptekbe (bár nem tudom mennyire komplex-ek).
A másik egyszerübb megoldás amit már javasoltak. Wget és valamilyen felület.
De akár valamilyen monitorozó rendszerbe is bedrótozható a dolog (pl: zabbix, nagios), ha van ilyen.
Akkor szintén talán legegyszerübb a fent már említett visszatérési értéket vizsgálni, ha másra nincs mód. Ha riaszt, akkor meg lehet nézni a log-ot/mail-t, ha nem akkor nincs gond. (Bár ettöl független heti/havi 1x azért át lehet nézni a dolgokat :) )
kicsit off:
Nálam az utóbbi müködik, és mail helyett log fájlt ír a backup script. Ha riaszt a zabbix megnézem a log fájlt és kész.
- A hozzászóláshoz be kell jelentkezni
Igen, ez meg van, tehát a sikeres és sikertelen mentés egyértelműen megkülönböztethető, de akkor is végig kell nézni az összes emailt.
Plusz amit írtam, ha egy-két mail hiányzik, arra ez a módszer nem jó.
Amit ajánlottak még ma IRC-n, snmp... És akkor bele lehet tenni nagiosba szépen.
--
Discover It - Have a lot of fun!
- A hozzászóláshoz be kell jelentkezni
A leveleket beküldöd OTRS-be, az meg csinál szép ticketet belőle?
- A hozzászóláshoz be kell jelentkezni
Szerintem kicsit ágyúval a verébre...
--
Discover It - Have a lot of fun!
- A hozzászóláshoz be kell jelentkezni
+1 lehetőség: backup script azon sora után, aminek a végkimenetele érdekes számodra
if [ $? -eq 0 ]; then
echo "minden OK"
else
echo "Gaz van" | mail -s "Backup FAIL" root at domain.hu
fi
Megfejelve annyival még, hogy az kimenetet betolod egy fájlba, amit másnap felülírsz vagy eltárolsz egy hétig.
Ha minden ok, nem jön mail, minden megy a maga rendjén.
Ha gond van, mailt kapsz, logot olvasol, melyet akár az else ágban el is küldhetsz magadnak
- A hozzászóláshoz be kell jelentkezni
Én szeretem látni, hogy minden rendben, szóval jöjjön csak mail arról is, ha success. :)
Plusz ezzel a nem jön mail résszel az a gond, hogy lehet hogy azért nem jön, mert még le se futott, azóta is megy, vagy lehet hogy el se indult...
--
Discover It - Have a lot of fun!
- A hozzászóláshoz be kell jelentkezni
A lehetőségek határtalanok. A kezdeti problem az volt, hogy túl sok mailt kapsz. Ezt kivédeni pedig csak ügyesen lehet.
n+1. ötlet: A napi scriptek otthagynak egy időbélyeget 1, 2, 3, stb fájlnév formájában. Egy másik szerverről rásshz-va forral átzavarod, hogy megvan-e hétvégén minden a 7. Ha paranoid vagy, minden nap délelőtt, hogy az esti cuccok lefutottak-e. Ha nem, mail. Ha lefutottak, csend van.
Persze mondhatod, elromolhat a másik gép is. Ha mindösszesen 1 mailt küldetsz vele, hogy ÉLEK! Akkor már is megkönnyítetted az életed:)
Amúgy meg ha hibára fut a crontabban futtatott parancs, cron úgyis böfög:) (ha dev/null-ba nem küldted)
n+2. ötlet:
Hasznosnak vélem a CentOS féle logwatch összesítőt, amit naponta kiküld. benne df -h, ha voltak errorok, warningok a kernel logban, akkor azokat is. Új/törölt felhasználók, programok, sikertelen belépések.
Ennek példájára szerverenként 1 mail, amit az adott gépen generálsz, feldolgozva az éjjeli scriptek kimenetelét.
tárgy: szerver1
Tartalom:
scipt1 OK
script2 OK
script3 FAIL
A szerverenkénti 1 maillel egyfüst alatt az is megvan, hogy még él az adott szerver (bár erre már inkább nagios).
- A hozzászóláshoz be kell jelentkezni
Minek szopatod magad? Ird logba, vagy kuldj snmp trapet, ha nem sikerult, vagy barmi. Hulyeseg belekeverni a leveleket.
--
"You're NOT paranoid, we really are out to get you!"
- A hozzászóláshoz be kell jelentkezni
Ha még nem késő, wordpress-ben van egy e-mail parser írva, elég szépen lehet használni, nem csak blog célokra. Nézd meg az milyen megoldást használ.
Egyébként egyetértek a felettem hozzászólóval, nem való erre a mail. Szerver oldalon összesítsd a jelentéseket egy adatbázisba, és x időpontban meg mehet ki a jelentés róla. Egyszerűbb, mint leveleket kezelgetni...ha arra gondolnál, hogy a már meglevő levelezést nem akarod megvariálni, szinte biztos vagyok benne, hogy egy ilyen speciális levelező beállítása több idő. Meglévő megoldásról nem tudok, kerestem hasonlót 2 éve.
- A hozzászóláshoz be kell jelentkezni
Nem késő, még egyáltalán nem volt időm vele foglalkozni... Talán jövő héttől...
--
Discover It - Have a lot of fun!
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
.
- A hozzászóláshoz be kell jelentkezni
Úgy látom pont egy éve jutott eszembe utoljára a téma... :)
Azóta valami fejlemény esetleg?
--
The Community ENTerprise Operating System
- A hozzászóláshoz be kell jelentkezni
A megoldás egész régóta megvan, nagiosnak hívják és nem kell e-mailekkel szarakodnod, egyáltalán.
--
Gábriel Ákos
http://i-logic.hu
- A hozzászóláshoz be kell jelentkezni
Használom a nagiost, de nem látom, hogy ebbe hogy tudnám bevezetni ezeket... Leírnád mire gondolsz?
--
The Community ENTerprise Operating System
- A hozzászóláshoz be kell jelentkezni
kb. a backupszkriptek level kuldes helyet fileba irnak, es a nagiossal monitorozod a fileokat.
(mondjuk van egy success meg egy fail konyvtarad, es figyeled mi kerul bele.)
- A hozzászóláshoz be kell jelentkezni
kb. a backupszkriptek level kuldes helyet fileba irnak, es a nagiossal monitorozod a fileokat.
(mondjuk van egy success meg egy fail konyvtarad, es figyeled mi kerul bele.)
- A hozzászóláshoz be kell jelentkezni
Minek bonyolítani? A script passzív check-ként betolja az állapotát a nagygolyósba, oszt' jónapot.
- A hozzászóláshoz be kell jelentkezni
1. file-ba lerakod a backup eredményét
2. csinálsz service-t (nrpe, script) amivel parse-olod ezeket a scripteket és eszerint állítod a státuszát.
értelemszerűen észreveszed a "nincs meg a file" jellegű helyzeteket is
--
Gábriel Ákos
http://i-logic.hu
- A hozzászóláshoz be kell jelentkezni
+1
--
"Pontosan ez a ti bajotok. Ez a kurva nagy csőlátás. [...]" (bviktor)
- A hozzászóláshoz be kell jelentkezni
Minek bonyolítani? A script passzív check-ként betolja az állapotát a nagygolyósba, oszt' jónapot.
+1 Gondoltam végigfutom, hogy ne legyen kétszer beírva...
Szerintem ez a legelegánsabb megoldás és egyáltalán nem bonyolult.
- A hozzászóláshoz be kell jelentkezni