2009-04-23 12 views
9

Mi servidor (ubuntu 8.04) LÁMPARA ejecutando drupal 6, cuando hay mucho tráfico, deja de servir páginas. Un reinicio de Apache2 no funcionará, entonces tengo que reiniciar el servicio.¿Qué hay en Apache 2 un error "atrapado SIGWINCH"?

me encontré con este mensaje en el apache2 error.log

[Aviso] SIGWINCH atrapado, cerrando con gracia

También noto que el identificador de proceso de la apache2, fue de alrededor de 12.000 cuando apache deja de responder.

actualización

El SIGWINCH atrapado, como usted señala, es un aviso de la reanudación del servicio de Apache. Jugué con los clientes max y me mantuve con vida. Configuré los MaxClients demasiado bajos, así que obtuve el error "el servidor alcanzó la configuración de MaxClients, considere aumentar la configuración de MaxClients", pero lo corrigió.

En cuanto al PID, mi instalación tiene prefork module instalado, por lo que después de que se alcance MaxRequestPerChild, se recicla el proceso secundario. Es por eso que el PID está subiendo periódicamente. Todavía no entiendo por qué después de un rato Apache deja de responder.

Mientras tanto intentaremos subir el MaxRequestPerChild para que el PID no alcance el PID max tan rápido. El límite actual es 32768 (que es estándar para las nuevas instalaciones de Debian y Ubuntu).

aquí es más desde el registro de:

[Vie Abr 24 de 2009 01:48:56] [Aviso] SIGWINCH atrapado, el cierre de gracia

[Fri Apr 24 de 1:50 : 07 2009] [aviso] Apache/2.2.8 (Ubuntu) PHP/5.2.4-2ubuntu5.3 con Suhosin-Patch configurado - reanudar las operaciones normales

[Fri Apr 24 de 17:13: 3 5 2009] [error] [cliente 195.70.62.131] cliente envió HTTP 1.1 solicitud/sin nombre de host (ver sección RFC2616 14.23): /w00tw00t.at.ISC.SANS.DFind :)

[Fri Apr 24 17:36:00 2009] [error] [cliente 212.188.33.4] cliente envió HTTP/1.1 solicitud sin nombre de host (ver sección RFC2616 14.23): /w00tw00t.at.ISC.SANS.DFind :)

[sáb 25 abr 20:05:07 2009] [error] [cliente 84.243.222.12] URI no válido en solicitud GET HTTP/1.1 HTTP/1.1

[Sab Abr 25 de 2009 20:05:12] [Error] [cliente 84.243.222.12] guión no encuentran o son incapaces de stat: /usr/lib/cgi-bin/Twiki

[ Sáb 25 abr 20:05:12 2009] [error] [cliente 84.243.222.12] script no encontró o incapaz de STAT: /usr/lib/cgi-bin/wiki

[Sab Abr 25 de 2009 20:05:12] [Error] [cliente 84.243.222.12] guión no encontrado o no pueden dato: /usr/lib/wiki/cgi-bin

[Sab Abr 25 de 2009 21:46:46] [error] [cliente 211.68.23.167] URI no válido en solicitud HTTP GET/1.1 HTTP/1.1

[Sun Apr 26 06:13:47 2009] [error].810 [cliente 86.39.154.89] cliente enviado HTTP/1.1 solicitud sin nombre de host (ver sección RFC2616 14.23): /w00tw00t.at.ISC.SANS.DFind :)

[Dom Abr 26 de 2009 06:53:07] [Aviso] grácil reiniciar solicitó , haciendo reiniciar

Respuesta

8

Bueno, SIGWINCH se utiliza en algunas situaciones al iniciar y detener Apache en Ubuntu. Si hago sudo apache2ctl graceful-stop en mi servidor de Ubuntu 8.10, me sale esto en mi registro:

[Fri Apr 24 22:41:15 2009] [notice] caught SIGWINCH, shutting down gracefully 

Según recuerdo, SIGWINCH también es utilizado por algunos servicios que necesitan para reiniciar Apache al girar troncos, trabajos nocturnos, etc.

Eso no explica el problema que está teniendo actualmente, pero creo que podría ser otra cosa que se ejecute en su servidor que reinicie Apache, o podría no estar relacionado con su problema en absoluto.

prueba a publicar más del archivo de registro si se puede, que va a ser mucho más fáciles de analizar :)

+0

Sí, está a la derecha en sigwinch , agregó más en el registro. Gracias. – Geries

+0

Bueno, no hay nada en ese volcado de registro para indicar cuál es el verdadero problema. ¿Cómo se ve el estado de su memoria cuando ocurre el problema? El ajuste de MaxClients puede ser complicado, si lo configura en alto, Apache comerá toda la memoria disponible y entrará en un punto muerto completo. Además, ¿qué módulo de Apache has habilitado? – mikl

+0

Tengo 1GB de memoria y me gusta 600MB gratis cuando ocurre el problema. Los módulos habilitados son reescribir, php5, mime y cgi. Tal vez Apache no es el problema, intentaré instalar Debian para mover el sitio allí, a veces es "más barato" solo para comenzar con una manga limpia. Gracias – Geries

13

uh? si mal no recuerdo, SIGWINCH es una señal que se envía a una aplicación de terminal cuando cambia el tamaño de la ventana del terminal (para que la aplicación pueda redimensionarse). Típicamente utilizado por las aplicaciones ncurses.

Esto es muy extraño. ¿Esta información te da pistas adicionales?

+0

Bueno, 10 segundos después de que "[aviso] atrapó a SIGWINCH, cerrándose con gracia. Hay un" [aviso] Apache/2.2.8 (Ubuntu) PHP/5.2.4-2ubuntu5.3 con Suhosin-Patch configurado - reanudar las operaciones normales " – Geries

+1

Esto como se diseñó, consulte https://bz.apache.org/bugzilla/show_bug.cgi?id=50669 –

+1

@ serv-inc Bien, es un diseño terrible. –

4

En Apache, SIGWINCH es la señal Graceful Stop. Tenga en cuenta que esto es diferente de SIGUSR1, que es la señal Graceful Restart.

Lamentablemente, necesitamos más información para decirle por qué Apache se detiene con gracia.

7

SIGWINCH

Como cuestión de hecho, es @Stefano derecha: SIGWINCH significa señal de cambio de ventanas y se envía automáticamente cuando un terminal detecta un cambio en su tamaño ventanas para permitir un redibujado.

SIGWINCH para apache2

Pero, por desgracia apache2 proceso malos usos mal esta señal (en la forma en que desvían su primer sentido), sino por su defensa, que no parece tener una opción y tuvo que recurrir a este debido a la falta de señal (ver bug report). Una de sus suposiciones es que el proceso apache2 siempre está en segundo plano. Entonces, @mikl también está perfectamente bien también.

Entonces, ¿qué comprobar?

  • cualquier razón automática para reiniciar apache2 con gracia (servicios de cron, apt-get instalaciones de servicios relacionados ...)
  • De lo contrario, se corre apache2 en primer plano en un TTY abierta? En caso afirmativo, esto no se recomienda (¡ay!), Y es probable que aciertes fácilmente este apagado SIGWINCH gracefull al cambiar el tamaño de tu terminal de control.
+1

¡gracias quién habría pensado que cambiar el tamaño de una ventana de terminal podría tener tales consecuencias involuntarias! –