powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Периодическое падение httpd из-за ? CSPGateway
15 сообщений из 15, страница 1 из 1
Периодическое падение httpd из-за ? CSPGateway
    #37374829
Ptn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прежде чем соваться в WRC спрошу тут.

Есть машинка с CentOS, на ней крутиться httpd, к нему подключен CSPGateway

Код: plaintext
1.
2.
3.
4.
CSPModulePath /opt/cspgateway/bin/
LoadModule cspsys_module_sa /opt/cspgateway/bin/CSPa22Sys.so
LoadModule csp_module_sa /opt/cspgateway/bin/CSPa22.so
AddHandler csp-handler-sa csp cls cxw zen

Версия шлюза

Код: plaintext
1.
2.
3.
4.
5.
Version:	  2010 . 2 . 3 . 702 . 0 
Gateway Build:	  1002 .1192c
Web Server Name:	 10 . 1 . 3 . 160  
Web Server Type:	 Apache Web Server: Apache/ 2 . 2 . 3  (CentOS) Cache_Server_Pages-Apache_Module/ 2010 . 2 . 3 . 702 . 0 - 1002 .1192c 
Active Interface:	 Apache Module

httpd время от времени перезапускается в logrotate демоне
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
/var/log/httpd/*log {
    missingok
    notifempty
    sharedscripts
    postrotate
        /sbin/service httpd reload > /dev/null  2 >/dev/null || true
    endscript
}

меняли reload на restart - не помогло
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
/var/log/httpd/*log {
    missingok
    notifempty
    sharedscripts
    postrotate
        /sbin/service httpd restart > /dev/null  2 >/dev/null || true
    endscript
}

В результате httpd умирает (останавливается но не поднимается заново) и в логах есть вот такое
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
[Sun Jul  31   04 : 02 : 11   2011 ] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Sun Jul  31   04 : 02 : 11   2011 ] [notice] CSP Run-Time - Initialize: pid= 10021 ; ud_mod_path=/opt/cspgateway/bin/
[Sun Jul  31   04 : 02 : 11   2011 ] [notice] Digest: generating secret for digest authentication ...
[Sun Jul  31   04 : 02 : 11   2011 ] [notice] Digest: done
[Sun Jul  31   04 : 02 : 11   2011 ] [notice] mod_python: Creating  4  session mutexes based on  256  max processes and  0  max th
[Sun Jul  31   04 : 02 : 11   2011 ] [error] ( 17 )File exists: RT : Failed to create shared memory segment on file /tmp/cspGatewaySM10022
[Sun Jul  31   04 : 02 : 11   2011 ] [error] ( 17 )File exists: RT : Failed to create shared memory segment on file /tmp/cspGatewaySM10022_1
[Sun Jul  31   04 : 02 : 11   2011 ] [error] ( 17 )File exists: RT : Failed to create shared memory segment on file /tmp/cspGatewaySM10022_1_2
[Sun Jul  31   04 : 02 : 11   2011 ] [error] ( 17 )File exists: RT : Failed to create shared memory segment on file /tmp/cspGatewaySM10022_1_2_3

Кто-нибудь сталкивался с подобным ?
...
Рейтинг: 0 / 0
Периодическое падение httpd из-за ? CSPGateway
    #37374867
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ptn, не сталкивались, но: это так принято, все время рестартовать httpd?
В сообщениях повторяется текст "file exist", это наводит на мысль, что CSPGateway не всегда останавливается, или не успевает остановиться до запуска httpd. Возможно, нужен более сложный скрипт:
1- остановка httpd
2- ожидание...
3- проверка, что gateway остановлен
4- если не остановлен, "зачистка"
5- запуск httpd
(возможно, для начала хватит пп. 1,2,5).
...
Рейтинг: 0 / 0
Периодическое падение httpd из-за ? CSPGateway
    #37374881
Turk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ptn ,
Сталкивались с тем, что не все связки Apache 2.2+ и CSPGateway 2.2 нормально друг с другом работают. Выражалось это по разному - то Apache не запускался, то не хотел нормально останавливаться (приходилось вручную убивать все процессы httpd). Обычно помогала установка более новой версии/билда CSPGateway.
В Вашем случае можете еще попробовать производить перезапуск Apache не одной командой, а двумя последовательными stop/start с небольшой паузой между ними. (Так как CSPGateway используется общие сегменты памяти, то возможно объекты там могут жить чуть дольше, чем сам процесс, например, если они некорректно закрываются и их потом очищает сборщик мусора Linux-а.)
...
Рейтинг: 0 / 0
Периодическое падение httpd из-за ? CSPGateway
    #37374998
Ptn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey MaslovPtn, не сталкивались, но: это так принято, все время рестартовать httpd?

logrotate - он запускается раз в неделю, стандартное дефолтное поведение любого линукса.

Другое дело что по умолчанию там стоит reload - по этой команде httpd должен отпустить текущие лог файлы и перечитать конфиг.
Валилось на нем так же.
Сейчас поменяли на restart - то есть явный остонов и повторный запуск.

Alexey MaslovВ сообщениях повторяется текст "file exist", это наводит на мысль, что CSPGateway не всегда останавливается, или не успевает остановиться до запуска httpd.

Я не очень понимаю как CSPGateway может не остановиться - это же модуль апача "/opt/cspgateway/bin/CSPa22Sys.so" - нет процесса - нет модуля. Другое дело что если этот модуль при убийстве процесса не закрывает за собой какие либо дескрипторы - вот тут беда - и я пойду трясти WRC

Alexey MaslovВозможно, нужен более сложный скрипт:
1- остановка httpd
2- ожидание...
3- проверка, что gateway остановлен
4- если не остановлен, "зачистка"
5- запуск httpd
(возможно, для начала хватит пп. 1,2,5).

Путь такой да - но сначала нужно понять в чем загвоздка, ибо в целом то не факт что CSPGateway виноват, но пока это это единственная ругань в error.log.

Раньше когда стоял reload вместо restart - то вообще было только это

Код: plaintext
1.
2.
[Sun Jul  24   04 : 02 : 08   2011 ] [notice] SIGHUP received.  Attempting to restart
[Sun Jul  24   04 : 02 : 08   2011 ] [notice] seg fault or similar nasty error detected in the parent process
...
Рейтинг: 0 / 0
Периодическое падение httpd из-за ? CSPGateway
    #37375001
Ptn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Turk,

Попробуем покрутить... жаль только что проблема не воспроизводиться стабильно
...
Рейтинг: 0 / 0
Периодическое падение httpd из-за ? CSPGateway
    #37375051
Ptn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TurkВ Вашем случае можете еще попробовать производить перезапуск Apache не одной командой, а двумя последовательными stop/start с небольшой паузой между ними.

Всё к тому и идет, с небольшим замечанием - после останова http файлики /tmp/cspGatewaySMxxxx остаются как ни в чем не бывало, и на одном из серверов - httpd похоже умудряется как то получить тот же PID что и был ранее.

Что то я совсем запутался ... Вставлять между остановом и запуском очистку темпа что ли ....
...
Рейтинг: 0 / 0
Периодическое падение httpd из-за ? CSPGateway
    #37375065
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Соглашусь с Turk, похоже, с разделяемой памятью нелады. Последний пост Ptn (где про "seg fault") только усилил это согласие.
Ptn, посмотрите выдачу команды
Код: plaintext
# ipcs -m
Потерянные сегменты должно быть видно (status = dest).
...
Рейтинг: 0 / 0
Периодическое падение httpd из-за ? CSPGateway
    #37375078
Ptn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey Maslov,

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
------ Shared Memory Segments --------
key        shmid      owner      perms      bytes      nattch     status
0x7400017f  753664      root       600          4            0 
0x74000155  1441793     root       600          4            0 
0x0100001e  3637250     root       600          3744         0 
0x74000154  1409027     root       600          4            0 
0x0100000b  3670020     root       600          3744         0 
0x00000000  1966085     root       660          2565214208   78 
0x01000009  2719750     root       600          3744         0 
0x0100000d  2752519     root       600          3744         0 
0x0100000e  2785288     root       600          3744         0 
0x0100000f  2818057     root       600          3744         0 
0x01000010  2850826     root       600          3744         0 
0x01000012  3014667     root       600          3744         0 
0x0100001b  3244044     root       600          3744         0 
0x0100001d  3342349     root       600          3744         0 
0x0100001f  3702798     root       600          3744         9 
0x7a0080d2  3473423     zabbix     666          1591144      6 

Пусто ... скорее всего нужно ловить в момент краха
...
Рейтинг: 0 / 0
Периодическое падение httpd из-за ? CSPGateway
    #37375108
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ptn, пожалуй, что да, ловить в момент краха...
Кстати: родной Кашовый httpd так же дурит?
...
Рейтинг: 0 / 0
Периодическое падение httpd из-за ? CSPGateway
    #37375164
Ptn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey Maslov,

Нет - с другой стороны он же не перезапускается ...

С третьей стороны - месяц назад когда я еще боролся с reload - и был устойчивый usecase

service httpd stop - остановился
service httpd start - запустился
service httpd reload - умер

Методом тыка определил что достаточно закомментировать загрузку perl модуля, сейчас опять двадцать пять и непонятно что за беда
...
Рейтинг: 0 / 0
Периодическое падение httpd из-за ? CSPGateway
    #37375219
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ptn,

глубоко не ковырялся, но может стоит попробовать вот это: Log Files см. "Log Rotation".
...
Рейтинг: 0 / 0
Периодическое падение httpd из-за ? CSPGateway
    #37375409
Ptn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey MaslovPtn,

глубоко не ковырялся, но может стоит попробовать вот это: Log Files см. "Log Rotation".

Тут как раз придется делать "Piped Logs" - ибо тем что описано в "Log Rotation" и занимается logrotate.

В общем соорудил скриптик буду ждать.
...
Рейтинг: 0 / 0
Периодическое падение httpd из-за ? CSPGateway
    #37417081
Ptn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Продолжаем разговор.

В это воскресенье опять всё навернулось, причем беда явно связана с shared memory - в эти разы апач дорестартовался до сообщения

Код: plaintext
No space left on device: Cannot create SSLMutex

Гугл по нему однозначно выводит на проблемы с shared memory.

И тут мне нужна помощь людей с опытом использования Linux

На машине с 4Гб ОЗУ установлен CentOS 5.6 (на другом 5.5 но памяти 6Гб) - в sysctl.conf вроде никто руками не лазил, или не сознается.

Тем не менее на обоих серверах в sysctl.conf прописано
Код: plaintext
1.
2.
3.
4.
5.
# Controls the maximum shared segment size, in bytes
kernel.shmmax =  68719476736 

# Controls the maximum number of shared memory segments, in pages
kernel.shmall =  4294967296 

Если у меня совсем мозги не спеклись 68719476736 bytes это 64Гбайта расшаренной памяти. А 4294967296 это 4Гига сегментов.

Скажите - это нормально ? :(
...
Рейтинг: 0 / 0
Периодическое падение httpd из-за ? CSPGateway
    #37417187
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ptn,

это всего-навсего верхние границы использования разделяемой памяти (SHM). Возможно, это дефолт такой в вашем дистрибутиве Linux. Причем shmall - это не кол-во сегментов, а кол-во страниц. Соотношение между ними должно быть:
Код: plaintext
1.
2.
shmmax <= shmall*PAGE_SIZE

где PAGE_SIZE=`getconf PAGE_SIZE` (обычно  4096  B)
Главное здесь: какого размера сегмент вы будете пытаться захватить в Cache. Речь идет о ручной конфигурации памяти, автоматом она много не возьмет.
Cache (как вы, конечно, знаете) допускает два способа работы с SHM:
1- использование больших страниц (huge pages, размером 2 MB) - ИнтерСистемз его недвусмысленно рекомендует;
2- блокировка сегмента в памяти (memlock).

Документация местами противоречива, тем не менее, работают оба способа. Я обычно использую 1-ый , 2-ой - лишь на 32-х разрядных системах.

Сегмент (= кэш глобалов + кэш программ + системные таблицы) отвожу такого размера, чтобы оставалось достаточно памяти под процессы. Результат контролирую с помощью top и `vmstat 1 10`.
...
Рейтинг: 0 / 0
Периодическое падение httpd из-за ? CSPGateway
    #37419743
Ptn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey Maslov,

Включил huge pages - буду ждать очередной оказии.
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Периодическое падение httpd из-за ? CSPGateway
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]