2 Server Synkronisieren

Slacki

Member
Hallo Forum,

ein freund von mir (win-admin) benötigt für einen kunden eine freeBSD lösung.
zum einsatz kommen sollen zwei DL380 die sich gegenseitig (in echtzeit) synkronisieren.
maschine 2 ist also backup für maschine 1 und sollte jeder zeit die aufgaben übernehem
können.
um das ganze noch komplizierte zu machen währe es von vorteil das wenn eine maschine
die grätsche macht, automatisch die andere den service übernimmt.

weiss jemand von euch wie ich sowas auf freeBSD umsetzen kann ?

wie mein nick schon sagt arbeite ich hauptsächlich mit slackware :-)

grüsse
Slacki
 
danke für die schnelle antwort.
an rsync habe ich auch schon gedacht, aber das ist eben nicht "echtzeit".
ich stelle mir eine lösung ähnlich eines arrays(raid) vor....
gibts für sowas tools ? oder weiss jemand ob der smart array 5i das standartmässig
kann (zwischen 2 controlern)?

grüsse
Slacki
 
Hallo,

versuch es doch mit einem Cluster... Ich habe gelesen, dass MPI eine Möglichkeit sein könnte.
Allerdings habe ich keine praktischen Erfahrungen mit Clustern... Die Idee klingt aber interessant :)

Gruß
Tom
 
Leider hat FreeBSD - wie auch alle anderen BSDs - derzeit kein funktionsfähiges Clusterdateisystem...
 
Mit CARP kannt Du zwei Server redundant betreiben. nach außen hin haben die die gleiche IP-Adresse und kontrollieren sich gegenseitig über eine zweite NIC. Das habe ich mal aufgebaut und es hat ganz nett funktioniert.

Das Problem bleibt aber die Synchronisierung. Wenn es sich um relativ statische Inhalte handelt, kann man das mit rsync realisieren, allerdings nicht in Echtzeit. Haarig wird es bei der Replikation von Datenbanken.
 
Bevor man so ein Projekt angeht, muss man erstmal ein paar Fragen beantworten:
Muss das wirklich in Echtzeit sein? Oder sind Verzögerungen von wenigen Sekunden tragbar. Auf jeden Fall reichen zwei Server dazu nicht aus. Höchstens für ein Spielzeugsetup.
Was ist eigentlich das Ziel? Ausfallsicherheit? Lastverteilung? ...?
Ohne detaillierte Informationen kann man da keine Tipps geben.

Wenn's um Ausfallsicherheit geht ist mein Tipp managedhosting.de
 
danke für die zahlreichen posts,
ich knobel das grad noch mit dem "auftraggeber" aus.

so wies aussieht ist eine lastverteilung UND ausfallsicherheit angestrebt.
also 2+n server die die gleichen daten haben, die last untereinander aufteilen
und somit auch einer ausfallen kann ohne das mans von aussen merkt.

habe da noch 2 andere fragen die ich in einen neuen thread gepostet hab.
währ super wenn ihr mir da auch ein paar tips geben könntet.

gruss
slacki
 
Also, Lastverteilung und Ausfallsicherheit muss man immer getrennt betrachten.
Man kann zwar Universal-Lösungen frickeln, aber das klappt dann im Ernstfall nie.

Zur Lastverteilung:
Welche Last soll verteilt werden? Manchmal ist es effektivert, einen DB-Server und einen Webserver zu betreiben, als 2 Server mit Web und DB, die sich spiegeln.

So long...

Der Indy
 
Kein Manager wird in reine Ausfallsicherheit investieren. Das muss immer auch Lastverteilung bringen. Egal wie wichtig es ist, die Typen glauben einfach nicht an Kapital, das nichts tut.
 
> Kein Manager wird in reine Ausfallsicherheit investieren.

Naja... ;-)
Im Ernst: Es gibt tatsächlich Leute, die in Ausfallsicherheit investieren.
Das hängt massiv von der Wichtigkeit des Projektes ab.
Und natürlich daran, wie die Ausfallsicherheit ausschaut.

Ausfallsicherheit kann auch ein funktionierendes Backup sein - das ist definitiv keine Lastverteilung - denn manchmal reicht es tatsächlich, wenn das System in vier Stunden wieder aktiv ist. Es kommt halt immer auf die Gewichtung an.

So long...

Der Indy
 
Bei pro-linux.de gab es mal einen Workshop, wo sowas in der Richtung mit XEN realisiert wurde. Zumindest für Anregungen in welche Richtung du schauen könntest/solltest kann dieser Workshop vielleicht nützlich sein.
 
@indy
das mit dem spiegeln war ja eine meiner fragen... ich hab nix dagegen 10 webserver aufzusetzen... die last (netzwerk) auf diese zu verteilen... aber wie spiegle ich in echtzeit ? das is ja dann voraussetzung.

@benedikt
danke, ich gugg mir das mal an....

in dem zusammenhang hätte ich noch ne andere frage:

ein storage-server (auf den n webserver zugreifen können) hat ja irg wann mal seine speicherkapazität erreicht....
ist es möglich die daten-patitionen von mehreren storage-servern zu EINEM (virtuellen) laufwerk zufammen zu fügen ?

grüsse
slacki
 
Hallo Slacki,

was willst Du denn spiegeln?
Statische Websites?
Datenbanken?
Dynamische Websites?

Es gibt verschiedene Ansätze...
- regelmäßige Synchronisierung z.B. via rsync
- Replikation im Falle von Datenbanken
- Proxyserver im Falle von Websites
- Caches, z.B. memcache
- Verteilte Dateisysteme

Die 10 Webserver verteilen nicht nur die Netzlast (eher weniger) sondern vielmehr die Rechenlast.

Schau dir mal die Dokumentation von Wikipedia an. Die machen sowas rein mit Open Source Software.
Wobei Du bei Wikipedia _keine_ Echtzeit hast - es kann immer ein paar Sekunden verzug geben.

Zur Echtzeit: Wirkliche Echtzeit kann es bei verteilten Applikationen ohnehin nie geben.
Warum?
1. Die Latenzzeit des Netzes: Auch mit Lichtgeschwindigkeit übertragen, brauchen die Informationen auf jedem Knoten eine Weile um verarbeitet zu werden.
2. Sicherstellung von Transaktionen: Wenn Du annimmst, dass Transaktionen, die auf dem ersten System geglückt sind, auch auf allen anderen funktionieren, musst Du den Abschluss der Transaktion auf dem ersten System abwarten.
Erst danach kannst Du diese Informationen an die anderen Systeme übertragen.
Andererseits, wenn Du sicherstellen willst, dass die Transaktionen auf allen Systemen korrekt laufen, musst Du sie zeitgleich auf allen Systemen ausführen - was wiederrum Netzlast und Rechenlast bringt (siehe Latenz) und eben deswegen viel Zeit benötigt.

Was sicherlich möglich ist, ist eine Lastverteilung, die auch gegen Ausfälle absichern kann - aber die Informationen eben nicht in Echtzeit, sondern "nur" schnell verteilt.

So long...

Der Indy

Edit: Zur Frage mit den Storage-Servern: Ja, sowas ist möglich.
Prinzipiell ist alles möglich, die Frage ist immer: Ist es sinnvoll?
Und bei solchen Geschichten neige ich immer dazu die Partitionierung der Daten zu hinterfragen.
Klumpst Du alle Storages zusammen und einer fällt aus - alle Daten weg.
Partitionierst Du Deine Daten nach einem bestimmten Schema (beliebt ist das kyrillische Alphabet), kannst Du auf einen Teil der Daten mal nicht zugreifen, wenn ein System ausfällt. Das ist zu verkraften.
 
Mal ganz "bloed" geantwortet....
habt Ihr schon an (Open)Solaris und Sun Cluster gedacht?

Erstens ist beides fuer umme und das ist eine funktionierende Clusterloesung.
Erfordert aber wie alle Clusterloesungen eine Einarbeitungszeit.

Mit Sun Volume Manager oder ZFS koennte man auch die Storedge Thematik angehen.
 
Um beim ClusterFS einzuhacken:

Wann kommt eigentlich HAMMER?

Was ich jetzt so gelesen habe dürfte die Alpha schon/bald draußen sein.
Ein erster stable Release ist mit Dragonfly 2 im Sommer anvisiert?!?

Wie flott wird dass dann wohl auf die anderen BSD's portiert werden? (wenn überhaupt?)
 
Zurück
Oben