Page 1 of 1

LoadBalance Lösungen (Puretec..)

Posted: 2003-08-19 18:03
by djbennyf
Da mein Server ziemlich viel Traffic, Benutzer hat möchte ich gerne mehrere Server (Puretec) kaufen. Dazu suche ich eine LoadBalance Server Lösung. Sprich ein Server nimmt alle Requests an und verteilt diese je nach Auslastung des Apache/CPU auf die entsprechnenden Server... Hat jemand evtl ein Script?

Re: LoadBalance Lösungen (Puretec..)

Posted: 2003-08-19 19:58
by captaincrunch
Dir ist aber schon gewusst, dass du da wahrscheinlich nicht jedes x-beliebige Script nehmen kannst, und du die "ultimative" Lösung hast ? Auch hier kommt's auf diverse Faktoren an, die größtenteils die "Anwendung" betreffen, die du lastverteilen möchtest.

Im einfachsten Fall könnte ein einfaches RoundRobin dir schon weiterhelfen. Ein weiterer Ansatz wäre, Web- und DB-Server zu trennen, usw. usf. Ohne nähere Angaben aber auch nur schwammige Antworten ...

Da die Frage auch nur am Rande mit dem Apachen zu tun hat schiebe ich sie mal ins Scripting

Re: LoadBalance Lösungen (Puretec..)

Posted: 2003-08-19 22:45
by dodolin
In der aktullen iX ist dazu ein ausführlicher Artikel drin (Webserver Loadbalancing), der verschiedene Ansätze dazu vorstellt. Im Ernst: Wenn du ein einfaches "Skript" hast, das das bewerkstelligst, wirst du wohl ziemlich reich werden... :)

Re: LoadBalance Lösungen (Puretec..)

Posted: 2003-08-19 22:50
by djbennyf
Ich hab mir vorgestellt per telnet oder so einen daemon zu schreiben der auf abfrage daten liefert wie apache auslastung netzwerkauslastung gesamttraffic cpu memory swap etc...
und dass wird dann alle x minuten bei allen servern abgefragt und dann je nach dem hin und her geswitcht... nur wenns sowas schon gibt würd ich das ganze übernehmen,..

Re: LoadBalance Lösungen (Puretec..)

Posted: 2003-08-19 23:06
by oxygen
Vielleicht solltest du einfach die User gleichmäßig auf die verschiedenen Server verteilen...

Re: LoadBalance Lösungen (Puretec..)

Posted: 2003-08-20 08:35
by captaincrunch
Du könntest die zwar man folgendes anschauen http://www.redhat.com/software/rhel/as/piranha/ , ich glaube aber kaum, dass dich das weiterbringt.

Desweiteren : so etwas komplett ohne Konzept angehen zu wollen, und anscheinend noch nicht einmal etwas über die Infrastruktur dahinter erzählen zu können halte ich für (sagen wir mal) "gewagt" ...

Re: LoadBalance Lösungen (Puretec..)

Posted: 2003-08-20 09:17
by asn
DjBennyF wrote:Da mein Server ziemlich viel Traffic, Benutzer hat möchte ich gerne mehrere Server (Puretec) kaufen.
Nur zur Info: Möchtest Du Server kaufen oder bei Puretec mieten?

Alex

Re: LoadBalance Lösungen (Puretec..)

Posted: 2003-08-20 10:50
by djbennyf
mieten... aber darum gehts ja nicht

Re: LoadBalance Lösungen (Puretec..)

Posted: 2004-01-05 13:31
by dude4you
Suche genau das gleiche, ein Router der alle Request annimmt und je nach CPU-Usage, Ping-Time, etc.. verteillt.

Kennt jemand einen Flexiblen Load-Balancer Router der den Server-Status einbezieht? Also kein Round Robin.

Re: LoadBalance Lösungen (Puretec..)

Posted: 2004-01-05 13:32
by captaincrunch
Wäre mod_backhand nicht auch ein möglicher Ansatz?

Re: LoadBalance Lösungen (Puretec..)

Posted: 2004-01-05 13:38
by djbennyf
Hab es immoment so gemacht.
Ein PHP Script wird via cron minütlich gestartet. Und schreibt in eine DB Die Server Infos wie CPU RAm online user, apache auslastung etc.
und auf jedem server ist in der index.php eine funtion die den günstigsten server aussucht und dahin umleitet... per dns eintrag wird immer zufällig ein server gewählt:

www IN A ip1
www IN A ip2
www IN A ip3

usw.

Re: LoadBalance Lösungen (Puretec..)

Posted: 2004-01-05 13:41
by alexander newald
Das Problem ist bei solchen Dingen nicht der Apache, sondern mySQL. Den Apache kann ich leicht auf mehrere Server verteilen. Das Problem bei mySQL (bzw. jeder Datenbankanbindung) ist, dass ich zwar lesenden Zugriff auch verzeilen kann, verändernden (Also INSERT, UPDATE, ALTER...) nur schwer.

Das Gleiche Problem gibt sich, wenn der Nutzer Daten per Webbrowser auf die Webseite hochladen kann. Der Abgleich der Daten auf alle beteiligten Server muss dann nach dem Upload in Echtzeit vorgenommen werden, damit nicht der eine Webserver die Datei schon hat und der andere noch nicht.

Re: LoadBalance Lösungen (Puretec..)

Posted: 2004-01-05 13:51
by flo
Das ist Round-Robin-DNS und kein loadbalancer, sobald Du eine aufwendige Seite mit Sessions oder ähnlichem verwendest, wird es dabei zu Problemen kommen, weil die Session für den einen Zugriff auf Rechner 1 existiert aber halt nicht auf Rechner 2 ...

Ich habe ein Loadbalancing zwischen sieben Rechnern mal wie folgt hingebracht:

Grund war, extreme Last an drei Tagen mit einer Seite aushalten zu müssen, die nicht optimal geschrieben war, dadurch bei mehr als dreißig Zugriffen alle meine Rechner zum Reihern gebracht hat und da PHP-verschlüsselt, für mich keine Eingriffsmöglichkeit bot.

- Script geschrieben, das bei auftreten eines "404"-Fehlers auf einen von fünf Webservern umgeleitet hat. Hier war noch kein Teil der dynamischen Seite aktiv, da diese relative Links benutzt hat.
- www1, www2 ... www5 angelegt und www auf den die root des obigen Scripts gelegt.
- Mirrorscripte geschrieben, die den Inhalt des FTP-Upload-Verzeischnisses alle paar Minuten synchronisiert haben.
- Cronjobs angelegt, um die Ã?berwachung der Remote-Server zu ermöglichen. Die Daten dafür sind auf den Verteiler geholt worden und aus diesen Werten dann die Häufigkeit der Verteilung errechnet worden.

Und das hat funktioniert, war zwar eine quick-and-dirty-Lösung, aber hat für den Zweck gepaßt.

flo.

Re: LoadBalance Lösungen (Puretec..)

Posted: 2004-01-05 13:52
by dude4you
habe noch was gefunden
http://www.linpro.no/projects/lvs-kiss/config.php

ist aber nicht ganz genau richtig.


Bin mich auch gerade am schlau mache wegen Realtime Sync Software meiner beiden Server plus MySQL. Bitte poste falls du schneller was findest als ich

Du hast Details wie Usage per PHP zum Router übermittelt, kennt jemand einen anderen Weg, vielleicht ja SNMP?

Re: LoadBalance Lösungen (Puretec..)

Posted: 2004-01-05 14:04
by dude4you

MySQL Verteilung

Posted: 2004-01-05 18:11
by Anonymous
ich hab es zwar bisher selber noch nicht probiert, aber mysql selbst unterstützt master/slave installation. gelesen wird aus den slave datenbanken, geschrieben aber nur in den master, der das dann auf die slaves verteilt.
Ist in den neuesten MySql versionen standartmässig integriert.

Re: LoadBalance Lösungen (Puretec..)

Posted: 2004-01-05 18:16
by oxygen
Datenbanken zu replizieren ist auch nicht das Problem, mal davon abgesehen das ein Datenbank-Server meistens eh reicht. Es geht um sich verändernden statischen Inhalt, z.B. Bilderuploads.

Re: LoadBalance Lösungen (Puretec..)

Posted: 2004-01-05 18:22
by flo
Nachdem der statische Inhalt eigentlich am wenigsten Last macht, würde sich da anbieten einen eigenen virtuellen Server (images.domain.de) einzurichten, auf dem so etwas dann läuft ...

flo.