tachtler:hochverfuegbarkeit_glusterfs
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende ÜberarbeitungLetzte ÜberarbeitungBeide Seiten der Revision | ||
tachtler:hochverfuegbarkeit_glusterfs [2012/09/10 14:21] – klaus | tachtler:hochverfuegbarkeit_glusterfs [2012/09/12 23:36] – klaus | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== Hochverfügbarkeit GlusterFS ====== | ====== Hochverfügbarkeit GlusterFS ====== | ||
- | [[tachtler: | + | [[tachtler: |
\\ | \\ | ||
\\ | \\ | ||
- | [[http:// | + | [[http:// |
{{: | {{: | ||
Zeile 10: | Zeile 10: | ||
===== Vorbereitung ===== | ===== Vorbereitung ===== | ||
- | Nachfolgende vorbereitende Schritte sind notwendig, um eine [[http:// | + | Nachfolgende vorbereitende Schritte sind notwendig, um ein [[http:// |
* Eintragung der beteiligtne Server bzw. **Knoten** in die Namensauflösung **DNS**, bzw. **''/ | * Eintragung der beteiligtne Server bzw. **Knoten** in die Namensauflösung **DNS**, bzw. **''/ | ||
- | * Freischaltung der benötigten **Paketfilter-Regeln**, | + | * Freischaltung der benötigten **Paketfilter-Regeln**, |
* Einbindung des externen, benötigten Repositorys, | * Einbindung des externen, benötigten Repositorys, | ||
um anschließend die | um anschließend die | ||
Zeile 22: | Zeile 22: | ||
==== /etc/hosts ==== | ==== /etc/hosts ==== | ||
- | In der nachfolgend | + | In der nachfolgend |
**Server/ | **Server/ | ||
Zeile 28: | Zeile 28: | ||
127.0.0.1 | 127.0.0.1 | ||
::1 | ::1 | ||
- | 192.168.1.200 | + | 192.168.1.200 |
- | 192.168.1.201 | + | 192.168.1.201 |
- | 192.168.1.202 | + | 192.168.1.202 |
</ | </ | ||
Zeile 37: | Zeile 37: | ||
127.0.0.1 | 127.0.0.1 | ||
::1 | ::1 | ||
- | 192.168.1.200 | + | 192.168.1.200 |
- | 192.168.1.201 | + | 192.168.1.201 |
- | 192.168.1.202 | + | 192.168.1.202 |
- | </ | + | |
- | + | ||
- | Zusätzlich, | + | |
- | + | ||
- | **Server/ | + | |
- | < | + | |
- | 127.0.0.1 | + | |
- | ::1 | + | |
- | 192.168.1.200 | + | |
- | 192.168.1.201 | + | |
- | 192.168.1.202 | + | |
</ | </ | ||
==== / | ==== / | ||
- | Damit die Server/ | + | Damit die Server/ |
Um die aktuellen '' | Um die aktuellen '' | ||
Zeile 93: | Zeile 82: | ||
* **'' | * **'' | ||
- | Ein erneute Abfrage des '' | + | Eine erneute Abfrage des '' |
< | < | ||
# iptables -L -nv --line-numbers | # iptables -L -nv --line-numbers | ||
Zeile 126: | Zeile 115: | ||
</ | </ | ||
- | Um diese '' | + | Um diese '' |
< | < | ||
# service iptables save | # service iptables save | ||
Zeile 134: | Zeile 123: | ||
==== EPEL-Repository einbinden ==== | ==== EPEL-Repository einbinden ==== | ||
- | Bevor externe Repository' | + | Bevor externe Repository' |
Dies kann durch die Installation des sogenannten | Dies kann durch die Installation des sogenannten | ||
- | * **Priority-Plugins** für den Paket-Manager **'' | + | * **Priorities-Plugin** für den Paket-Manager **'' |
erfolgen. | erfolgen. | ||
- | Die Installation des **Priority-Plugins** für den Paket-Manager **'' | + | Die Installation des **Priorities-Plugin** für den Paket-Manager **'' |
< | < | ||
# yum install yum-plugin-priorities | # yum install yum-plugin-priorities | ||
Zeile 181: | Zeile 170: | ||
</ | </ | ||
- | Der Inhalt des Paketes **'' | + | Der Inhalt des Paketes **'' |
< | < | ||
# rpm -qil yum-plugin-priorities | # rpm -qil yum-plugin-priorities | ||
Zeile 241: | Zeile 230: | ||
</ | </ | ||
- | :!: **HINWEIS** - Den eigenen Rpository' | + | :!: **HINWEIS** - Den eigenen Rpository' |
- | Um [[http:// | + | Um [[http:// |
< | < | ||
# wget http:// | # wget http:// | ||
Zeile 317: | Zeile 306: | ||
</ | </ | ||
- | Der Inhalt des Paketes | + | Der Inhalt des Pakets |
< | < | ||
# rpm -qil epel-release | # rpm -qil epel-release | ||
Zeile 341: | Zeile 330: | ||
</ | </ | ||
- | :!: **HINWEIS** - Abschließend sollte hier die **Priorität** des [[http:// | + | :!: **HINWEIS** - Abschließend sollte hier die **Priorität** des [[http:// |
Was im Beispiel der Konfigurationsdatei | Was im Beispiel der Konfigurationsdatei | ||
Zeile 432: | Zeile 421: | ||
</ | </ | ||
- | Um zu überprüfen, | + | Um zu überprüfen, |
**Server/ | **Server/ | ||
Zeile 456: | Zeile 445: | ||
===== Server: Konfiguration ===== | ===== Server: Konfiguration ===== | ||
- | Nachfolgend soll eine **grundlegende** Konfiguration eines [[http:// | + | Nachfolgend soll eine **grundlegende** Konfiguration eines [[http:// |
* **zwei Knoten** | * **zwei Knoten** | ||
durchgeführt werden. | durchgeführt werden. | ||
Zeile 496: | Zeile 485: | ||
===== Server: starten ===== | ===== Server: starten ===== | ||
- | :!: **HINWEIS** - **Der Start der Server erfolgt __NUR__ auf den Server/ | + | :!: **HINWEIS** - **Der Start der Server/ |
Mit nachfolgendem Befehl, sollten nun auf **beiden Servern/ | Mit nachfolgendem Befehl, sollten nun auf **beiden Servern/ | ||
Zeile 571: | Zeile 560: | ||
===== Trusted Storage Pools ===== | ===== Trusted Storage Pools ===== | ||
- | :!: **HINWEIS** - **Der Konfiguration ist __NUR__ auf den __EINEN__ der Server/ | + | :!: **HINWEIS** - **Die Konfiguration ist __NUR__ auf __EINEN__ der Server/ |
Bevor mit der Konfiguration eines unter [[http:// | Bevor mit der Konfiguration eines unter [[http:// | ||
Zeile 585: | Zeile 574: | ||
</ | </ | ||
- | :!: **HINWEIS** - **Es ist __NICHT__ erforderlich, | + | :!: **HINWEIS** - **Es ist __NICHT__ |
==== Server/ | ==== Server/ | ||
Zeile 617: | Zeile 606: | ||
**Server/ | **Server/ | ||
< | < | ||
- | # gluster peer detache | + | # gluster peer detach |
Detach successful | Detach successful | ||
</ | </ | ||
Zeile 625: | Zeile 614: | ||
Um nach, unter dem nachfolgendem internen Link innerhalb dieses DokuWiki --> [[tachtler: | Um nach, unter dem nachfolgendem internen Link innerhalb dieses DokuWiki --> [[tachtler: | ||
- | Es nachfolgend aufgezählte Arten, eines **Volume** (Speicherbereich auf physischen Festplatte(n)): | + | Es gibt nachfolgend aufgezählte Arten, eines **Volume** (Speicherbereich auf physischen Festplatte(n)): |
- **Distributed** - Verteilung einer Datei, als ganzes, auf einen der **Bricks** (Server/ | - **Distributed** - Verteilung einer Datei, als ganzes, auf einen der **Bricks** (Server/ | ||
- **Replicated** - Verteilung einer Datei, als ganzes - redundant - auf die **Bricks** (Server/ | - **Replicated** - Verteilung einer Datei, als ganzes - redundant - auf die **Bricks** (Server/ | ||
Zeile 636: | Zeile 625: | ||
* **Distributed Striped Replicated** Verteilung einer Datei, in Teilen, auf zwei oder mehr **Bricks** (Server/ | * **Distributed Striped Replicated** Verteilung einer Datei, in Teilen, auf zwei oder mehr **Bricks** (Server/ | ||
- | Da ein Bild bekanntlich mehr als 1.000 Worte sagen kann, hier noch einem die Arten eines **Volume** (Speicherbereich auf physischen Festplatte(n)) mit grafischer Beschreibung (wo möglich und sinnvoll): | + | Hier noch einem die Arten eines **Volume** (Speicherbereich auf physischen Festplatte(n)) mit grafischer Beschreibung (wo möglich und sinnvoll): |
==== Distributed Volume ==== | ==== Distributed Volume ==== | ||
- | **Einsatz**: | + | **Einsatz**: |
* **+** Performance | * **+** Performance | ||
* **-** Sicherheit | * **-** Sicherheit | ||
Zeile 656: | Zeile 645: | ||
==== Replicated Volume ==== | ==== Replicated Volume ==== | ||
- | **Einsatz**: | + | **Einsatz**: |
* **+** hohe Verfügbarkeit | * **+** hohe Verfügbarkeit | ||
* **+** hohe Zuverlässigkeit | * **+** hohe Zuverlässigkeit | ||
Zeile 674: | Zeile 663: | ||
==== Striped Volume ==== | ==== Striped Volume ==== | ||
- | **Einsatz**: | + | **Einsatz**: |
* **+** hohe Skalierbarkeit | * **+** hohe Skalierbarkeit | ||
* **+** paralleler Zugriff auf große Dateien | * **+** paralleler Zugriff auf große Dateien | ||
Zeile 691: | Zeile 680: | ||
==== Distributed Striped Volume ==== | ==== Distributed Striped Volume ==== | ||
- | **Einsatz**: | + | **Einsatz**: |
* **+** Performance | * **+** Performance | ||
* **+** hohe Skalierbarkeit | * **+** hohe Skalierbarkeit | ||
Zeile 709: | Zeile 698: | ||
==== Distributed Replicated Volume ==== | ==== Distributed Replicated Volume ==== | ||
- | **Einsatz**: | + | **Einsatz**: |
* **+** hohe Verfügbarkeit | * **+** hohe Verfügbarkeit | ||
* **+** hohe Zuverlässigkeit | * **+** hohe Zuverlässigkeit | ||
Zeile 727: | Zeile 716: | ||
==== Striped Replicated Volume ==== | ==== Striped Replicated Volume ==== | ||
- | **Einsatz**: | + | **Einsatz**: |
* **+** hohe Verfügbarkeit | * **+** hohe Verfügbarkeit | ||
* **+** hohe Zuverlässigkeit | * **+** hohe Zuverlässigkeit | ||
Zeile 746: | Zeile 735: | ||
===== Volume: Replicated erstellen ===== | ===== Volume: Replicated erstellen ===== | ||
- | :!: **HINWEIS** - **Der Konfiguration ist __NUR__ auf den __EINEN__ der Server/ | + | :!: **HINWEIS** - **Die Konfiguration ist __NUR__ auf __EINEN__ der Server/ |
- | In dem hier als Beispiel behandelten Fall, soll nun ein **GlusterFS Server Volume - Replicated Volume** erstellt werden. | + | In dem hier als Beispiel behandelten Fall, soll nun ein **GlusterFS Server Volume - Replicated Volume** erstellt werden. |
< | < | ||
# gluster volume create httpd_data replica 2 transport tcp ha-node-01.intra.tachtler.net:/ | # gluster volume create httpd_data replica 2 transport tcp ha-node-01.intra.tachtler.net:/ | ||
Zeile 755: | Zeile 744: | ||
**__Erklärung__: | **__Erklärung__: | ||
- | * **'' | + | * **'' |
* **'' | * **'' | ||
- | * **'' | + | * **'' |
* **'' | * **'' | ||
* **'' | * **'' | ||
Zeile 789: | Zeile 778: | ||
===== Client: Installation ===== | ===== Client: Installation ===== | ||
- | :!: **HINWEIS** - **Die Installation erfolgt auf __BEIDEN__ | + | :!: **HINWEIS** - **Die Installation erfolgt auf __BEIDEN__ Client/ |
Um die Client-Komponenten von [[http:// | Um die Client-Komponenten von [[http:// | ||
- | * **'' | + | * **'' |
* **'' | * **'' | ||
Zeile 846: | Zeile 835: | ||
===== Client: Konfiguration ===== | ===== Client: Konfiguration ===== | ||
- | :!: **HINWEIS** - **Die Konfiguration erfolgt auf __BEIDEN__ | + | :!: **HINWEIS** - **Die Konfiguration erfolgt auf __BEIDEN__ Client/ |
Die Konfiguration ist eigentlich nur das **mounten** (einhängen) des durch [[http:// | Die Konfiguration ist eigentlich nur das **mounten** (einhängen) des durch [[http:// | ||
Zeile 857: | Zeile 846: | ||
</ | </ | ||
- | Die Besitzrechte, des soeben neu erstellten Verzeichnisses, | + | :!: **HINWEIS** - Die Besitz- und Dateirechte, des soeben neu erstellten Verzeichnisses, |
- | | + | |
- | und der | + | |
- | | + | |
- | liegen. | + | |
- | Die Dateirechte, | + | ==== Mount: glusterfs ==== |
- | * **Besitzer:** - '' | + | |
- | und der | + | |
- | * **Gruppe:** - '' | + | |
- | sowie bei | + | |
- | * **Andere:** - '' | + | |
- | gesetzte sein. | + | |
+ | Damit auch nach einem Start bzw. Neustart des Servers das Verzeichnis automatisch **gemounted** (eingehängt) wird, sollten bei **beiden Clients/ | ||
+ | * **''/ | ||
+ | durchgeführt werden (**nur relevanter Ausschnitt**): | ||
+ | |||
+ | **Server/ | ||
+ | < | ||
+ | ... | ||
+ | 192.168.1.201:/ | ||
+ | ... | ||
+ | </ | ||
+ | |||
+ | **Server/ | ||
+ | < | ||
+ | ... | ||
+ | 192.168.1.202:/ | ||
+ | ... | ||
+ | </ | ||
+ | |||
+ | Dies bewirkt das **mounten** (einhängen) des durch [[http:// | ||
+ | |||
+ | :!: **WICHTIG** - **Jeder Client/ | ||
+ | |||
+ | Um den soeben durchgeführten Eintrag in die Konfigurationsdatei **''/ | ||
+ | |||
+ | **Server/ | ||
+ | < | ||
+ | # mount -a | ||
+ | </ | ||
+ | |||
+ | **Server/ | ||
+ | < | ||
+ | # mount -a | ||
+ | </ | ||
+ | |||
+ | Ob das **mounten** (einhängen) auch tatsächlich funktioniert hat, kann mit nachfolgendem Befehl dann abschließend überprüft werden: | ||
+ | |||
+ | **Server/ | ||
+ | < | ||
+ | # df -h | grep /var/www -1 | ||
+ | 192.168.1.201:/ | ||
+ | 3.5G 771M 2.6G 23% /var/www | ||
+ | </ | ||
+ | |||
+ | **Server/ | ||
+ | < | ||
+ | # df -h | grep /var/www -1 | ||
+ | 192.168.1.202:/ | ||
+ | 3.5G 771M 2.6G 23% /var/www | ||
+ | </ | ||
+ | |||
+ | Um zu überprüfen, | ||
+ | * **Server/ | ||
+ | mit nachfolgendem Befehl eine (leere) Datei erstellt werden: | ||
+ | < | ||
+ | # touch / | ||
+ | </ | ||
+ | |||
+ | Anschließend sollte auf | ||
+ | * **Server/ | ||
+ | mit nachfolgendem Befehl überprüft werden, ob die Datei ebenfalls existiert: | ||
+ | < | ||
+ | # ls -l /var/www/ | ||
+ | total 0 | ||
+ | -rw-r--r-- 1 root root 0 Sep 10 12:47 test-datei | ||
+ | </ | ||
+ | |||
+ | ===== Monitoring ===== | ||
+ | |||
+ | Um ein mit [[http:// | ||
+ | |||
+ | ==== Monitoring: profile ==== | ||
+ | |||
+ | Um die Überwachung im Modus **profile** zu aktivieren, ist nachfolgender Befehl notwendig: | ||
+ | < | ||
+ | # gluster volume profile httpd_data start | ||
+ | Starting volume profile on httpd_data has been successful | ||
+ | </ | ||
+ | |||
+ | Um die Werte aus der Überwachung im Modus **profile** anzuzeigen, ist nachfolgender Befehl notwendig: | ||
+ | < | ||
+ | # gluster volume profile httpd_data info | ||
+ | Brick: ha-node-02.intra.tachtler.net:/ | ||
+ | Cumulative Stats: | ||
+ | Block Size: 8b+ 32b+ 64b+ | ||
+ | No. of Reads: | ||
+ | No. of Writes: | ||
+ | |||
+ | Block Size: 128b+ | ||
+ | No. of Reads: | ||
+ | No. of Writes: | ||
+ | |||
+ | Block Size: | ||
+ | No. of Reads: | ||
+ | No. of Writes: | ||
+ | |||
+ | Block Size: | ||
+ | No. of Reads: | ||
+ | No. of Writes: | ||
+ | | ||
+ | | ||
+ | 0.00 0.00 us 0.00 us 0.00 us 534 | ||
+ | 0.00 0.00 us 0.00 us 0.00 us | ||
+ | 100.00 | ||
+ | |||
+ | Duration : 1097 seconds | ||
+ | Data Read : 0 bytes | ||
+ | Data Written : 587693 bytes | ||
+ | |||
+ | Brick: ha-node-02.intra.tachtler.net:/ | ||
+ | Interval 1 Stats: | ||
+ | | ||
+ | | ||
+ | 100.00 | ||
+ | |||
+ | Duration : 312 seconds | ||
+ | Data Read : 0 bytes | ||
+ | Data Written : 0 bytes | ||
+ | |||
+ | Brick: ha-node-01.intra.tachtler.net:/ | ||
+ | Cumulative Stats: | ||
+ | Block Size: 8b+ 32b+ 64b+ | ||
+ | No. of Reads: | ||
+ | No. of Writes: | ||
+ | |||
+ | Block Size: 128b+ | ||
+ | No. of Reads: | ||
+ | No. of Writes: | ||
+ | |||
+ | Block Size: | ||
+ | No. of Reads: | ||
+ | No. of Writes: | ||
+ | |||
+ | Block Size: | ||
+ | No. of Reads: | ||
+ | No. of Writes: | ||
+ | | ||
+ | | ||
+ | 0.00 0.00 us 0.00 us 0.00 us 1 FORGET | ||
+ | 0.00 0.00 us 0.00 us 0.00 us 535 | ||
+ | 0.00 0.00 us 0.00 us 0.00 us | ||
+ | 100.00 | ||
+ | |||
+ | Duration : 1425 seconds | ||
+ | Data Read : 0 bytes | ||
+ | Data Written : 587693 bytes | ||
+ | |||
+ | Brick: ha-node-01.intra.tachtler.net:/ | ||
+ | Interval 1 Stats: | ||
+ | | ||
+ | | ||
+ | 100.00 | ||
+ | |||
+ | Duration : 313 seconds | ||
+ | Data Read : 0 bytes | ||
+ | Data Written : 0 bytes | ||
+ | |||
+ | </ | ||
+ | |||
+ | Um die Überwachung im Modus **profile** zu deaktivieren, | ||
+ | < | ||
+ | # gluster volume profile httpd_data stop | ||
+ | Stopping volume profile on httpd_data has been successful | ||
+ | </ | ||
+ | |||
+ | ==== Monitoring: top ==== | ||
+ | |||
+ | Nachfolgende Befehle geben die Nutzungsdaten eines mit [[http:// | ||
+ | * **'' | ||
+ | * **'' | ||
+ | * **'' | ||
+ | * **'' | ||
+ | * **'' | ||
+ | |||
+ | Der Befehl ist immer wie folgt aufgebaut: | ||
+ | < | ||
+ | # gluster volume top < | ||
+ | </ | ||
+ | |||
+ | Mit nachfolgender Befehl, können z.B. die Dateien angezeigt werden, welche geöffnet wurden und zusätzlich wie oft diese geöffnet wurden. | ||
+ | (**'' | ||
+ | < | ||
+ | # gluster volume top httpd_data open brick ha-node-01.intra.tachtler.net:/ | ||
+ | volume top successful | ||
+ | Brick: ha-node-01.intra.tachtler.net:/ | ||
+ | Current open fds: 0, Max open fds: 3 | ||
+ | Count | ||
+ | ======================= | ||
+ | 2 / | ||
+ | 2 / | ||
+ | 2 / | ||
+ | 2 / | ||
+ | 2 / | ||
+ | 2 / | ||
+ | 2 / | ||
+ | 2 / | ||
+ | 2 / | ||
+ | 2 / | ||
+ | 2 / | ||
+ | 2 / | ||
+ | 2 / | ||
+ | 2 / | ||
+ | 2 / | ||
+ | 2 / | ||
+ | 2 / | ||
+ | 2 / | ||
+ | 2 / | ||
+ | 2 / | ||
+ | 2 / | ||
+ | 1 / | ||
+ | 1 / | ||
+ | 1 / | ||
+ | </ | ||
+ | |||
+ | Nachfolgende Befehle geben die Nutzungsdaten eines mit [[http:// | ||
+ | * **'' | ||
+ | * **'' | ||
+ | |||
+ | Der Befehl ist immer wie folgt aufgebaut: | ||
+ | < | ||
+ | # gluster volume top < | ||
+ | </ | ||
+ | |||
+ | Mit nachfolgendem Befehl, können z.B. diese Performance Dateien angezeigt werden. | ||
+ | (**'' | ||
+ | < | ||
+ | # gluster volume top httpd_data write-perf bs 256 count 1 brick ha-node-01.intra.tachtler.net:/ | ||
+ | volume top successful | ||
+ | Brick: ha-node-01.intra.tachtler.net:/ | ||
+ | Throughput 10.67 MBps time 0.0000 secs | ||
+ | MBps Filename | ||
+ | ==== ======== | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | 0 / | ||
+ | </ | ||
+ | |||
+ | ==== Monitoring: Informationen ==== | ||
+ | |||
+ | Mit nachfolgendem Befehl, können Informationen über die Beschaffenheit eines mit[[http:// | ||
+ | < | ||
+ | # gluster volume info httpd_data | ||
+ | |||
+ | Volume Name: httpd_data | ||
+ | Type: Replicate | ||
+ | Status: Started | ||
+ | Number of Bricks: 2 | ||
+ | Transport-type: | ||
+ | Bricks: | ||
+ | Brick1: ha-node-01.intra.tachtler.net:/ | ||
+ | Brick2: ha-node-02.intra.tachtler.net:/ | ||
+ | </ | ||
+ | oder **über alle**, __nicht__ explizit eines **Volume**: | ||
+ | < | ||
+ | # gluster volume info all | ||
+ | |||
+ | Volume Name: httpd_data | ||
+ | Type: Replicate | ||
+ | Status: Started | ||
+ | Number of Bricks: 2 | ||
+ | Transport-type: | ||
+ | Bricks: | ||
+ | Brick1: ha-node-01.intra.tachtler.net:/ | ||
+ | Brick2: ha-node-02.intra.tachtler.net:/ | ||
+ | </ | ||
+ | |||
+ | ===== Performance ===== | ||
+ | |||
+ | Nachfolgend soll eine **kleine** Performance-Messung durchgeführt werden, in dem eine **100 MegaByte** große Datei, einmal auf einem der beiden Client/ | ||
+ | * **lokalem** | ||
+ | und auf dem | ||
+ | * **GlusterFS** | ||
+ | Dateisystem erstellt wird und eine Messung der dafür benötigten Zeit durchgeführt wird. | ||
+ | |||
+ | **Erstellung einer 100 MegaByte großen Datei auf einem lokalem Dateisystem**: | ||
+ | < | ||
+ | # time dd if=/ | ||
+ | 102400+0 records in | ||
+ | 102400+0 records out | ||
+ | 104857600 bytes (105 MB) copied, 0.63121 s, 166 MB/s | ||
+ | |||
+ | real 0m0.640s | ||
+ | user 0m0.022s | ||
+ | sys | ||
+ | </ | ||
+ | |||
+ | **Erstellung einer 100 MegaByte großen Datei auf einem GlusterFS Dateisystem**: | ||
+ | < | ||
+ | # time dd if=/ | ||
+ | 102400+0 records in | ||
+ | 102400+0 records out | ||
+ | 104857600 bytes (105 MB) copied, 13.2261 s, 7.9 MB/s | ||
+ | |||
+ | real 0m13.248s | ||
+ | user 0m0.155s | ||
+ | sys | ||
+ | </ | ||
- | |
tachtler/hochverfuegbarkeit_glusterfs.txt · Zuletzt geändert: 2012/09/21 10:34 von klaus