Vielen Dank für die Antwort
Also zunächst mal bin ich inzwischen durchaus bereit, das Session - Handling komplett in Datenbank auszulagern. Das wäre also dann schon einmal ein Problem weniger.
Die Sache mit dem NFS-Laufwerk ist mir auch schon in den Sinn gekommen, aber genau dieser Single Point of Failure bereitet mir dabei wieder Kopfzerbrechen und deshalb
werde ich diesen Weg wohl nicht weiterverfolgen.
Von diesem LVS habe ich ehrlich gesagt noch garnichts gehört. Aber ich werde mich mal damit auseinandersetzen. Evtl. ist es ja wirklich nicht schlecht.
Hosting kommt garnicht in Frage. Wir haben alles im Haus hier und das wäre mir nicht recht.
Und wie gesagt, das Geld für die Hardware kann ich unmöglich aufbringen. Das geht auf keinen Fall.
Sandra
Germer, Carsten wrote:
Also da kommt jetzt die etwas tiefere Analyse ;)
Stimmt, ein DNS-Round-Robin nimmt immer einfach den nächsten. Wenn allerdings deine Session-Persistenz _auch_ in der Datenbank gespeichert wird und nicht im RAM des Webservers ist es egal, dann kann der User landen wo er will, die Session bleibt bestehen.
Für gewöhnlich ist das allerdings nicht so, sondern das RAM des Webservers spielt eine wichtige Rolle.
Du hast geschrieben:
3.) Ja, die Session ist zentraler Bestandteil aller Projekte und als Dateiim Session-Folder abgelegt.
Eines der größten Probleme, die zunächst mal gegen Round Robin sprechen.
Wenn Du die Möglichkeit hast den Session-Folder irgendwie auf ein gemeinsames (z.B. NFS-) Laufwerk zu legen hättest Du kein Problem mit Round-Robin, allerdings darf Die dann die Mühle mit dem geshareten NFS-Laufwerk nicht abmillern...
Der Tip von Kernel sieht gut aus. Ich würde auch sagen Du kommst um ein (semi-)professionelles SetUp nicht herum. Aber hält ein LVS Sessions auf dem gleichen Arbeitshost? Das weiss ich nicht.
Switches, Router und Internetverbindung des RZs wo Du deine Kisten aufstellst müssen ausfallsicher sein, da braucht es entsprechende zusätzliche Hardware.
Dahinter zwei Kisten mit LVS, dahinter 2 Kisten mit deinem Apache (Spiegelung über cron gesteuertes rsync) und ein ausfallsicheres MySQL-Setup.
Wenn man sich auch die Hardware ala F5-switch oder Cisco-LB-Router sparen könnte und möchte, ohne zusätzliche Hardware und consulting fürs SetUp wirds wohl nicht so einfach was werden.
Ich würde das ganze bei einem ISP hosten der ein ausfallsicheres SetUp inklusive F5-Switch oder Cisco-LB-Router anbietet ^_^ das wäre das einfachste.
/Carsten
-----Original Message-----
From: Sandra Kleinert [mailto:[EMAIL PROTECTED] Sent: Thursday, October 28, 2004 12:31 PM
To: users-de@httpd.apache.org
Subject: Re: Load Balancing
Das klingt recht interessant. Ich werde es mir mal anschauen.
Bei diesem Round Robin:
Wie löse ich das Problem, dass ein Client bei jedem Request an einen anderen Node verwiesen wird? Soweit ich weiss, nimmt der DNS dabei immer einfach den nächsten. Ein User landet wahrscheinlich bei jedem Klick auf einem anderen Server - jedenfalls habe ich keinen Einfluß. Das wäre bei meinem Modell einfach nicht akzeptabel. Ich brauche ein Load Balancing, was nur zu Beginn der Verbindung den besten Server nimmt und dann auch bei diesem bleibt.
Sandra
Kernel wrote:
Eine Lösung wäre sicherlich DNS Round-Robin, wie vorgeschlagen.irgendwas
Hat allerdings einen grossen Nachteil: Wenn eine der Kisten, die du
per DNS eingebunden hast, abraucht, dann musst du mit der IP
machen, sonst kommen halt Anfragen an, die nciht mehrbearbeitet werden
können. Aus dem DNS austragen bringt nichts, da die Zeitviel zu lange
ist,einem anderen
bis diese Änderung sich verbreitet hat. Also musst du mit scripts arbeiten,
die überprüfen ob eine IP da ist und wenn nicht, sie auf
Gateways. dieRechner aufnehmen. Das kann ein fieses Gefrickel werden.
wenn man wirklich seriöse loadbalancing ohne (relativ zumindest) single point auf failure haben will,
und eine kostengünstige lösung braucht, dann ist wohl LVS (Linux virtual Server)
der beste weg:
man kann zwei rechner als gateway einrichten, die hinter sich angeschlossene
serverfarmen bedienen. diese server haben alle nicht direkt erreichbare IPs, sind
aber dem client voll transparent zugänglich über die LVS
beidenkonfigänderungen machen
gateways checken sich gegenseitig und wenn einer ausfällt, nimmt der andere sofort
seine arbeit auf und gibt sie wieder ab, wenn das gateway wieder da ist. aus einem
solchen system kann man rechner rausnehme ohne
aber diezu müssen.
dann hat man ein relativ sicheres und hochperformantes ding.
realisierung dauertintern eine
eine weile und natürlich hat man noch mehr single points of failure: der switch, wo die
gateways dran hängen, die router davor, die anbindung des rechenzentrums, wo die kisten
stehen, etc.
für wirkliche hochverfügbarkeit braucht man mehrere rechenzentren an verschiedenen geographischen
standpunkten, die über DNS RR angesteuert werden und dann
Robin" aufclusterlösung. so macht es google zb.
wenn das für dich nicht in frage kommt, schau mal hier: http://freshmeat.net/projects/mod_backhand/
Grüße, Philipp
----- Original Message ----- From: "Germer, Carsten" <[EMAIL PROTECTED]>
To: <users-de@httpd.apache.org>
Sent: Thursday, October 28, 2004 10:41 AM
Subject: RE: Load Balancing
Hallo Sandra,
Eine sehr einfache und kostengünstige Lösung ist ein "Round
DNS-Basis mit mehreren Rechnern mit gespiegeltenFilesystemen dahinter.
Ein paar Fragen um deine Situation genauer einschätzen zu können:schreiben die User
1. Ändert sich die Website oft und wenn ja wie wird der neue content
eingespielt?
2. Wird das PHP nur verwendet um Daten abzurufen oder
auch etwas auf dein System?auf deinem
3. Bekommen die User eine Session über die sie längere Zeit
BalancingSystem arbeiten? 4. Wenn Session, ist das über cookies oder URL-Encoded gelöst? 5. Benutzt Du eine Datenbank im Backend der Website?
Das Fragen geht sicher später noch weiter :) aber soviel erstmal um abschätzen zu können was Du vorhast und brauchst.
Lieben Gruß /Carsten
-----Original Message----- From: Sandra Kleinert [mailto:[EMAIL PROTECTED] Sent: Thursday, October 28, 2004 10:34 AM To: users-de@httpd.apache.org Subject: Load Balancing
Hallo liebe Liste
Ich war gestern auf der LinuxWorldExpo in Frankfurt mit der Hoffnung etwas über Load Balancing und Apache herauszufinden. Leider bin ich nicht so richtig weiter gekommen, weil einfach nicht die richtigen Leute da waren. So war es für mich etwas enttäuschend.
Jetzt wende ich mich an Euch:
Ich verwende Apache mit PHP unter Linux. Bei den Versionen bin ich
völlig frei. Ich suche eine kostenlose Clustering oder Load
---------------------------------------------------------------Software für Apache. Weiss jemand da was?
Vielen Dank im voraus. Sandra
--------------------------------------------------------------- ----------- Apache HTTP Server Mailing List "users-de" unsubscribe-Anfragen an [EMAIL PROTECTED] sonstige Anfragen an [EMAIL PROTECTED] --------------------------------------------------------------- -----------
-----------
---------------------------------------------------------------Apache HTTP Server Mailing List "users-de" unsubscribe-Anfragen an [EMAIL PROTECTED] sonstige Anfragen an [EMAIL PROTECTED]
-----------
---------------------------------------------------------------
-----------
Apache HTTP Server Mailing List "users-de" unsubscribe-Anfragen an [EMAIL PROTECTED]---------------------------------------------------------------
sonstige Anfragen an [EMAIL PROTECTED]
-----------
---------------------------------------------------------------
-----------
Apache HTTP Server Mailing List "users-de" unsubscribe-Anfragen an [EMAIL PROTECTED]
sonstige Anfragen an [EMAIL PROTECTED]
---------------------------------------------------------------
-----------
--------------------------------------------------------------------------
Apache HTTP Server Mailing List "users-de" unsubscribe-Anfragen an [EMAIL PROTECTED]
sonstige Anfragen an [EMAIL PROTECTED]
--------------------------------------------------------------------------
--------------------------------------------------------------------------
Apache HTTP Server Mailing List "users-de" unsubscribe-Anfragen an [EMAIL PROTECTED]
sonstige Anfragen an [EMAIL PROTECTED]
--------------------------------------------------------------------------