Andrea Cirulli wrote:
Ciao a tutti,
abbiamo nei nostri sistemi openldap 2.3.39, gestiamo l'autenticazione ai
sistemi di circa 2000 server con 19 server ldap, un Master e 18 slave.
In questi ultimi giorni riscontriamo problemi, il server Master va giù
continuamente.
DI seguito il log nella parte che ritengo saliente:
connection_get(184)
connection_get(184): got connid=18220
connection_read(184): checking for input on id=18220
TLS trace: SSL_accept:error in before/accept initialization
TLS: can't accept.
TLS: error:07064041:memory buffer routines:BUF_MEM_grow:malloc failure
buffer.c:115
connection_read(184): TLS accept failure error=-1 id=18220, closing
connection_closing: readying conn=18220 sd=184 for close
connection_close: conn=18220 sd=184
daemon: removing 184
conn=18220 fd=184 closed (TLS negotiation failure)
daemon: select: listen=7 active_threads=1 tvp=zero
daemon: select: listen=8 active_threads=1 tvp=zero
daemon: select: listen=9 active_threads=1 tvp=zero
daemon: select: listen=10 active_threads=1 tvp=zero
daemon: select: listen=7 active_threads=1 tvp=zero
daemon: select: listen=8 active_threads=1 tvp=zero
daemon: select: listen=9 active_threads=1 tvp=zero
daemon: select: listen=10 active_threads=1 tvp=zero
daemon: selectfailed count 2 err (12): Not enough space
daemon: select: listen=7 active_threads=1 tvp=zero
daemon: select: listen=8 active_threads=1 tvp=zero
daemon: select: listen=9 active_threads=1 tvp=zero
daemon: select: listen=10 active_threads=1 tvp=zero
daemon: select: listen=7 active_threads=1 tvp=zero
daemon: select: listen=8 active_threads=1 tvp=zero
daemon: select: listen=9 active_threads=1 tvp=zero
daemon: select: listen=10 active_threads=1 tvp=zero
daemon: selectfailed count 4 err (12): Not enough space
daemon: select: listen=7 active_threads=1 tvp=zero
daemon: select: listen=8 active_threads=1 tvp=zero
daemon: select: listen=9 active_threads=1 tvp=zero
daemon: select: listen=10 active_threads=1 tvp=zero
daemon: select: listen=7 active_threads=1 tvp=zero
daemon: select: listen=8 active_threads=1 tvp=zero
daemon: select: listen=9 active_threads=1 tvp=zero
daemon: select: listen=10 active_threads=1 tvp=zero
daemon: selectfailed count 6 err (12): Not enough space
daemon: select: listen=7 active_threads=1 tvp=zero
daemon: select: listen=8 active_threads=1 tvp=zero
daemon: select: listen=9 active_threads=1 tvp=zero
daemon: select: listen=10 active_threads=1 tvp=zero
daemon: select: listen=7 active_threads=1 tvp=zero
daemon: select: listen=8 active_threads=1 tvp=zero
daemon: select: listen=9 active_threads=1 tvp=zero
daemon: select: listen=10 active_threads=1 tvp=zero
daemon: selectfailed count 8 err (12): Not enough space
daemon: select: listen=7 active_threads=1 tvp=zero
daemon: select: listen=8 active_threads=1 tvp=zero
daemon: select: listen=9 active_threads=1 tvp=zero
daemon: select: listen=10 active_threads=1 tvp=zero
daemon: select: listen=7 active_threads=1 tvp=zero
daemon: select: listen=8 active_threads=1 tvp=zero
daemon: select: listen=9 active_threads=1 tvp=zero
daemon: select: listen=10 active_threads=1 tvp=zero
daemon: selectfailed count 10 err (12): Not enough space
daemon: select: listen=7 active_threads=1 tvp=zero
daemon: select: listen=8 active_threads=1 tvp=zero
daemon: select: listen=9 active_threads=1 tvp=zero
daemon: select: listen=10 active_threads=1 tvp=zero
daemon: select: listen=7 active_threads=1 tvp=zero
daemon: select: listen=8 active_threads=1 tvp=zero
daemon: select: listen=9 active_threads=1 tvp=zero
daemon: select: listen=10 active_threads=1 tvp=zero
daemon: selectfailed count 12 err (12): Not enough space
daemon: select: listen=7 active_threads=1 tvp=zero
daemon: select: listen=8 active_threads=1 tvp=zero
daemon: select: listen=9 active_threads=1 tvp=zero
daemon: select: listen=10 active_threads=1 tvp=zero
daemon: select: listen=7 active_threads=1 tvp=zero
daemon: select: listen=8 active_threads=1 tvp=zero
daemon: select: listen=9 active_threads=1 tvp=zero
daemon: select: listen=10 active_threads=1 tvp=zero
daemon: selectfailed count 14 err (12): Not enough space
daemon: select: listen=7 active_threads=1 tvp=zero
daemon: select: listen=8 active_threads=1 tvp=zero
daemon: select: listen=9 active_threads=1 tvp=zero
daemon: select: listen=10 active_threads=1 tvp=zero
daemon: select: listen=7 active_threads=1 tvp=zero
daemon: select: listen=8 active_threads=1 tvp=zero
daemon: select: listen=9 active_threads=1 tvp=zero
daemon: select: listen=10 active_threads=1 tvp=zero
daemon: selectfailed count 16 err (12): Not enough space
daemon: abnormal condition, shutdown initiated.
Come si vede nell'ultima riga ad un certo punto viene comandato lo shutdown.
Potete aiutarmi, mi sembra che il tutto parta da un'autenticazione TLS.
A quanto pare fallisce una malloc di libcrypto (parte di OpenSSL) per
carenza di memoria. Dovresti verificare se in effetti il sistema su cui
si verifica il problema e' a corto di memoria. In questo caso, potrebbe
trattarsi di una memory leak in OpenLDAP (o in OpenSSL), oppure di una
errata configurazione che consente a slapd di usare piu' memoria
rispetto a quanta disponibile. Per capirlo occorre verificare:
- quanta RAM hai
- come e' configurato slapd (cachesize e simili di back-bdb)
- come e' configurato Berkeley DB (DBCONFIG)
puoi fornire queste informazioni?
Ciao, p.
Ing. Pierangelo Masarati
OpenLDAP Core Team
SysNet s.r.l.
via Dossi, 8 - 27100 Pavia - ITALIA
http://www.sys-net.it
-----------------------------------
Office: +39 02 23998309
Mobile: +39 333 4963172
Fax: +39 0382 476497
Email: a...@sys-net.it
-----------------------------------
_______________________________________________
OpenLDAP mailing list
OpenLDAP@mail.sys-net.it
https://www.sys-net.it/mailman/listinfo/openldap