Author Topic: Max Open Files  (Read 3057 times)

goldp

  • Zen Apprentice
  • *
  • Posts: 9
  • Karma: +1/-0
    • View Profile
Max Open Files
« on: March 21, 2013, 11:05:25 am »
Sziasztok!

Egy Zentyal 3.0 levelezőszervert üzemeltetek IMAP,IMAPS,POP3S protokolokkal és Roundcube adja a webes elérést hozzá. Több mint 200 postafiók van használatban és gyakran előfordul, hogy több mint százan vannak valamilyen módon bejelentkezve, ami azt eredményezi, hogy (hibaüzenettel kísérve) nem lehet belépni. Bogarásztam a neten és azt találtam, hogy az egyszerre 1024 megnyitható fájl kevés lehet.

Arra szeretnék választ kapni, hogyan lehet a Zentyal-ban megnövelni a Max Open Files 1024-es alapértékét. Nekem nem sikerül...

A következőket próbáltam:
- Az "/etc/security/limits.conf"-ba illesztettem ezt: "*  soft nofile 3072"
- Az "/etc/sysctl.conf-ba"-ba illesztettem ezt: "fs.file-max = 65535"

Bármilyen ötletet szívesen fogadok.


zeta

  • Zen Apprentice
  • *
  • Posts: 31
  • Karma: +1/-0
    • View Profile
Re: Max Open Files
« Reply #1 on: March 22, 2013, 06:14:34 am »
hibauzenetet plz.
en egyebkent a dovecot, roundcube, httpd konfigot/logokat kezdenem el nezegetni.

julio

  • Guest
Re: Max Open Files
« Reply #2 on: March 23, 2013, 01:58:45 pm »
Találtam valamit, ami lehet, hogy segít neked (4. bekezdés), meg másoknak is, akik >200 user-el üzemeltetik zentyal szerverüket:
http://tecnologia.2020mobile.es/improving-zentyal-proxy-performance-squid-dansguardian/
« Last Edit: March 23, 2013, 02:00:49 pm by julio »

goldp

  • Zen Apprentice
  • *
  • Posts: 9
  • Karma: +1/-0
    • View Profile
Re: Max Open Files
« Reply #3 on: March 24, 2013, 10:29:14 pm »
Zeta,
Kösz, hogy foglalkozol a problémámmal.

Részlet a mail.err logfájlból:
Mar 19 10:09:17 mail dovecot: auth: Error: Master requested auth for nonexistent client 23476
Mar 19 10:09:17 mail dovecot: imap: Error: Internal auth failure (client-pid=23476 client-id=1)
Mar 20 11:52:13 mail dovecot: imap-login: Error: read(anvil) failed: EOF
Mar 20 11:53:32  dovecot: last message repeated 19 times

És csatoltam is a /var/log/roundcube/error fájlból egy részletet.

goldp

  • Zen Apprentice
  • *
  • Posts: 9
  • Karma: +1/-0
    • View Profile
Re: Max Open Files
« Reply #4 on: March 24, 2013, 10:32:47 pm »
Julio,
Kösz a linket, de ezt már pár napja próbáltam. Esetleg újra kellene fordítani a kernelt a kívánt beállításokkal?
A linux nem az erősségem...

julio

  • Guest
Re: Max Open Files
« Reply #5 on: March 25, 2013, 08:18:36 pm »
Nem kell hozzá a kernelt újrafordítani, csak a beszúrod a következő beállításokat a két fájlba:

Code: [Select]
/etc/sysctl.conf
fs.file-max = 65535
net.core.rmem_default = 262144
net.core.rmem_max = 262144
net.core.wmem_default = 262144
net.core.wmem_max = 262144
net.ipv4.tcp_rmem = 4096 87380 8388608
net.ipv4.tcp_wmem = 4096 65536 8388608
net.ipv4.tcp_mem = 194976 259968 389952
net.ipv4.tcp_low_latency = 1
net.core.netdev_max_backlog = 4000
net.ipv4.ip_local_port_range = 1024 65000
net.ipv4.tcp_max_syn_backlog = 16384

Code: [Select]
/etc/security/limits.conf
* – nofile 65535

Szerver újraindítás szükséges a változtatások érvényesítéséhez!!!
Újraindítás után a következő parancsokkal lehet ellenőrizni a beállításokat:

/etc/sysctl.conf
Code: [Select]
sysctl -a less
/etc/security/limits.conf
Code: [Select]
ulimit -a

goldp

  • Zen Apprentice
  • *
  • Posts: 9
  • Karma: +1/-0
    • View Profile
Re: Max Open Files
« Reply #6 on: March 25, 2013, 10:14:03 pm »
Pontosítok.
A dovecot user-re vonatkozóan kellene megemelnem a "nofile soft" értéket, mert az nem mozdul el az 1024-ről.
A shell-ben sikerül változtatni az értéket, de valamiért a dovecot és a dovenull esetében hatástalan marad a minden kipróbált beállítás.
Lehet ez nem is állítható?

Jelenleg a julio által javasoltak elvégzése után ez a helyzet:
Max Open Files -> Soft Limit
amavis 1024
dovecot 31
dovenull 1024
ebox 1024
postfix 4096
Ezeket az eredményeket a cat /proc/<process ID>/limits paranccsal kaptam.

(Az ulimit -a eredménye bash shell-ben 4096)
« Last Edit: March 28, 2013, 09:40:32 pm by goldp »

goldp

  • Zen Apprentice
  • *
  • Posts: 9
  • Karma: +1/-0
    • View Profile
Re: Max Open Files
« Reply #7 on: March 28, 2013, 10:21:01 pm »
Sikerült megoldanom a problémámat.
Okulásnak írom le, hogy milyen buktatók voltak, és végül milyen egyszerű volt a megoldás.

A hiba, mint írtam, hogy bizonyos belépett IMAP-os felhasználó után, hibaüzenetek jelentek meg a logfájlokban és a dovecot nem engedett új belépéseket.

A mail.err fájban megjelent bejegyzésre // Mar 26 16:11:30 mail dovecot: auth: Error: read(anvil-auth-penalty) failed: EOF // gúgliztam és egy fórumon azt olvastam, hogy ez egyértelműen dovecot/anvil process, vagy valamilyen egyéb csatlakozó process max open file soft limit-álása miatt van. Azt is írták, hogy a process-ekhez kötődő limiteket kell figyelni. Ez most úgy tűnik nem teljesen igaz, vagy létezik más megoldás is, mint a file limit emelése.

Mivel ezen a fórumon (és máshol sem) találtam megoldást, végül elkezdtem olvasgatni a dovecot dokumentációt  ;)
Ide tartozik még, hogy az első keresési találatok mindig a dovecot 1.x wikijére vonatkoztak, ami először elkerülte a figyelmem... Szóval gúglizni is ésszel kellett volna és egyből a 2-es dovecot-ra keresni.

A lényeg, ha valaki több, mint 100 imap-os felhasználónak szeretne csekély linux-os tudással Zentyal 3.0 levelezőszervert, akkor ezeket a beállításokat fűzze hozzá az usr/share/zentyal/stubs/mail/dovect.conf.mas fájlhoz:
(10-master.conf fájlba írva hatástalan volt.)

Általános beállítások rész (én neveztem el force config-nak, így voodoo-ztam)
Code: [Select]
##
## FORCE CONFIG
##
auth_cache_negative_ttl = 1 hours
auth_cache_size = 10 M
auth_cache_ttl = 1 hours
config_cache_size = 2 M
debug_log_path =
default_client_limit = 1000
default_idle_kill = 60
default_internal_user = dovecot
default_login_user = dovenull
default_process_limit = 300

IMAP specifikus beállítások rész
Code: [Select]
##
## IMAP specific settings
##
service imap-login {
  inet_listener imap {
    port = <% $imapPort %>
  }
  inet_listener imaps {
    port = <% $imapsPort %>
  }
  privileged_group =
  process_min_avail = 2
  protocol = imap
  service_count = 1
  type = login
  user = $default_login_user
  vsz_limit = 256M
}

(A process-ek száma függhet a processzormagok számától)

Már két napja nincs említésre méltó hiba a naplófájlokban, és volt, hogy a belépett (az IMAP szerverre csatlakozott) felhasználók száma meghaladta a 140-et.

 
« Last Edit: March 29, 2013, 01:23:44 pm by goldp »

goldp

  • Zen Apprentice
  • *
  • Posts: 9
  • Karma: +1/-0
    • View Profile
Re: Max Open Files (SOLVED)
« Reply #8 on: March 29, 2013, 01:30:58 pm »
A hibák nem jelentkeztek újra.

--- end of transmission ---

zeta

  • Zen Apprentice
  • *
  • Posts: 31
  • Karma: +1/-0
    • View Profile
Re: Max Open Files
« Reply #9 on: April 05, 2013, 10:56:53 am »
grat, gondoltam, hogy valahol a dovecot kornyeken van a szuk keresztmetszet, azert nem tudtam kozelebbit mondani errol, mert nalam nem a zentyal uzemel levelezo szerverkent, hanem egy belso halozaton talalhato gep, de hasonlo megoldassal, postfix/dovecot/roundcube megspekelve eset virus/spamfilterrel, es egy a bejelenkezeseket meggyorsito imapproxyval.

a megoldasodhoz annyit tennek hozza, hogy ne a /usr/share/zentyal/stubs/mail/dovect.conf.mas file-t modositgasd, mert ez a kovetkezo mail modul update-nel felul fog irodni. a helyes megoldas az mindig az, hogy a /usr/share/zentyal/stubs/modulnev konyvtarbol at kell masolni azt az allomanyt, amit modositani szeretnel a /etc/zentyal/stubs/modulnev konyvtarba es ott kell modositani. maga a  rendszer es a modulok ugy epulnek fel, hogy az egyes modulok inditasanal megnezi az indito szkript, van e valami a /etc/zentyal/stubs/modulnev konyvtarban es ha van, akkor azt hasznalja.

goldp

  • Zen Apprentice
  • *
  • Posts: 9
  • Karma: +1/-0
    • View Profile
Re: Max Open Files
« Reply #10 on: April 09, 2013, 11:15:39 pm »
Kipróbáltam és tényleg úgy van. 
A /etc/zentyal/stubs/modulnev alá betett conf.mas fájlokat használja a zentyal.
Ez hasznos infó.
Kösz.

zeta

  • Zen Apprentice
  • *
  • Posts: 31
  • Karma: +1/-0
    • View Profile
Re: Max Open Files
« Reply #11 on: April 10, 2013, 12:15:42 pm »
termeszetesen nem en talaltam ki, benne van a dokumentacioban :)

http://doc.zentyal.org/en/develop.html#advanced-service-customisation

udv