FreeIPA — хороший инструмент решающий ряд задач, связанных с идентификацией, доступом к машинам, учётом ключей, контролем выполнения команд и т.д. У нас используется FreeIPA 4.2, находящийся в официальных репозиториях CentOS 7.2.
Пока что замечены две проблемы.
1. Apache падает
Неясно почему, в логах ничего существенного не нашёл. Пока что использую Watchdog, который есть в systemd. Если хватать не будет, задействую supervisord.
2. Не работает веб-интерфейс FreeIPA, в логах видим:
[emerg] (28)No space left on device: Couldn't create accept lock
При этом, места на диске на всех разделах навалом. Проблема заключается в том, что он не очищает за собой семафоры в пространстве ядра.
Чтобы не падал сервер так быстро, в systemctl прописал следующее:
kernel.msgmni = 1024
kernel.sem = 250 256000 32 1024
После чего сделал sysctl -p
Параметры kernel.msgmni и kernel.sem следует изменить в зависимости от наличия оперативной памяти на вашем сервере. Подробности можно почитать у IBM или в документации к ядру.
Если веб-сервер уже лежит и отказывается стартовать по команде systemctl start httpd, можно выполнить скриптик:
for i in $(ipcs -s | grep apache | awk '{print $2}'); do ipcrm sem $i; done
После чего Apache должен подняться без проблем.
В идеале, можно скрипт какой-то прописать, который в cron чистил семафоры относящиеся к Apache.
Пока что замечены две проблемы.
1. Apache падает
Неясно почему, в логах ничего существенного не нашёл. Пока что использую Watchdog, который есть в systemd. Если хватать не будет, задействую supervisord.
2. Не работает веб-интерфейс FreeIPA, в логах видим:
[emerg] (28)No space left on device: Couldn't create accept lock
При этом, места на диске на всех разделах навалом. Проблема заключается в том, что он не очищает за собой семафоры в пространстве ядра.
Чтобы не падал сервер так быстро, в systemctl прописал следующее:
kernel.msgmni = 1024
kernel.sem = 250 256000 32 1024
После чего сделал sysctl -p
Параметры kernel.msgmni и kernel.sem следует изменить в зависимости от наличия оперативной памяти на вашем сервере. Подробности можно почитать у IBM или в документации к ядру.
Если веб-сервер уже лежит и отказывается стартовать по команде systemctl start httpd, можно выполнить скриптик:
for i in $(ipcs -s | grep apache | awk '{print $2}'); do ipcrm sem $i; done
После чего Apache должен подняться без проблем.
В идеале, можно скрипт какой-то прописать, который в cron чистил семафоры относящиеся к Apache.
Комментариев нет:
Отправить комментарий