LINUX.ORG.RU
ФорумAdmin

количество открытых файлов для OpenLDAP


0

0

Запустили несколько новых серверов и возникла проблема связанная со стандартным ограничение на количество одновременно открытых файлов для OpenLDAP. Проблему сейчас удается решить с помощью ulimit -n <число> и перезапуском лдапа. Но хотелось бы решить проблему раз и на всегда. Простое добавление в файл запуска сервиса ulimit -n <число> не помогает. Ось SLES, нынишний файл запуска демона:

#! /bin/sh

# Copyright (c) 2003 SuSE AG Nuernberg, Germany.

# # Author: adrian@suse.de, based on template from source package

#

# /etc/init.d/slpd

# and its symbolic link

# /usr/sbin/rcslpd

# ### BEGIN INIT INFO

# Provides: openslp slpd

# Required-Start: $network $named

# Required-Stop:

# Default-Start: 3 5

# Default-Stop: 0 1 2 4 6

# Description: slpd - OpenSLP daemon for the Service Location Protocol ### END INIT INFO

. /etc/rc.status

# Determine the base and follow a runlevel link name.

base=${0##*/}

link=${base#*[SK][0-9][0-9]}

# Force execution if not called by a runlevel directory.

test -x /usr/sbin/slpd || exit 0

ulimit -n 102400

case «$1» in

start)

echo -n 'Starting slpd '

startproc /usr/sbin/slpd

rc_status -v

;; stop)

echo -n «Shutting down slpd »

killproc -TERM /usr/sbin/slpd

rc_status -v

;;

restart)

$0 stop

$0 start

rc_status

;;

try-restart)

$0 status

if test $? = 0; then

   $0 restart

else

   rc_reset

fi

rc_status

;;

force-reload)

$0 stop; sleep 1 && $0 start

rc_status

;;

reload)

echo -n «Reload service slpd »

killproc -HUP /usr/sbin/slpd

rc_status -v

;;

status)

echo -n «Checking for slpd »

checkproc /usr/sbin/slpd

rc_status -v

;;

*)

echo «Usage: $0 {start|stop|try-restart|restart|force-reload|reload|status}»

exit 1

esac

rc_exit

Есть мнение что можно задать общие ограничения в системе, но я не знаю как( Через sysctrl не работает по той причине что сервис не проходит авторизацию....

Уважаемые спецы, помогите кто сталкивался с такой проблемой

А с чего это у вас openldap большое количество файлов наоткрывал? Ему по сути кроме конфига + файлов bd открывать нечего.

zgen ★★★★★ ()
Ответ на: комментарий от anykey_mlya

но блин факт!

Вы берете 2 не связанных события и связываете. Зачем? Зачем увеличивать лимит, когда нужно разобраться, откуда слишком много открытых файлов? Или у вас лимит на открытие - низкий?

zgen ★★★★★ ()
Ответ на: комментарий от zgen

да связаны они - в /proc/pid slapd/fd как только 1024 файловых дискриптора то всё..., сейчас делаем ulimit -n 10000 и рестарт лдапа, то все ок и в /proc/pid slapd/fd ~ 1500 дискрипторов. В принципе решение устраивает, но вот у некоторых руки чешутся и рестартят его по чем здря не втыкая чего творят, а а самая главная причина - мне хочется найти изящное решение

anykey_mlya ()
Ответ на: комментарий от anykey_mlya

да связаны они -

Что связано, то что вы раздаете home по nfs с тем, что у slapd много дескрипторов?

Запустите в дебаге его, посмотрите, что пишет, когда до лимита доходит. Запустите с lsof, посмотрите, что за файлы он «держит»?

zgen ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.