Apache2: 100% CPU bez wyraźnej przyczyny
: 22 września 2009, 14:18
Jak w temacie: pacjent to Apache/2.2.3 (Debian4) PHP/5.2.0-8+etch15 mod_ssl/2.2.3 OpenSSL/0.9.8c Server Built: Jul 29 2009 10:30:58. Usługi obsługiwane to klasyczne fora php+mysql (vbulletin x2 + phpby przemo x2).
Z niewiadomych przyczyn po starcie apache-a obciążenie szybuje w stronę 100%. Dzieje się to sporadycznie od tygodnia. Do dziś wystarczyło "obrócić" usługę httpd i wszystko wracało do normy. Aktualnie - serwer jest non stop w pełni obciążony nawet po restarcie usługi. Okazuje się też, że apache będzie konsumował 100% zasobów nawet, jeśli pozbawię go folderu www (tzn. obetnę gałąź, w której zgromadzone są wszystkie zasoby publikowane). Restart usługi sprawia, że sytuacja normuje się na kilka minut, po czym obciążenie wraca do 100%.
Nie zanotowałem żadnych nadmiernych prób wyłudzenia hasła (fail2ban ubija średnio 5 delikwentów dziennie, liczba ta nie rośnie), na serwerze nie pracują żadni użytkownicy, obciążenie jest na stałym poziomie (tzn. na forach przebywa stała ilość użytkowników, a rozkład dobowy obciążenia jest przewidywalny i w miarę stały od lat).
Co ciekawe nie widać żadnego negatywnego wpływu tego zjawiska na czas ładowania stron obsługiwanych przez tego apache-a.
Poniżej zrzuty z webminstats:
i w większej skali:
atop pokazuje coś takiego:
...natomiast server-status w ogóle wydaje się nie być świadomym obciążenia, które generuje apache:
Macie jakiś pomysł jak wyśledzić i ubić ten problem?
Z niewiadomych przyczyn po starcie apache-a obciążenie szybuje w stronę 100%. Dzieje się to sporadycznie od tygodnia. Do dziś wystarczyło "obrócić" usługę httpd i wszystko wracało do normy. Aktualnie - serwer jest non stop w pełni obciążony nawet po restarcie usługi. Okazuje się też, że apache będzie konsumował 100% zasobów nawet, jeśli pozbawię go folderu www (tzn. obetnę gałąź, w której zgromadzone są wszystkie zasoby publikowane). Restart usługi sprawia, że sytuacja normuje się na kilka minut, po czym obciążenie wraca do 100%.
Nie zanotowałem żadnych nadmiernych prób wyłudzenia hasła (fail2ban ubija średnio 5 delikwentów dziennie, liczba ta nie rośnie), na serwerze nie pracują żadni użytkownicy, obciążenie jest na stałym poziomie (tzn. na forach przebywa stała ilość użytkowników, a rozkład dobowy obciążenia jest przewidywalny i w miarę stały od lat).
Co ciekawe nie widać żadnego negatywnego wpływu tego zjawiska na czas ładowania stron obsługiwanych przez tego apache-a.
Poniżej zrzuty z webminstats:
i w większej skali:
atop pokazuje coś takiego:
Kod: Zaznacz cały
ATOP - localhost 2009/09/22 14:15:51 10 seconds elapsed
PRC | sys 0.24s | user 19.72s | #thr 218 | #zombie 0 | #exit 8 |
CPU | sys 3% | user 197% | irq 0% | idle 0% | wait 0% |
cpu | sys 2% | user 98% | irq 0% | idle 0% | cpu000 w 0% |
cpu | sys 0% | user 100% | irq 0% | idle 0% | cpu001 w 0% |
MEM | tot 3.8G | free 713.2M | cache 1.1G | buff 59.5M | slab 208.5M |
SWP | tot 2.0G | free 1.5G | | vmcom 3.2G | vmlim 3.9G |
DSK | sda | busy 1% | read 0 | write 173 | avio 0 ms |
DSK | sdb | busy 0% | read 1 | write 36 | avio 0 ms |
NET | transport | tcpi 886 | tcpo 962 | udpi 0 | udpo 0 |
NET | network | ipi 886 | ipo 967 | ipfrw 0 | deliv 886 |
NET | dev eth0 | pcki 814 | pcko 896 | in 132 Kbps | out 644 Kbps |
NET | dev lo | pcki 72 | pcko 72 | in 9 Kbps | out 9 Kbps |
PID SYSCPU USRCPU VGROW RGROW USERNAME THR ST EXC S CPU CMD 1/4
15265 0.00s 2.56s 0K 0K www-data 1 -- - R 26% apache2
15502 0.00s 2.50s 0K 0K www-data 1 -- - R 25% apache2
15258 0.00s 2.43s 0K 0K www-data 1 -- - R 24% apache2
15456 0.00s 2.41s 0K 0K www-data 1 -- - R 24% apache2
15386 0.01s 2.26s 0K 0K www-data 1 -- - R 23% apache2
15153 0.00s 2.20s 0K 0K www-data 1 -- - R 22% apache2
15004 0.00s 2.20s 0K 0K www-data 1 -- - R 22% apache2
2553 0.16s 0.89s 0K 0K mysql 69 -- - S 10% mysqld
17400 0.02s 0.70s 768K 788K www-data 1 -- - S 7% apache2
16696 0.00s 0.24s 0K 0K www-data 1 -- - S 2% apache2
17300 0.00s 0.20s -1792K -1412K www-data 1 -- - S 2% apache2
17095 0.00s 0.18s 512K 184K www-data 1 -- - S 2% apache2
17412 0.01s 0.16s -3328K -3156K www-data 1 -- - S 2% apache2
17404 0.00s 0.15s -2560K -2356K www-data 1 -- - S 2% apache2
17249 0.00s 0.11s 1280K 1188K www-data 1 -- - S 1% apache2
17406 0.00s 0.10s 0K 8K www-data 1 -- - S 1% apache2
Kod: Zaznacz cały
Apache Server Status for localhost
Server Version: Apache/2.2.3 (Debian) PHP/5.2.0-8+etch15 mod_ssl/2.2.3 OpenSSL/0.9.8c
Server Built: Jul 29 2009 10:30:58
--------------------------------------------------------------------------------
Current Time: Tuesday, 22-Sep-2009 13:58:03 CEST
Restart Time: Tuesday, 22-Sep-2009 13:43:16 CEST
Parent Server Generation: 0
Server uptime: 14 minutes 46 seconds
Total accesses: 32899 - Total Traffic: 116.6 MB
CPU Usage: u109.86 s6.59 cu0 cs0 - 13.1% CPU load
37.1 requests/sec - 134.7 kB/second - 3715 B/request
112 requests currently being processed, 16 idle workers
KKKKKKKKKWK_KKKKK_WKKKKKKKK.K_KKKKK.K.KKKKKKKKKKKKK.KWK..KKK.KK.
KK.K.WKKW_K._KKKK.KKW.KKK_KKKK.WWKKK_K_KK_.CK_KK_K_KK.KWK._.K_KK
KKKK.__.KKKKKK..KKKWKK..........................................
................................................................