Re: high availability FreeBSD

From: Bernd Walter <ticso(at)cicely8.cicely.de>
Date: Wed, 14 Nov 2001 10:00:24 +0100

On Wed, Nov 14, 2001 at 02:09:17AM +0100, universe wrote:
> hi maedels!
>
> gibt es eine nicht-kommerzielle high availability software fuer
> FreeBSD? ich suche etwas vergleichbares zu "Linux Failsafe" von
> SGI/SuSE (http://oss.sgi.com/projects/failsafe) oder "heartbeat"
> (http://linux-ha.org) unter linux. es gibt zwar "Understudy" von
> polyserve (http://www.freebsd.org/commercial/software.html#PolyServe),
> diese software ist aber schweineteuer und scheint davon abgesehen
> nicht besonders toll zu sein.
>
> das beste aber waere, wenn es sogar etwas vergleichbares zu "DRBD"
> (steht fuer "Distributed Replicated Block Device") geben wuerde.
> (http://www.complang.tuwien.ac.at/reisner/drbd)
>
> es handelt sich bei DRBD um ein network raid 1-system. DRBD besteht
> nur aus einem kernel-modul fuer linux und einigen scripten. im
> zusammenspiel mit heartbeat oder Linux Failsafe wird das high
> availability-system komplett.
>
> so funktionierts (fuer diejenigen, die noch nie was davon gehoert
> haben):
> 2 nodes (node = server-system, 1x "live" und 1x "backup") laufen
> gleichzeitig. requests fuer dienste (z.b. apache) treffen nur auf live
> ein. auf live wurde die DRBD-device (/dev/nbX) wie ein gewoehnliches
> filesystem gemountet. alle daten, die dort hineingeschrieben werden
> speichert das system auf der lokalen festplatte und spiegelt diese
> automatisch via ethernet-verbindung auf "backup". faellt jetzt die
> live-node aus, erkennt das die backup-node, mountet nach einer pause
> von 30 sekunden das /dev/nbX filesystem und startet (mit hilfe von
> heartbeat oder Linux Failsafe) die benoetigten dienste. vorher
> uebernimmt es noch die IP-adresse(n) der live-node. die beiden nodes
> sind ueber eine separate netzwerkkarte direkt miteinander verbunden.

Ein Device für die Aufgabe übers Netzwerk zu verteilen hört sich für
mich nach einer Kranken Idee an.
1. Hast du auf zweiten Maschine ein ungeprüftes Filesystem
2. Ist der Rückweg in den Normalbetrieb ist umständlich.

Besser ist es das auf Filesystemebene zu machen.
FreeBSD hat fürs Netzwerk NFS und für eine lokale Platte UFS.
Jetzt geht man auf "live" hin und mountet »beides« mittels eines
Stackable Filessystems zusammen!
Man hat dabei ein Filesystem dazwischen, welches dafür sorgt, das
Aktualisierungen auf beide darunterliegende Filesysteme gemacht werden.

Vorteile:
1. Man ist nicht auf Partitionsboundaries angewiesen.
2. Man hat auf "back" ein immer gültiges Filesystem
3. Man kann den Rückweg per rsync differentiel machen.
4. Du kannst auch differentiell "back" nachsyncronisieren.

Für reelle Implementierungen von solchen Stackable Layern solltest
du mal hier nachsehen:
http://www.cs.columbia.edu/~ezk/research/fist/

> hier werden also, im gegenteil zu dem "normalen" heartbeat/Linux
> Failsafe-modell keine separaten festplatten benoetigt, kosten fuer ein
> disk-array oder vergleichbares fallen damit weg. ausserdem kann man
> ide-platten verwenden, spart wieder etwas geld.

Das verstehe ich nicht.
Du musst auf beide Platten schreiben.
Ohne Schreibcache sind IDE Platten aber gerade dort extrem langsam.
Mit Schreibcache hast du keinen Überblick darüber welche Bereiche auf
der Platte gerade syncron sind.

Abgesehen davon sehe ich dabei das Problem das solche Bastellösungen
für mehr Totalausfälle sorgen, als eine Einzelmaschine aleine.
Wenn du über solche Preisgünstigen Lösungen nachdenkst bist du mit
einer Qualitativ guten Einzelmaschine und Hardware Raid auf SCSI
wesentlich besser und vermutlich günstiger bedient.
Schneller wirds auch sein, weil du über performatere Kanäle spiegelst.

-- 
B.Walter              COSMO-Project         http://www.cosmo-project.de
ticso(at)cicely.de         Usergroup           info(at)cosmo-project.de
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Wed 14 Nov 2001 - 10:03:39 CET

search this site