Моя текущая настройка развертывания httpd включает в себя создание новых файлов конфигурации, повторное связывание каталога конфигурации, а затем перезагрузку службы apache. Этот процесс отлично работает для большинства моих хостов, однако на моих прокси-хостах служба httpd завершает работу после перезагрузки.
Пример:
/config/аааа/*.conf
/config/bbbb/*.conf
/config/активный -> /config/аааа
И в моем основном httpd.conf файл,
требуется /config/active/*.conf
Процесс развертывания удалит ссылку и повторно свяжет новый каталог конфигурации.
После выдачи
systemctl перезагрузить httpd
Ошибка
У меня есть следующая ошибка в моих журналах, прежде чем процесс просто умрет.
(28) На устройстве не осталось места: AH02611: create: apr_shm_create(/etc/httpd/run/slotmem-shm-p975c3056_scanner_2.shm) не удалось
Отладка
У меня достаточно свободного места на диске:
[журнал root@proxy3]# df -h
Используемый размер файловой системы Доступно Использование % Установлено на
/dev/mapper/cl_template-root 3.8G 3.4G 363M 91%/
tmpfs 989M 102M 888M 11%/запуск
//10.3.36.10/config3 3.8G 2.6G 1.3G 68% /config
Каталог, когда сервер работает, составляет всего 6 МБ.
[root@proxy3 ~]# du -h /etc/httpd/run/
0 /etc/httpd/run/htcacheclean
6.0M /etc/httpd/run/
С ~1500 файлами
[root@proxy3 ~]# du -h /etc/httpd/run/* | туалет -л
1521
Память доступна (следует удалить кеш)
[root@proxy3 httpd]# бесплатно
общее количество использованных бесплатных общих баффов/доступных кешей
Мем: 2025016 408128 113756 111216 1503132 1352584
Мои семафоры и ulimits кажутся прекрасными
[root@proxy3 httpd]# sysctl -a | grep сем
ядро.sem = 32000 1024000000 500 32000
[root@proxy3 httpd]# ipcs -l
------ Лимит сообщений --------
максимальное количество очередей по всей системе = 32000
максимальный размер сообщения (байт) = 8192
максимальный размер очереди по умолчанию (байты) = 16384
------ Пределы общей памяти --------
максимальное количество сегментов = 4096
максимальный размер сегмента (кбайт) = 18014398509465599
максимальная общая общая память (кбайт) = 18014398509481980
минимальный размер сегмента (байты) = 1
------ Ограничения семафора --------
максимальное количество массивов = 32000
максимальное количество семафоров на массив = 32000
максимальное количество семафоров в системе = 1024000000
максимальное количество операций на вызов semop = 500
максимальное значение семафора = 32767
[root@proxy3 httpd]# ulimit
неограниченный
Информация о версии
[журнал root@proxy3]# httpd -v
Версия сервера: Apache/2.4.37 (centos)
Сервер построен: 20 мая 2021 04:33:06
[журнал root@proxy3]# uname -r
4.18.0-305.19.1.el8_4.x86_64
Что еще я могу сделать, чтобы отладить/исправить этот режим отказа? Мой текущий обходной путь — просто перезапустить службу после ее закрытия, однако это всего лишь временное решение.