Šta je novo?

Ogromne kolicine webmail accountova - problemi sa inodima

Bunarssen

Cenjen
Učlanjen(a)
14.05.2013
Poruke
54
Poena
160
Potrebno mi je izmedju 20 000 novih webmail accountova mesecno. Svaki od tih mailova prima od 2 do 4 jednostavna confirmation maila, dakle bez ikakvih attachmenta.

Koristili smo a2hosting VPS, ali je tu bio limit na 1 milion inoda. Presli smo limit, kao i alarmantni limit od 1.5 miliona, i taj VPS puca i vise nije moguce koristiti ga.

Zakupili smo dedicated server koji ima 13 miliona inoda, provereno preko SSH komandom dh -i

Tesitranjem sam primetio da se jako lako penje broj inoda za svaki novi webmail acc. Nastane oko 30 inoda, za svaki kreirani account, kao i jos nekoliko za svaki primljeni mail.
Brisanje pristiglog maila smanji za 1 inod, koliko je sam email zauzima.

Brisanje accounta povrati oko 25 inoda, dakle neki fajlovi ostanu i dalje. Generise se dosta log fajlova, pa me zanima koliko su oni bitni za funkcionisanje email acca.
Ipak, ne mozemo brisati same accountove, treba da nam budu do

Ima li neko savet kako bismo mogli da smanjimo inode po accountu?
 
20000 email akaunta mesečno? za šta?
 
Inode ima veze sa file sistemom. Povećate hdd.
 
Pretpostavljam da trenutno kreiras unix user za svaki email nalog i skladistis email poruke u home dir? Resenje je da koristis IMAP/POP gateway i MTA koji podrzava mailbox u recimo MySQL-u, trebalo bi da dovecot/postfix mogu da se konfigurisu na taj nacin, a Zarafa server tako funkcionise po defaultu.
 
Inode je reprezentacija fajla u fajl sistemu sa podacima kao što je veličina, dozvole i sllično. Pošto svaki fajl mora da ima inode, a njihov broj je ograničen, mnogo sitnih fajlova može da iskoriste sve raspoložive inodes, imao sam prilike da vidim tako nešto. Jedno od rešenja bi mogla biti i promena fajl sistema u neki koji koji ne koristi index nodes, kao recimo ReiserFS ili BTRFS.
 
Jednom sam imao sličan problem s file sistemom za CVS repozitorij. Zapravo, prvi put da mi se dogodilo da su inode-ovi 100% zakucani. Rješenje je bio ReiserFS (+ "notail" mount opcija za "gušće" pakovanje). No s obzirom da se ReiserFS v3.x više ne održava aktivno, i distribucije ga više ne pakuju. Logični izbor bi bio BTRFS.
 
@e6111 Da, mail accounti se importuju iz excel fajla, i do sada je sistem sam generisao sve u /home/mail folderu, identicnu strukturu za svaki pojedinacni account, pa su se brzo pojeli inodi na VPSu.
- Jel ima negde da se zakupi takav server? Da se plati i odma krene sa upotrebom

@morbius @Ace Rimmer imate li neki predlog za takvo gotovo resenje? Da se plati i odma krene sa upotrebom

Krucijalno je da mailovi mogu da se importuju iz excel/csv fajlova
 
Mozes da na postojecem serveru napravis reiserfs/btfs loop image i njega mount-ujes kao /home.

Kod:
truncate -s 1024M /home.img
mkfs.reiserfs -f -q /home.img

zatim uradis mount za kopiranje postojecih fajlova

Kod:
mkdir -p /mnt/home
mount -o loop /home.img /mnt/home
rsync -av /home/ /mnt/home

dodas loop image u /etc/fstab fajl za automatski boot mount

Kod:
/home.img  /home  reiserfs  loop,defaults  0  0

Najbolje je da ovo prvo testiras na svom racunaru u virtualnoj masini kako bi ti bilo jasno sta tacno radis svakim korakom.
 
Je l' moguće da nikome nije palo na pamet da podigne bazu a ne da siluje fajlsistem?
 
Krenulo je na sitno, a zatim je potraznja postala nerealna, a rok je bio "za juce" tako da je ostalo na ovome do sad

Ako znas za nekog konkretno resenje slobodno pisi

Glavni zahtevi su dakle
- generisanje (import) novih email adresa iz excela
- svaka adresa ima pristup samo svojim mailovima, a ne vise adresa u 1 mailbox
- brza implementacija
 
Šta god da radiš, verovatno to ne radiš iz hobija, pa je samo pitanje koliko posao zarađuje i kol'ki su mogući gubici ukoliko sistem udari u granicu skalabilnosti, a čini se da već jeste. Po meni bi trebalo da angažuješ nekoga da ti to napravi čestito. Ako se ne bude radio razvoj namenskog rešenja, onda barem diplojment nekog krštenog proprijetari ili rešenja otvorenog koda.

Kol'ko znam, Eksel može da se poveže sa Akses bazom, a verovatno i sa MS SQL serverom koji čak ima i besplatnu verziju. Ne znam šta koristiš kao mejl server, ali i za to postoje razna rešenja. Prvo postaviti novi sistem, onda ga testirati, onda konvertovati postojeće korisnike i njihove podatke, pa opet testirati. Na kraju, zatvoriti operaciju na par sati u nedelju uveče i uraditi migraciju. To je najlakše, a nekakve migracije "na živo" i slične zezancije koštaju mnogo više i iziskuju resurske koje ti verovatno nemaš.

Što se te tvoje budževine tiče, prvo što mi pada na pamet je particionisanje diska na više fajlsistema pa onda njihova konkatenacija, odnosno objedinjavanje pod LVM-om, ali i to rešenje ima dva problema - dostupnost (koja se još nekako može savladati) i skalabilnost sa kojom ćeš kad tad morati da se pozabaviš. Što duže čekaš samo produbljuješ sebi problem, to pod hitno treba menjati. Jeste sada već kasno, ali ne možeš da veruješ kol'ko će kasnije da bude "još kasnije". :S:

P.S. Tek sad pažljivo pročitah celu diskusiju pa vidim da je to na Linuksu. Kreiranje posebnog korisnika na sistemu za svaki i-mejl nalog je katastrofa. Postoje razna druga rešenja, e6111 je krenuo da ti objašnjava nešto u tom pravcu. Nećeš ništa uraditi sa savetima preko foruma, angažuj nekoga pod hitno.
 
Poslednja izmena:
Nazad
Vrh Dno