Sebastian: Servertechnik Selfhtml bzw. Apache

Hallo zusammen,
Ich hab eine Allgemeine Frage zu Apache genauergesagt eigentlich die Überlastung des Häuptlings. Ein paar Freunde werden von mir in technischer hinsicht mit ihrem Server unterstützt. Sie betreiben eine Partybilder Seite die bei uns in der Region sehr angesehen und bekannt ist. Nun haben die Jungs das Problem, daß der Apache grundsätzlich überlastet ist. Die meiste Zeit ist die Prozessorlast extrem hoch da die Festplatten nur am Rödeln sind um die Bilder zu liefern. Der Server steht in nem Rechenzentrum. Auf nem zweiten Server im Rechenzentrum läuft nur die MySQL DB.

Meine Frage: Wie habt ihr das gelöst (speziell das SelfHTML Team), daß eure Apaches ihren Dienst ordentlich verrichten? Ich hab mir schon unzählige Infos zum Thema Cluster geholt. Die ultimative Lösung ist jedoch nicht klar erkennbar. Könntet ihr mir bitte Infos zukommen lassen ob ihr eure Apaches über Beowulf (Google macht das meines Wissens so) laufen habt oder wie habt ihr das gelöst? Wir brauchen definitiv nen zweiten Apache der übernehmen kann wenn die Leitung zu eng wird oder der Server mit zu viel Prozessorlast in der Ecke steht. Habt ihr vielleicht ein Howto dazu oder irgendwelche Tips? Bin über jede Hilfe dankbar, da das Projekt eigentlich weiterhin unentgeldlich bleiben soll. Eine Open Source Lösung wäre nicht schlecht.

SCSI, Raid5, Bilder auslagern,... sollten hier nicht besprochen werden, da diese Lösungen schon beleutet wurden. Primär gehts mir eigentlich darum mit Open Source ne vernünftige Lösung zu erarbeiten. Ich hab mir schon mal das absolut gelungene PDF über OpenSSI reingezogen. Das war bisher das beste was ich finden konnte. Würde gern den Link Posten, find ihn aber nicht. Falls jemand Webspace zur verfügunh stellen kann (390KB) einfach posten dann schick ichs per mail. In dem PDF schreibt er von: "...es wird nicht nur die Prozesslast sondern auch die Netzlast transparent über alle Systeme verteilt..."

Danke & Gruß,

Sebastian

    1. Hallo,

      Viel Spass beim Lesen!

      Ist das nicht veraltet (zumindest Hardware)? Soweit ich mich erinnern kann, waren nach der Spendenaktion doch neue Server gekauft worden?

      Zum Thema: Ich kenne mich leider nur mit Windows-Servern aus, aber da gibt es das sog. Load-Balancing zum verteilen der Last auf mehrere Server.
      Vielleicht gibt es unter Google ja zu dem Stichwort und Apache was...

      Zuerst würde ich aber versuchen herauszufinden, wo der Flaschenhals ist! Ggf. ist es ja die Datenbank (oder Anbindung, Prozessorpower)....Also: Performancetests? Das gilt auch für die Software.

      Gruss
      LeKuchen

  1. Moin!

    Die meiste Zeit ist die Prozessorlast extrem hoch da die Festplatten nur am Rödeln sind um die Bilder zu liefern. Der Server steht in nem Rechenzentrum. Auf nem zweiten Server im Rechenzentrum läuft nur die MySQL DB.

    Mal so als spitze Bemerkung: Dass die Festplatten am "Rödeln" sind, das vermutest du aber nur - denn direkt neben dem Server stehen wird vermutlich keiner der Betreiber, weil die Dinger im Rechenzentrum stehen, in das keiner so einfach reinkommt.

    Meine Frage: Wie habt ihr das gelöst (speziell das SelfHTML Team), daß eure Apaches ihren Dienst ordentlich verrichten?

    Der allerallerwichtigste Teil der Arbeit ist eine ausgiebige, intensive Analyse des Systemgeschehens.

    Du mußt zuerst mal klären, welches Subsystem in der derzeitigen Zusammensetzung der Flaschenhals ist, und welcher Art die bremsende Leistungsbegrenzung ist. Reicht die CPU nicht, oder der Festplattendurchsatz? Oder gar der Netzwerkdurchsatz?

    Ohne diese Informationen kann man dir leider nicht wirklich zielgerichtet helfen.

    Ich hab mir schon unzählige Infos zum Thema Cluster geholt. Die ultimative Lösung ist jedoch nicht klar erkennbar. Könntet ihr mir bitte Infos zukommen lassen ob ihr eure Apaches über Beowulf (Google macht das meines Wissens so) laufen habt oder wie habt ihr das gelöst?

    Bei SELFHTML laufen drei Server parallel ohne irgendwelche Clustersoftware und erledigen drei grundsätzlich trennbare Aufgaben: Odin ist für das Forum zuständig, Ve sorgt für die Auslieferung von statischem Content und Vili enthält die Suche.

    Die Zusammenführung geschieht sozusagen "clientseitig" durch die verschiedenen Subdomains, die wir benutzen.

    Wir brauchen definitiv nen zweiten Apache der übernehmen kann wenn die Leitung zu eng wird oder der Server mit zu viel Prozessorlast in der Ecke steht.

    Welche Feststellungen und Analysen führen dich zu dieser Annahme? Was hast du am laufenden System beobachtet, was belegt, dass es nur der Apache-Webserver sein kann, der zu wenig Power hat?

    SCSI, Raid5, Bilder auslagern,... sollten hier nicht besprochen werden, da diese Lösungen schon beleutet wurden.

    SCSI ist natürlich keine Wunderwaffe, würde sich eigentlich wirklich nur in Verbindung mit RAID5 anbieten - welches seinerseits aber ja nur eine Lösung ist, wenn die Festplattenleistung als Flaschenhals identifiziert wurde.

    Bilder auslagern - das Thema würde ich nicht so leichtfertig vom Tisch wischen. Genauer gesagt sollte bei der Analyse in jedem Fall auch die verwendete Software und deren (effiziente oder weniger effiziente) Programmierung und Runtime-Umgebung auf den Prüfstand kommen. Unsere Erfahrungen mit der selbst programmierten Forums-Software ergeben nämlich, dass man softwareseitig teilweise enorm Performance herausholen kann, wenn man (nach erfolgter Analyse) an den Hotspots zielgerichtet Verbesserungen vornimmt.

    Primär gehts mir eigentlich darum mit Open Source ne vernünftige Lösung zu erarbeiten.

    Es bringt dir absolut nichts, wenn du einfach nur blind irgendeine "Lösung" installierst, die aber komplett am Problem vorbeigeht.

    Beispiel: Was bringt es dir, einen zweiten Apache zusammen mit irgendeiner Load-Balancing-Software hinzustellen, wenn die Schuld für die Probleme bei der überlasteten und nicht verstärkten Datenbank zu suchen ist. Oder wenn du die Festplatten mächtig mit RAID5 aufrüstest, in Wirklichkeit aber der Netzwerkanschluß zu gering dimensioniert war.

    In dem PDF schreibt er von: "...es wird nicht nur die Prozesslast sondern auch die Netzlast transparent über alle Systeme verteilt..."

    Ihr habt schon zwei Server am Laufen und schafft es trotzdem nicht, einen performanten Webauftritt an den Start zu kriegen. Ich glaube nicht, dass euch da irgendeine Art von OpenSSI helfen wird, sofort wunschlos glücklich zu werden. Wie gesagt: Analysiere, wo genau die Probleme liegen. Erst dann kann man seriöse Aussagen zur Optimierung machen.

    - Sven Rautenberg