Több gépes mail rendszer

Sziasztok,

Előre is elnézést ha már volt ez a téma én próbáltam keresni itt is meg guglin is egyelőre nem találok megfelelő megoldást.
Egy nagyon elavult mail rendszert kellene felújítanom illetve upgradelnem, az elvárás az hogy több gépes legyen (load balance?!). A software-s részt megoldottam postfix + clamsmtp + dspam + dovecot + ldap mindegyikhez. A problémám az, hogy nem tudom hogyan oldjam meg azt, hogy mindez több gépen fusson, konkrétan a levelek tárolásával nem tudom mit csináljak, külső storage vagy NFS vagy valami egyéb?! Feltételezzük, hogy van smtpA és smtpB valamint imapA és imapB szerver ezek hogy érhetik el a leveleket? A load balance vagy DNS vagy FreeBSD NAT megoldás esetleg valami Cisco ez majd kiderül.

Üdv.
bzg

Hozzászólások

Egy lehetoseg a dbmail: fast and scalable sql based mail services Igy imap szerverbol lehet amennyit akarsz, mind egy* kozos sqldb-bol huzzak az adatot.

* Termeszetesen az sqld-ket is clusterelheted.

Esetleg Cyrus Murder?
--
Sokan nincsenek tudatában annak, / hogy egyszer mindenki meghal. / Akik ráébrednek erre, / azonnal abbahagyják az ellenségeskedést.

A loadbalance a bejövő SMTP forgalomnál a levélszűrésen működhet. Nem tudom mekkora a forgalmad, de alapesetben szerintem egy heartbeat+drbd -s megoldás (linux-ha).

Meg en sem tudom mekkora a forgalom, nem az en rendszerem csak beugrokent csoppentem bele :) Amit eddig tudok az alapjan nem fog menni a DBMail meg a DRBD sem mert nagyon nem linux van a kornyeken, Solaris ill. *BSD, szoval valami storage vagy osztott FS-re gondoltam, bar nem tudom, hogy jo volt-e az otlet, ezert fordultam hozzatok.

-- Soha ne vitatkozz idiotakkal! Lesulyedsz az O szintjukre es legyoznek a rutinjukkal !!! --

A Solarist konkrétan nem ismerem. :) FreeBSD-re perpill nemnagyon van drbd jellegű cucc.

Alapkoncepció lehet, hogy több frontend SMTP van, amik vírus/spam és egyebet szűrnek, illetve visszavágják a nemlétező címzetteket és a nem kezelt domaineket. Mindegyik frontend egy pop3/imap szerverre tolja tovább a maileket, amin már lehet osztott storage. Személy szerint az a véleményem, hogy a pop3 és imap az nem okoz óriási terhelést még 2000 fiókkal sem. Jelenleg a nálunk futó kb. 500-600 fiókot röhögve viszi a dl380g2-nk (dual p3 14000 meg smartarray megminden), úgy hogy közben ő szűri a leveleket. A mailfiókokat effektív kezelő gépnél inkább a redundancia tűnik a fő elemnek.

En ismerem a Sol-t nem azzal van a problemam:) A pop3 valoban nem okoz nagy terhelest, de imap-al mar lattam gepeket megfekudni :( Jelenleg ha minden igaz akkor egy 20.000 postafiokrol van szo, eppen ezert gondoltunk a dspam-re es nem valami spamassassinra, a dspam igaz alapbol mindent atenged de kis tanitas utan igencsak jo a hatekonysaga a tapasztalataink alapjan. Nagyon elorehaladott stadiumban van a learning feature integralasa a dovecot imap-ba.

-- Soha ne vitatkozz idiotakkal! Lesulyedsz az O szintjukre es legyoznek a rutinjukkal !!! --

Ha a sebesseg a lenyeg, es a penz nem szamit, akkor SAN, es tobb frontend round robin load balancinggal, ez teljesen jol megoldja a problemad szerintem.

Ha kicsit arerzekenyebb, akkor csinald meg magadnak a SAN-t tobb geppel.

20k mailbox azert meg nem a vilag vege, sokkal lenyegesebb, hogy adott idoben mennyire hasznaljak parhuzamosan.

A bejovo levelekre meg igazabol irtad a megoldast (mint ahogy ezt is).

Szoval meg mindig nem ertem, mi a konkret kerdesed? Ja, bocs, mar latom, hogy hogyan ered el a leveleket. Erre szerintem a legegyszerubb, bar talan tulsagosan fapados es em tulzottan formalhato megoldas, hogy szetosztod, pl. 2x10k userre. A fele szolgalja ki ezt, a masik fele a masikat.

tompos

ui.: Remelem ertheto:)

Egy apro gubanc azert lehet ezzel. Amennyire en tudom, de javits ki, a hash_drv indulaskor egy file-bol betolti a memoriaba a tokeneket. Ez egy gepen nem is problema, de hogy oldod meg, hogy 2-3-4-5 mx gepen szinkronban legyenek a felhasznalonkenti token file-ok (a tanitast is beleertve)?

Btw. mennyi diszket (MB-ban) szansz egy felhasznalo token adatbazisara?

ASK Me No Questions, I'll Tell You No Lies

Bizom benne, ha Te nem akkor ki mas segithetne? :D

Btw: esetleg valaki nincs a "nagy" szolgaltatok kozeleben (T*, Freemail, Citromail, ...) ezek a nagyok mivel oldjak meg? Esetleg penzes megoldas is erdekel, persze nem gondolom hogy itt valaha is lesz millios postafiokszam, de mint kivancsisag nagyon furja az oldalam.

-- Soha ne vitatkozz idiotakkal! Lesulyedsz az O szintjukre es legyoznek a rutinjukkal !!! --

A citromail MPP-t hasznal, a Freemail 18 gepet tart fenn csak a spam kezelesere, es legalabbis a levelek header-je alapjan spamassassin-t hasznalnak. De lattam mar ISP-nel kaspersky anti-spamet. Fizetos meg a Barracuda, amely appliance dobozkent erheto el (trey-ek cege valtott ra nem olyan regen, es o meg van vele elegedve), es meg van egy millio fizetos anti-spam termek.

ASK Me No Questions, I'll Tell You No Lies

Milyen jol informalt vagy :) De lehet kicsit felreertettel, en a hatterre voltam kivancsi, a levelek fogadasara es kuldesere van otletem, a kezbesitesre es tarolasra gondoltam, hogy ezek hogyan oldjak meg.

-- Soha ne vitatkozz idiotakkal! Lesulyedsz az O szintjukre es legyoznek a rutinjukkal !!! --

Ezek nyilvanos infok, kulonfele honlapokrol :-)

A levelek kezbesitese a legtobb helyen ugy mukodik, hogy akarhany darab mx fogadja a leveleket, ahol virus- es spamszures, majd tovabbitjak a leveleket arra a gepre (v. gepekre), ahol a userek mailbox-ai vannak. Forgalom/terheles kerdese, hogy eleg-e a mailbox-okat 1 gepen tarolni vagy tobb gepre kell szetszorni. 20k usernel a backend mar valami NAS/SAN szokott lenni. Ha pedig szet kell szorni a mailbox-okat tobb gep kozott, akkor erdemes azt user id alapjan megtenni, pl. egyik gep az uid=0-10k userek mailbox-ait tarolja, mig a masik az uid=10.001k-20k usereket.

Ami a spamszurest illeti, tortenhet az mx-eken, de lehet a mail szerverekre is haritani, ez felallastol, levelszamtol, stb. is fugg.

ASK Me No Questions, I'll Tell You No Lies

Koszonom az infokat kezdunk a lenyeghez erni ugy erzem :) legalabbis most szamomra kimondtad a kulcsszot es erre szeretnek rakerdezni, hogy mondjuk postfix-el hogy lehet megoldani?

"pl. egyik gep az uid=0-10k userek mailbox-ait tarolja, mig a masik az uid=10.001k-20k usereket."

-- Soha ne vitatkozz idiotakkal! Lesulyedsz az O szintjukre es legyoznek a rutinjukkal !!! --

A transport map-et kell birizgalni. Ha mysql-ben gondolkozol, akkor lehet pl. igy:

main.cf:
transport_maps = mysql:/etc/postfix/transport.cf

transport.cf:
hosts = mysqlhost
user = mailreader
password = secret
dbname = mailusers
query = (trey mod_security-je nem hagyja beirni a qry-t, de innen megtudhato, mi az: http://www.postfix.org/mysql_table.5.html)

A transport_table tartalma meg ilyesmi lehet (ahol az 1.2.3.* gepeken vannak a mailbox-ok):

smtp:1.2.3.4  a@mail.aaaa.fu
smtp:1.2.3.5  b@mail.aaaa.fu

De ugyanez mehet a szokasos db file-okkal is, amikor a kesz db file-okat rsync-eled at az mx-ekre:

a@mail.aaaa.fu smtp:1.2.3.4
b@mail.aaaa.fu smtp:1.2.3.5

(bovebben: http://www.lxtreme.nl/index.pl/docs/linux/dovecot_postfix_pam#configuri…)

ASK Me No Questions, I'll Tell You No Lies

Egyebkent valakinek van konkret tapasztalata az MPP-vel? Mert ez a 400 - 500 level/masodperc szurese virus es spam teren eleg kemenynek tunik en orulnek ha meg tudnam nyitni elolvasni es bezarni a levelet nemhogy meg mindenfele content filtert raeresszek vagy ez teljesen realis?

-- Soha ne vitatkozz idiotakkal! Lesulyedsz az O szintjukre es legyoznek a rutinjukkal !!! --

Amikor orankenti millio feldolgozott levelrol hallok, meg 0.00% fals pozitivokrol, meg 99.9999% spam felismeresrol, kisse mindig elfog a gyanakvas. Javaslom elolvasni Zdziarski irasat http://www.zdziarski.com/papers/justifying.html, amiben azt irja: trust no one.

Szerencsere az MPP-tol le lehet tolteni egy demot, igy magad gyozodhetsz meg arrol, hogy valoban elvisz-e 4-500 levelet/sec (ha ez valoban igy van, az rendkivuli teljesitmeny, egy ora alatt ~1.5M level).

Nyilvan attol is fugg, hogy milyen (es hany) vason fog majd futni, de ha figyelembe vesszuk, hogy tobb anti-spam termek (pl. spamassassin is) es vagy 2-3 antivirus termek is atvizsgal egy levelet, komolyan meg lennek lepve, ha valoban kepes lenne a 4-500 level/sec teljesitmenyre. Probald ki, aztan mondd el, mire volt kepes.

ASK Me No Questions, I'll Tell You No Lies

"A problémám az, hogy nem tudom hogyan oldjam meg azt, hogy mindez több gépen fusson, konkrétan a levelek tárolásával nem tudom mit csináljak, külső storage vagy NFS vagy valami egyéb.."

Profán dolog, de a fuse nem lenne jó erre?

Központi NFS szerver, Maildir.
Itt nyilván ez lehet a szűk keresztmetszet rendelkezésre állás szempontjából, így vehetsz rá egy jó clusterezhető NAS-t, ha annyi pénz nincs rá, akkor pl. valamilyen entry level FC vagy SAS storage, és szoftveres cluster, a Sun Cluster pl. tud HA NFS-t. Ez persze attól függ hány frontend van, ha kevés, akkor ki lehet a dedikált fájlszervereket spórolni, és minden gépet a clusterbe tenni valami global fájlrendszerrel. NFS-es megoldás előnye persze hogy a frontendek lehetnek igazán olcsó, "throwaway" darabok...

Kivancsi vagyok, hol tart most a projekt?

ASK Me No Questions, I'll Tell You No Lies

Arra en is :) Sajna egeszsegugyi kenyszervakacio miatt szunetel :( Egyebkent mint otlet felmerult a CFS ennek kiprobalasa lesz a kovetkezo lepes, persze jo lenne ha mar vegre kijonne a Solarisos verzio is es akkor az all in one megvalosulhatna :D

-- Soha ne vitatkozz idiotakkal! Lesulyedsz az O szintjukre es legyoznek a rutinjukkal !!! --