httpd-users-de mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sandra Kleinert <noc...@aks-teach.de>
Subject Re: Load Balancing
Date Thu, 28 Oct 2004 12:28:44 GMT
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 Datei
>>    
>>
>im 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:nocrap@aks-teach.de] 
>>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.
>>>Hat allerdings einen grossen Nachteil: Wenn eine der Kisten, die du
>>>per DNS eingebunden hast, abraucht, dann musst du mit der IP 
>>>      
>>>
>>irgendwas
>>    
>>
>>>machen, sonst kommen halt Anfragen an, die nciht mehr 
>>>      
>>>
>>bearbeitet werden
>>    
>>
>>>können. Aus dem DNS austragen bringt nichts, da die Zeit 
>>>      
>>>
>>viel zu lange 
>>    
>>
>>>ist,
>>>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 
>>>      
>>>
>>einem anderen 
>>    
>>
>>>Rechner
>>>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 
>>>      
>>>
>>Gateways. die 
>>    
>>
>>>beiden
>>>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 
>>>      
>>>
>>konfigänderungen machen 
>>    
>>
>>>zu müssen.
>>>
>>>dann hat man ein relativ sicheres und hochperformantes ding. 
>>>      
>>>
>>aber die 
>>    
>>
>>>realisierung dauert
>>>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 
>>>      
>>>
>>intern eine 
>>    
>>
>>>clusterlö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" 
>>><carsten.germer@desy.de>
>>>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 
>>>      
>>>
>>Robin" auf
>>    
>>
>>>DNS-Basis mit mehreren Rechnern mit gespiegelten 
>>>      
>>>
>>Filesystemen dahinter.
>>    
>>
>>>Ein paar Fragen um deine Situation genauer einschätzen zu können:
>>>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 
>>>      
>>>
>>schreiben die User
>>    
>>
>>>auch etwas auf dein System?
>>>3. Bekommen die User eine Session über die sie längere Zeit 
>>>      
>>>
>>auf deinem
>>    
>>
>>>System 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:nocrap@aks-teach.de]
>>>>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 
>>>>        
>>>>
>>Balancing
>>    
>>
>>>>Software für Apache. Weiss jemand da was?
>>>>
>>>>Vielen Dank im voraus.
>>>>Sandra
>>>>
>>>>
>>>>---------------------------------------------------------------
>>>>-----------
>>>>               Apache HTTP Server Mailing List "users-de"
>>>>     unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
>>>>          sonstige Anfragen an users-de-help@httpd.apache.org
>>>>---------------------------------------------------------------
>>>>-----------
>>>>
>>>>        
>>>>
>>>      
>>>
>>---------------------------------------------------------------
>>-----------
>>    
>>
>>>               Apache HTTP Server Mailing List "users-de"
>>>     unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
>>>          sonstige Anfragen an users-de-help@httpd.apache.org
>>>
>>>      
>>>
>>---------------------------------------------------------------
>>-----------
>>    
>>
>>>
>>>
>>>      
>>>
>>---------------------------------------------------------------
>>-----------
>>    
>>
>>>               Apache HTTP Server Mailing List "users-de"      
>>>unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
>>>          sonstige Anfragen an users-de-help@httpd.apache.org
>>>
>>>      
>>>
>>---------------------------------------------------------------
>>-----------
>>    
>>
>>---------------------------------------------------------------
>>-----------
>>               Apache HTTP Server Mailing List "users-de" 
>>     unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
>>          sonstige Anfragen an users-de-help@httpd.apache.org
>>---------------------------------------------------------------
>>-----------
>>
>>    
>>
>
>--------------------------------------------------------------------------
>                Apache HTTP Server Mailing List "users-de" 
>      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
>           sonstige Anfragen an users-de-help@httpd.apache.org
>--------------------------------------------------------------------------
>
>  
>


--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de" 
      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
           sonstige Anfragen an users-de-help@httpd.apache.org
--------------------------------------------------------------------------


Mime
View raw message