extrem viele php-cgi Prozesse (temporär)

Dieses Thema im Forum "Server Administration" wurde erstellt von Rost35, 27. Juli 2015.

  1. Rost35

    Rost35 New Member

    Guten Abend Community,

    seit gestern Abend haben wir folgendes Phänomen festgestellt.
    Gegen 20:00 Uhr fängt der Server an sehr langsam zu werden. Der average load steigt von 0,50 auf bis zu 18 an.
    Auffällig ist, dass extrem viele php-cgi Prozesse entstehen und laufen.
    Unter extrem viel verstehe ich > 150.
    Der Server ist dann nahezu nicht erreichbar. Dieses Phänomen dauert zirka 10 - 20 Minuten.
    Danach beruhigt sich die ganze Sache und es lässt sich wieder arbeiten.

    Zunächst hatte ich eine DDos-Attacke vermutet. Da es aber seit gestern immer zur selben Uhrzeit stattfindet, kann ich es mir nicht vorstellen.

    Habt Ihr eine Idee, die ich dieses Problem unter Kontrolle bekomme.
    Wenn Ihr mehr Informationen benötigt, kann ich diese gerne liefern.

    Hier ein paar Angaben zum Server:
    vServer:
    vier Kerne (Xenon)
    14GB RAM
    Debian 8
    Apache2
     
  2. Till

    Till Administrator

    Schau ins access.log der webseite um zu sehen woher die zugriffe kommen.
     
  3. Rost35

    Rost35 New Member

    Also die Access-Logdateien sehen alle gut aus.
    Das ist nicht auffälliges dabei und auch die Zugriffe sind vollkommen in Ordnung.
     
  4. IP-Projects.de

    IP-Projects.de New Member

    Du kannst mit dem Befehl netstat -n nachsehen, wie viele eingehende Verbindungen aktuell gestartet werden und vor allem von welchen IP-Adressen diese kommen. Dann kannst du die angreifenden IP-Adressen z.B. per IPTables blockieren. Wenn das zu viele sind solltest du ein bisschen nach SYN Flood Angriffen suchen und wie man sich davor schützen kann.
     
    Rost35 gefällt das.
  5. Rost35

    Rost35 New Member

    Habe mittlerweile auf PHP_Mod umgeschaltet und die php-cgi Prozesse sind weg.
    Nun sind aber zeitweise plötzlich richtig viele /usr/sbin/apache2 -k start Prozesse und dann geht nichts mehr auf dem Server.
    Geht so zirka 10 - 20 min.
     
  6. IP-Projects.de

    IP-Projects.de New Member

    Hast du denn geprüft wie viele eingehende Verbindungen zum Zeitpunkt der Systemlast laufen. Eine einfache Umstellung von phpfcgi auf mod_php ist eigentlich eine größere Designänderung die nicht so schnell gemacht ist :) Gerade weil sich dadurch neue Nutzerrechte auf Webseiten ergeben können für die PHP Prozesse. Ich würde daher eher empfehlen das Problem zu prüfen statt das Problem einfach über eine andere Art der PHP Behandlung abzuwickeln :) Das verlagert in der Regel das Problem lediglich.
     
    Rost35 gefällt das.
  7. Rost35

    Rost35 New Member

    Vielen Dank für deine Antwort.
    Die Berechtigung ist mittlerweile auch richtig umgesetzt und seit dem herrscht das Problem nicht mehr.
    Eingehende Verbindungen habe ich gecheckt und da war alles in Ordnung.

    Jetzt muss ich nur noch die hohe Antwortdauer von der ownCloud in den Griff bekommen und alles läuft...
     
  8. IP-Projects.de

    IP-Projects.de New Member

    Vielleicht kann dir dabei Bugzilla helfen. Das ist ein Plugin für Firefox womit du analyiseren kannst, welche Elemente der Webseite für die lange Ladezeit verantwortlich sind.
     
  9. Rost35

    Rost35 New Member

    Gerade war es wieder soweit...
    Plötzlich CPU load average auf über 6.0...
    Es war seit paar Tagen ruhig und nun fängt es scheinbar wieder an.
    Ich verstehe es nicht. Es sind keine auffälligen Zugriffe und Anzahl von Connections war unter 10 (netstat -n)
     
  10. Rost35

    Rost35 New Member

    Das Problem besteht zeitweise immer noch.

    Kann sich jemand sonst ggf. per Teamviewer sich das Ganze anschauen?

    Bildschirmfoto vom 2015-09-18 22:41:17.png
     
    Zuletzt bearbeitet: 18. Sep. 2015
  11. Rost35

    Rost35 New Member

    Habe nun wohl die Ursache gefunden.
    Nur noch keine Lösung...

    Es liegt daran, dass recht viel I/O auf der Platte ist.
    Einerseits der jbd2-Prozess und andererseits mysqld.
    Eventuell hat jemand von Euch dasselbe Problem schon gehabt und weiß eine Lösung.

    Vielen Dank.
     
  12. Till

    Till Administrator

    Ich denke mal eher dass es anders herum ist, die hohe i/o und mysql prozesse und die hohe auslastng kommen von den vielen php requests. Schau nochmal in alle access.logs, ich denke mal Du hast einfach viele gleichzeitge Zugriffe auf eine seite, das kann ein defekter spider oder ähnliches sein der auf die seite zugreift.
     
  13. Rost35

    Rost35 New Member

    So sieht z.B. der iotop Wert aus...
    Die Access.log sehen alle in Ordnung aus.
    Habe nicht mehr Aufrufe, Klicks, Traffic als sonst (Quervergleich zu den Logs)
    Bildschirmfoto vom 2015-09-21 19:35:34.png
     

Diese Seite empfehlen