From owner-svn-doc-head@freebsd.org Tue Mar 15 16:03:05 2016 Return-Path: Delivered-To: svn-doc-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4F4BEAD00E7; Tue, 15 Mar 2016 16:03:05 +0000 (UTC) (envelope-from bhd@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1E3341145; Tue, 15 Mar 2016 16:03:05 +0000 (UTC) (envelope-from bhd@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u2FG34hj084575; Tue, 15 Mar 2016 16:03:04 GMT (envelope-from bhd@FreeBSD.org) Received: (from bhd@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u2FG34QE084574; Tue, 15 Mar 2016 16:03:04 GMT (envelope-from bhd@FreeBSD.org) Message-Id: <201603151603.u2FG34QE084574@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bhd set sender to bhd@FreeBSD.org using -f From: Bjoern Heidotting Date: Tue, 15 Mar 2016 16:03:04 +0000 (UTC) To: doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org Subject: svn commit: r48416 - head/de_DE.ISO8859-1/books/handbook/disks X-SVN-Group: doc-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-doc-head@freebsd.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: SVN commit messages for the doc tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 15 Mar 2016 16:03:05 -0000 Author: bhd Date: Tue Mar 15 16:03:04 2016 New Revision: 48416 URL: https://svnweb.freebsd.org/changeset/doc/48416 Log: Update to r44485: Editorial review of first 1/2 of HAST chapter. Reviewed by: bcr Differential Revision: https://reviews.freebsd.org/D5641 Modified: head/de_DE.ISO8859-1/books/handbook/disks/chapter.xml Modified: head/de_DE.ISO8859-1/books/handbook/disks/chapter.xml ============================================================================== --- head/de_DE.ISO8859-1/books/handbook/disks/chapter.xml Tue Mar 15 16:02:16 2016 (r48415) +++ head/de_DE.ISO8859-1/books/handbook/disks/chapter.xml Tue Mar 15 16:03:04 2016 (r48416) @@ -5,7 +5,7 @@ $FreeBSD$ $FreeBSDde: de-docproj/books/handbook/disks/chapter.xml,v 1.187 2012/04/26 19:32:48 bcr Exp $ - basiert auf: r44473 + basiert auf: r44485 --> Speichermedien @@ -3460,7 +3460,10 @@ Device 1K-blocks Used Av - Highly Available Storage (HAST) + + Highly Available Storage + (<acronym>HAST</acronym>) + DanielGerzoBeigetragen von @@ -3482,69 +3485,27 @@ Device 1K-blocks Used Av high availability - Hochverfügbarkeit ist eine der Hauptanforderungen von - ernsthaften Geschäftsanwendungen und hochverfügbarer Speicher - ist eine Schlüsselkomponente in solchen Umgebungen. Highly - Available STorage, oder HASTHighly Available STorage, wurde von - &a.pjd.email; als ein Framework entwickelt, welches die transparente - Speicherung der gleichen Daten über mehrere physikalisch getrennte - Maschinen ermöglicht, die über ein TCP/IP-Netzwerk verbunden - sind. HAST kann als ein netzbasiertes RAID1 - (Spiegel) verstanden werden und ist dem DRBD®-Speichersystem der - GNU/&linux;-Plattform ähnlich. In Kombination mit anderen - Hochverfügbarkeitseigenschaften von &os; - wie CARP, ermöglicht es - HAST, hochverfügbare Speichercluster zu bauen, - die in der Lage sind, Hardwareausfällen zu widerstehen. - - Nachdem Sie diesen Abschnitt gelesen haben, werden Sie folgendes - wissen: - - - - Was HAST ist, wie es funktioniert und - welche Eigenschaften es besitzt. - - - Wie man HAST auf &os; aufsetzt und - verwendet. - - - Wie man CARP und &man.devd.8; kombiniert, um - ein robustes Speichersystem zu bauen. - - - - Bevor Sie diesen Abschnitt lesen, sollten Sie: - - - - die Grundlagen von &unix; und &os; verstanden haben - (). - - - wissen, wie man Netzwerkschnittstellen und andere Kernsysteme - von &os; konfiguriert (). - - - ein gutes Verständnis der &os;-Netzwerkfunktionalität - besitzen (). - - - - Das HAST-Projekt wurde von der &os; Foundation - mit Unterstützung der OMCnet Internet Service GmbH und - TransIP BV - gesponsert. + Hochverfügbarkeit ist eine der Hauptanforderungen von + ernsthaften Geschäftsanwendungen und hochverfügbarer Speicher + ist eine Schlüsselkomponente in solchen Umgebungen. Highly + Available STorage (HAST) ist ein Framework + in &os;, welches die transparente Speicherung der gleichen + Daten über mehrere physikalisch getrennte Maschinen ermöglicht, + die über ein TCP/IP-Netzwerk verbunden sind. + HAST kann als ein netzbasiertes RAID1 + (Spiegel) verstanden werden und ist dem DRBD®-Speichersystem + der GNU/&linux;-Plattform ähnlich. In Kombination mit anderen + Hochverfügbarkeitseigenschaften von &os; wie + CARP, ermöglicht es HAST, + hochverfügbare Speichercluster zu bauen, die in der Lage sind, + Hardwareausfällen zu widerstehen. - - HAST-Merkmale - - Die Hauptmerkmale des HAST-Systems sind: + Die Hauptmerkmale von HAST sind: - Es kann zur Maskierung von I/O-Fehlern auf lokalen Festplatten + Es kann zur Maskierung von + I/O-Fehlern auf lokalen Festplatten eingesetzt werden. @@ -3574,70 +3535,100 @@ Device 1K-blocks Used Av bauen. - + + Nachdem Sie diesen Abschnitt gelesen haben, werden Sie + folgendes wissen: + + + + Was HAST ist, wie es funktioniert und + welche Eigenschaften es besitzt. + + + Wie man HAST unter &os; aufsetzt und + verwendet. + + + Wie man CARP und &man.devd.8; + kombiniert, um ein robustes Speichersystem zu bauen. + + + + Bevor Sie diesen Abschnitt lesen, sollten Sie: + + + + die Grundlagen von &unix; und &os; verstanden haben + (). + + + wissen, wie man Netzwerkschnittstellen und andere + Kernsysteme von &os; konfiguriert (). + + + ein gutes Verständnis der &os;-Netzwerkfunktionalität + besitzen (). + + + + Das HAST-Projekt wurde von der &os; + Foundation mit Unterstützung der OMCnet Internet Service GmbH + und TransIP BV + gesponsert. HAST im Einsatz - HAST stellt auf Block-Ebene eine synchrone - Replikation eines beliebigen Speichermediums auf mehreren Maschinen zur - Verfügung. Daher werden mindestens zwei physikalische - Maschinen benötigt: der primary, auch - bekannt als master Knoten, sowie der + HAST bietet eine synchrone Replikation + auf Blockebene zwischen zwei Maschinen: einem + primary, auch bekannt als + master Knoten, sowie dem secondary, oder slave Knoten. Diese beiden Maschinen zusammen werden als Cluster bezeichnet. - - HAST ist momentan auf insgesamt zwei Knoten im Cluster - beschränkt. - - Da HAST in einer - primär-sekundär-Konfiguration funktioniert, ist immer nur ein - Knoten des Clusters zu jeder Zeit aktiv. Der - primäre Knoten, auch - active genannt, ist derjenige, der alle I/O-Anfragen - verarbeitet, die an die HAST-Schnittstelle gesendet - werden. Der secondary-Knoten wird automatisch vom - primary-Knoten aus synchronisiert. - - Die physischen Komponenten des HAST-Systems - sind: - - - - lokale Platte am Primärknoten - - - entfernte Platte am Sekundärknoten - - + primär-sekundär-Konfiguration funktioniert, ist immer nur ein + Knoten des Clusters zu jeder Zeit aktiv. Der primäre Knoten, + auch active genannt, ist derjenige, der + alle I/O-Anfragen verarbeitet, die an die + HAST-Schnittstelle gesendet werden. Der + sekundäre Knoten wird automatisch vom primären Knoten aus + synchronisiert. + + Die physischen Komponenten des + HAST-Systems sind die lokale Platte am + Primärknoten und die entfernte Platte am + Sekundärknoten. HAST arbeitet synchron auf Blockebene, was es für Dateisysteme und Anwendungen transparent macht. - HAST stellt gewöhnliche GEOM-Provider in + HAST stellt gewöhnliche + GEOM-Provider in /dev/hast/ für die Verwendung durch - andere Werkzeuge oder Anwendungen zur Verfügung. Somit gibt - es keinen Unterschied zwischen dem Einsatz von + andere Werkzeuge oder Anwendungen zur Verfügung. Es gibt + keinen Unterschied zwischen dem Einsatz von HAST bereitgestellten Geräten und - herkömmlichen Platten, Partitionen, etc. + herkömmlichen Platten oder Partitionen. - Jede Schreib-, Lösch- oder Entleerungsoperation wird an die - lokale und über TCP/IP zu der entfernt liegenden - Platte gesendet. Jede Leseoperation wird von der lokalen Platte - durchgeführt, es sei denn, die lokale Platte ist nicht aktuell - oder es tritt ein I/O-Fehler auf. In solchen Fällen wird die - Leseoperation an den Sekundärknoten geschickt. - - HAST versucht, eine schnelle Fehlerbereinigung - zu gewährleisten. Aus diesem Grund ist es sehr wichtig, die - Synchronisationszeit nach dem Ausfall eines Knotens zu reduzieren. - Um eine schnelle Synchronisation zu ermöglichen, verwaltet - HAST eine Bitmap von unsauberen Bereichen - auf der Platte und synchronisiert nur diese während einer - regulären Synchronisation (mit Ausnahme der initialen - Synchronisation). + Jede Schreib-, Lösch- oder Entleerungsoperation wird an + die lokale und über TCP/IP zu der entfernt + liegenden Platte gesendet. Jede Leseoperation wird von der + lokalen Platte durchgeführt, es sei denn, die lokale Platte + ist nicht aktuell oder es tritt ein + I/O-Fehler auf. In solchen Fällen wird die + Leseoperation an den Sekundärknoten geschickt. + + HAST versucht, eine schnelle + Fehlerbereinigung zu gewährleisten. Aus diesem Grund ist es + wichtig, die Synchronisationszeit nach dem Ausfall eines + Knotens zu reduzieren. Um eine schnelle Synchronisation zu + ermöglichen, verwaltet HAST eine Bitmap von + unsauberen Bereichen auf der Platte und synchronisiert nur + diese während einer regulären Synchronisation (mit Ausnahme + der initialen Synchronisation). Es gibt viele Wege, diese Synchronisation zu behandeln. HAST implementiert mehrere Replikationsarten, um @@ -3645,7 +3636,7 @@ Device 1K-blocks Used Av - memsync: meldet Schreiboperationen als + memsync: Dieser Modus meldet Schreiboperationen als vollständig, wenn die lokale Schreiboperation beendet ist und der entfernt liegende Knoten die Ankunft der Daten bestätigt hat, jedoch bevor die Daten wirklich gespeichert @@ -3655,19 +3646,20 @@ Device 1K-blocks Used Av zusätzlich eine gute Verlässlichkeit zu bieten. - fullsync: meldet Schreiboperationen als - vollständig, wenn die lokale Schreiboperation beendet ist - und die entfernte Schreiboperation ebenfalls abgeschlossen wurde. - Dies ist der sicherste und zugleich der langsamste - Replikationsmodus. Er stellt den momentanen Standardmodus - dar. + fullsync: Dieser Modus meldet + Schreiboperationen als vollständig, wenn sowohl die + lokale, als auch die entfernte Schreiboperation + abgeschlossen wurde. Dies ist der sicherste und + zugleich der langsamste Replikationsmodus. Er stellt + den momentanen Standardmodus dar. - async: meldet Schreiboperationen als - vollständig, wenn lokale Schreibvorgänge abgeschlossen - wurden. Dies ist der schnellste und gefährlichste - Replikationsmodus. Er sollte verwendet werden, wenn die Latenz - zu einem entfernten Knoten bei einer Replikation zu hoch ist + async: Dieser Modus meldet + Schreiboperationen als vollständig, wenn lokale + Schreibvorgänge abgeschlossen wurden. Dies ist der + schnellste und gefährlichste Replikationsmodus. Er + sollte nur verwendet werden, wenn die Latenz zu einem + entfernten Knoten bei einer Replikation zu hoch ist für andere Modi. @@ -3676,64 +3668,64 @@ Device 1K-blocks Used Av HAST-Konfiguration - HAST benötigt - GEOM_GATE-Unterstützung, welche - standardmäßig nicht im GENERIC-Kernel - enthalten ist. Jedoch ist in der Standardinstallation von - &os; geom_gate.ko als ladbares Modul - vorhanden. Alternativ lässt sich die - GEOM_GATE-Unterstützung in den Kernel - statisch einbauen, indem folgende Zeile zur - Kernelkonfigurationsdatei hinzugefügt wird: - - options GEOM_GATE - - Das HAST-Framework besteht aus Sicht des - Betriebssystems aus mehreren Bestandteilen: + Das HAST-Framework besteht aus mehreren + Komponenten: Dem &man.hastd.8;-Daemon, welcher für - Datensynchronisation verantwortlich ist, + Datensynchronisation verantwortlich ist. Wenn dieser + Daemon gestartet wird, wird automatisch + geom_gate.ko geladen. - Dem &man.hastctl.8; Management-Werkzeug, + Dem &man.hastctl.8; Management-Werkzeug. - Der Konfigurationsdatei &man.hast.conf.5;. + Der Konfigurationsdatei &man.hast.conf.5;. Diese + Datei muss vorhanden sein, bevor + hastd gestartet wird. + Alternativ lässt sich die + GEOM_GATE-Unterstützung in den Kernel + statisch einbauen, indem folgende Zeile zur + Kernelkonfigurationsdatei hinzugefügt wird. Anschließend muss + der Kernel, wie in beschrieben, + neu gebaut werden: + + options GEOM_GATE + Das folgende Beispiel beschreibt, wie man zwei Knoten als - master-slave / - primary-secondary mittels - HAST konfiguriert, um Daten zwischen diesen beiden - auszutauschen. Die Knoten werden als - hasta mit der IP-Adresse - 172.16.0.1 und - hastb mit der IP-Adresse - 172.16.0.2 bezeichnet. Beide Knoten - besitzen eine dedizierte Festplatte - /dev/ad6 mit der - gleichen Grösse für den HAST-Betrieb. - Der HAST-Pool, manchmal auch Ressource - genannt, oder der GEOM-Provider in + master-slave / primary-secondary mittels + HAST konfiguriert, um Daten zwischen diesen + beiden auszutauschen. Die Knoten werden als + hasta mit der IP-Adresse + 172.16.0.1 und hastb mit + der IP-Adresse + 172.16.0.2 bezeichnet. Beide Knoten + besitzen eine dedizierte Festplatte + /dev/ad6 mit der gleichen Größe für den + HAST-Betrieb. Der + HAST-Pool, manchmal auch Ressource genannt, + oder der GEOM-Provider in /dev/hast/ wird als - test bezeichnet. + test bezeichnet. Die Konfiguration von HAST wird in - /etc/hast.conf vorgenommen. Diese Datei sollte - auf beiden Knoten gleich sein. Die denkbar einfachste Konfiguration + /etc/hast.conf vorgenommen. Diese Datei + sollte auf beiden Knoten gleich sein. Die einfachste Konfiguration ist folgende: - resource test { - on hasta { - local /dev/ad6 - remote 172.16.0.2 + resource test { + on hasta { + local /dev/ad6 + remote 172.16.0.2 } - on hastb { - local /dev/ad6 - remote 172.16.0.1 + on hastb { + local /dev/ad6 + remote 172.16.0.1 } } @@ -3742,19 +3734,19 @@ Device 1K-blocks Used Av Es ist ebenfalls möglich, den Hostnamen in den - remote-Anweisungen zu verwenden. Stellen Sie in - solchen Fällen sicher, dass diese Rechner auch aufgelöst - werden können und in /etc/hosts, oder - im lokalen DNS definiert sind. + remote-Anweisungen zu verwenden, falls + die Rechner aufgelöst werden können und in + /etc/hosts, oder im lokalen + DNS definiert sind. - Da nun die Konfiguration auf beiden Rechnern vorhanden + Sobald die Konfiguration auf beiden Rechnern vorhanden ist, kann ein HAST-Pool erstellt werden. Lassen Sie diese Kommandos auf beiden Knoten ablaufen, um die initialen Metadaten auf die lokale Platte zu schreiben und starten Sie anschliessend &man.hastd.8;: - &prompt.root; hastctl create test + &prompt.root; hastctl create test &prompt.root; service hastd onestart @@ -3771,54 +3763,42 @@ Device 1K-blocks Used Av oder secondary, wird vom einem Administrator, oder einer Software wie Heartbeat, mittels - &man.hastctl.8; festgelegt. Auf dem primären - Knoten hasta - geben Sie diesen Befehl ein: + &man.hastctl.8; festgelegt. Auf dem primären Knoten + hasta geben Sie diesen Befehl ein: - &prompt.root; hastctl role primary test + &prompt.root; hastctl role primary test - Geben Sie folgendes Kommando auf dem sekundären - Knoten hastb - ein: + Geben Sie folgendes Kommando auf dem sekundären Knoten + hastb ein: + + &prompt.root; hastctl role secondary test + + Überprüfen Sie das Ergebnis mit hastctl + auf beiden Knoten: - &prompt.root; hastctl role secondary test + &prompt.root; hastctl status test - - Es kann passieren, dass beide Knoten nicht in der Lage - sind, miteinander zu kommunizieren und dadurch beide als - primäre Knoten konfiguriert sind; die Konsequenz daraus wird - als split-brain bezeichnet. Um diese - Situation zu bereinigen, folgen Sie den Schritten, die - in beschrieben sind. - - - Überprüfen Sie das Ergebnis mit &man.hastctl.8; auf beiden - Knoten: - - &prompt.root; hastctl status test - - Der wichtigste Teil ist die - status-Textzeile, die auf jedem Knoten - complete lauten sollte. Falls der Status - als degraded zurückgemeldet wird, ist etwas - schief gegangen. Zu diesem Zeitpunkt hat die Synchronisation - zwischen den beiden Knoten bereits begonnen. Die - Synchronisation ist beendet, wenn + Überprüfen Sie die status-Zeile. Wird + hier degraded angezeigt, dann ist etwas mit + der Konfigurationsdatei nicht in Ordnung. Auf jedem Konten + sollte complete angezeit werden, was + bedeutet, dass die Synchronisation zwischen den beiden Knoten + gestartet wurde. Die Synchronisierung ist abgeschlossen, wenn hastctl status meldet, dass die dirty-Bereiche 0 Bytes betragen. Der nächste Schritt ist, ein Dateisystem auf dem - /dev/hast/test GEOM-Provider anzulegen - und dieses ins System einzuhängen. Dies muss auf dem - primary-Knoten durchgeführt werden, da - /dev/hast/test nur auf dem - primary-Knoten erscheint. Die Erstellung - des Dateisystems kann ein paar Minuten dauern, abhängig von - der Größe der Festplatte: - - &prompt.root; newfs -U /dev/hast/test -&prompt.root; mkdir /hast/test -&prompt.root; mount /dev/hast/test /hast/test + GEOM-Provider anzulegen und dieses ins + System einzuhängen. Dies muss auf dem + primary-Knoten durchgeführt werden. + Die Erstellung des Dateisystems kann ein paar Minuten dauern, + abhängig von der Größe der Festplatte. Dieses Beispiel + erstellt ein UFS-Dateisystem auf + /dev/hast/test: + + &prompt.root; newfs -U /dev/hast/test +&prompt.root; mkdir /hast/test +&prompt.root; mount /dev/hast/test /hast/test Sobald das HAST-Framework richtig konfiguriert wurde, besteht der letzte Schritt nun darin,