Apache läuft auf 100% CPU mit xcache Konfiguration

  • Hallo,


    ich habe auf meinem Ubuntu 12.04 mit PHP 5.3 FastCGI die xcache Erweiterung installiert. Nach dem der Installation läuft dies auch für eine kurze Zeit. Irgendwann liefert der Apache dann keine Website und läuft mit seinem Prozess auf 100% CPU


    Code
    [Sat Jun 22 22:27:09 2013] [notice] caught SIGTERM, shutting down
    zend_mm_heap corrupted


    Ein strace zeigt nur noch dieses im Sekundentakt an:



    Wenn man nun versucht, den Apache neuzustarten, dann wird diese Meldung angezeigt:


    Code
    (98)Address already in use: make_sock: could not bind to address 0.0.0.0:443
    no listening sockets available, shutting down
    Unable to open logs
    Action 'start' failed.
    The Apache error log may have more information.


    Nur ein Kill des Apache Prozess wirkt. Danach kann der auch wieder gestartet werden. Und es läuft wieder für einige Minuten.
    Über den NGINX läuft alles weiterhin normal.


    Auch über Google habe ich leider nicht wirklich was hilfreiches finden können. Hat von euch vielleicht noch jemand eine Idee ??


    Vielen dank


    Gruß


    Björn

  • Der Apache startet sich hier mehrmals selbst und belegt den Port 443 selber - somit kann er sich dort nicht mehr binden.
    Bitte mal testen, am Ende der listen.conf des Apache den Eintrag: "listen 443" auskommentieren, eventuell bringt das eine Lösung bzw. einen Ansatz zum Lösungsweg.


    Vielleicht irgendein Update gemacht - bei dem der Port 443 mehrmals in verschiedenen Config´s eingetragen wurde ?

  • Moin Sven,


    vielen dank für deine Antwort. Ich habe nur das XCache installiert. Ich habe aber gerade LiveConfig in verdacht.
    Denn es knall immer, wenn man im LiveConfig an einer Domain/Subdomain die IP Gruppe ändert. Egal ob diese Gruppe eine NGINX oder Apache ist.


    Begründung:


    Konsole mit laufendem TOP -> LiveConfig (Anpassung einer Domain zwischen 2 NGINX IP Gruppen) -> Zeitgleich TOP (Apache geht auf 100% und alle Apache Sites sind nicht mehr erreichbar)


    Dies habe ich bereits 5 von 5 mal reproduzieren können.


    @ Herr Keppler: Könnten Sie sich das bitte mal anschauen !?


    Vielen dank


    Gruß


    Björn

  • Einfach die Zeile


    log_level=debug


    in der /etc/liveconfig/lcclient.conf bzw. /etc/liveconfig/liveconfig.conf hinzufügen. Dann sollte das Logging deutlich ausführlicher sein.


    Nur nicht vergessen das wieder abzuschalten, sonst füllt sich das Log recht fix ;)

  • So, das Log vom lcclient Prozess hat folgendes zurückgeliefert.


    Code
    [2013/06/23 16:23:00.099252] [3361|3363] LCCP command 'AUTH_OK' finished.
    [2013/06/23 16:24:18.839128] [3361|3361] Pushing LCCP job into queue: 'LC.web.vhostConfig'
    [2013/06/23 16:24:18.839169] [3361|3364] Handling LCCP command 'LC.web.vhostConfig'
    [2013/06/23 16:24:18.839236] [3361|3364] [LUA] LC.web.configureVHost()
    [2013/06/23 16:24:18.841367] [3361|3364] [LUA] configureVHost(apache) called
    [2013/06/23 16:24:18.869534] [3361|3364] [LUA] configureVHost(nginx) called
    [2013/06/23 16:24:18.877591] [3361|3364] LCCP command 'LC.web.vhostConfig' finished.
    [2013/06/23 16:24:28.882435] [3361|3363] [LUA] nginx.reload() called
    [2013/06/23 16:24:28.882435] [3361|3365] [LUA] apache.reload() called


    Aber also habe ich nochmal versucht das Problem zu reproduzieren und siehe da, es knallt wenn man mit dem XCache einen Reload der Apache Konfiguration macht.

  • So, ich denke hier ist jetzt die Lösung. Problem ist scheinbar der Zend Guard Loader. Beim Starten des Apache läuft noch alles einwandfrei, bei einem Reload der Apache Config allerdings wird Zend Guard vor dem XCache geladen. Dies führt dann zum Absturz bzw. Zombiprozess des Apache.


    Mit dieser Reihenfolge hängt sich Apache bei einem Reload auf:


    Code
    root@system01:/tmp/ioncube# php -v
    PHP 5.3.10-1ubuntu3.6 with Suhosin-Patch (cli) (built: Mar 11 2013 14:31:48)
    Copyright (c) 1997-2012 The PHP Group
    Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies
        with the ionCube PHP Loader v4.4.1, Copyright (c) 2002-2013, by ionCube Ltd., and
        with Zend Guard Loader v3.3, Copyright (c) 1998-2010, by Zend Technologies
        [I][U][B]with XCache v1.3.2, Copyright (c) 2005-2011, by mOo[/B][/U][/I]
        with Suhosin v0.9.33, Copyright (c) 2007-2012, by SektionEins GmbH


    Bei dieser Reihenfolge läuft alles auch nach einem Reload:


    Code
    root@system01:/tmp/ioncube# php -v
    PHP 5.3.10-1ubuntu3.6 with Suhosin-Patch (cli) (built: Mar 11 2013 14:31:48)
    Copyright (c) 1997-2012 The PHP Group
    Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies
        [I][U][B]with XCache v1.3.2, Copyright (c) 2005-2011, by mOo[/B][/U][/I]
        with the ionCube PHP Loader v4.4.1, Copyright (c) 2002-2013, by ionCube Ltd., and
        with Zend Guard Loader v3.3, Copyright (c) 1998-2010, by Zend Technologies
        with Suhosin v0.9.33, Copyright (c) 2007-2012, by SektionEins GmbH


    Ich danke trotzdem allen für die Unterstützung bei der Lösungsfindung.


    Gruß


    Björn

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!