|
1 | 1 | --- |
2 | | -title: "Bare-Metal-Bereitstellung" |
3 | | -description: "Bei der Bereitstellung von RustFS auf Bare-Metal-Servern können Sie die Hardware-Performance maximieren und die beste Speichereffizienz erzielen." |
| 2 | +title: "Windows/Linux Bare-Metal- und Virtualisierungsbereitstellung" |
| 3 | +description: "Open Source, S3-kompatibel, Enterprise-gehärtet und extrem schnell" |
4 | 4 | --- |
5 | 5 |
|
6 | | -# Bare-Metal-Bereitstellung |
| 6 | +# Windows/Linux Bare-Metal- und Virtualisierungsunterstützung |
7 | 7 |
|
8 | | -Bei der Bereitstellung von RustFS auf Bare-Metal-Servern können Sie die Hardware-Performance maximieren und die beste Speichereffizienz erzielen. Dieser Leitfaden behandelt Best Practices für Bare-Metal-Bereitstellungen. |
| 8 | +Open Source, S3-kompatibel, Enterprise-gehärtet und extrem schnell. |
9 | 9 |
|
10 | | -## Hardware-Anforderungen |
| 10 | +RustFS ist ein hochperformantes, verteiltes Objektspeichersystem. Es ist softwaredefiniert, läuft auf branchenüblicher Hardware und ist zu 100% Open Source unter der Hauptlizenz Apache V2.0 Open Source. |
11 | 11 |
|
12 | | -### Minimalkonfiguration |
| 12 | +RustFS unterscheidet sich dadurch, dass es von Grund auf als Standard für Private Cloud/Hybrid Cloud-Objektspeicherung konzipiert wurde. Da RustFS speziell für die ausschließliche Bereitstellung von Objekten entwickelt wurde, kann die einstufige Architektur alle notwendigen Funktionen bereitstellen, ohne die Leistung zu beeinträchtigen. Das Ergebnis ist ein Cloud-nativer Objektserver, der gleichzeitig hochperformant, skalierbar und leichtgewichtig ist. |
13 | 13 |
|
14 | | -- **CPU**: 4 Kerne, 2,4 GHz oder höher |
15 | | -- **Arbeitsspeicher**: 8GB RAM Minimum, 16GB empfohlen |
16 | | -- **Speicher**: Mindestens 4 Laufwerke für Erasure Coding |
17 | | -- **Netzwerk**: Gigabit Ethernet |
| 14 | +Während RustFS bei traditionellen Objektspeicher-Anwendungsfällen wie sekundärer Speicherung, Disaster Recovery und Archivierung hervorragend abschneidet, zeichnet es sich durch die Bewältigung von Herausforderungen aus, die mit Machine Learning, Analytics und Cloud-nativen Anwendungs-Workloads verbunden sind. |
18 | 15 |
|
19 | | -### Empfohlene Konfiguration |
| 16 | +## Kernfunktionen |
20 | 17 |
|
21 | | -- **CPU**: 16+ Kerne, 3,0 GHz oder höher |
22 | | -- **Arbeitsspeicher**: 32GB+ RAM |
23 | | -- **Speicher**: 8+ Laufwerke, gemischte SSD/HDD für Tiering |
24 | | -- **Netzwerk**: 10Gb Ethernet oder höher |
| 18 | +### Erasure Coding |
25 | 19 |
|
26 | | -## Bereitstellungsarchitektur |
| 20 | +RustFS verwendet Inline-Erasure-Coding pro Objekt mit Assembler-Code für höchstmögliche Leistung. RustFS verwendet Reed-Solomon-Codes, um Objekte in Daten- und Paritätsblöcke mit benutzerdefinierbaren Redundanzebenen zu stripen. Das Erasure Coding von RustFS führt Reparaturen auf Objektebene durch und kann mehrere Objekte unabhängig voneinander reparieren. |
27 | 21 |
|
28 | | - |
| 22 | +Bei maximal N/2 Parität kann die Implementierung von RustFS sicherstellen, dass nur ((N/2)+1) funktionierende Laufwerke in der Bereitstellung für ununterbrochene Lese- und Schreibvorgänge erforderlich sind. Beispielsweise kann RustFS in einem 12-Laufwerk-Setup Objekte zwischen 6 Datenlaufwerken und 6 Paritätslaufwerken stripen und neue Objekte zuverlässig schreiben oder bestehende Objekte rekonstruieren, wenn nur noch 7 Laufwerke in der Bereitstellung verbleiben. |
29 | 23 |
|
30 | | -### Single-Node-Modus (SNSD) |
| 24 | + |
31 | 25 |
|
32 | | -Geeignet für Entwicklungs- und Testumgebungen: |
| 26 | +### Bitrot-Schutz |
33 | 27 |
|
34 | | -```bash |
35 | | -# Einzelner Knoten mit einzelnem Laufwerk |
36 | | -rustfs server /data |
37 | | -``` |
| 28 | +Stille Datenbeschädigung oder Bitrot ist ein ernsthaftes Problem für Festplatten, das dazu führt, dass Daten ohne Wissen des Benutzers beschädigt werden. Die Ursachen sind vielfältig (alternde Laufwerke, Stromspitzen, Festplatten-Firmware-Fehler, Phantom-Writes, falsch gerichtete Lese-/Schreibvorgänge, Treiberfehler, versehentliche Überschreibungen), aber das Ergebnis ist dasselbe – Datenverlust. |
38 | 29 |
|
39 | | - |
| 30 | +RustFS' optimierte Implementierung des HighwayHash-Algorithmus stellt sicher, dass es niemals beschädigte Daten liest – es kann beschädigte Objekte sofort erfassen und reparieren. Durch die Berechnung von Hashes beim READ und deren Verifizierung beim WRITE von der Anwendung über das Netzwerk bis zum Speicher/Laufwerk wird End-to-End-Integrität gewährleistet. Die Implementierung ist auf Geschwindigkeit ausgelegt und kann Hash-Geschwindigkeiten von über 10 GB/s auf einem einzigen Core auf Intel-CPUs erreichen. |
40 | 31 |
|
41 | | -### Multi-Node-Modus (MNMD) |
| 32 | + |
42 | 33 |
|
43 | | -Empfohlen für Produktionsumgebungen: |
| 34 | +### Serverseitige Verschlüsselung |
44 | 35 |
|
45 | | -```bash |
46 | | -# Knoten 1 |
47 | | -rustfs server http://server{1...4}/data{1...4} \ |
| 36 | +Daten während der Übertragung zu verschlüsseln ist eine Sache; Daten im Ruhezustand zu schützen ist eine andere. RustFS unterstützt mehrere ausgeklügelte serverseitige Verschlüsselungsschemas zum Datenschutz – unabhängig davon, wo sich die Daten befinden. RustFS' Ansatz gewährleistet Vertraulichkeit, Integrität und Authentizität mit vernachlässigbarem Leistungsoverhead. Serverseitige und clientseitige Verschlüsselung wird mit AES-256-GCM, ChaCha20-Poly1305 und AES-CBC unterstützt. |
48 | 37 |
|
49 | | -# Knoten 2-4 (ähnliche Konfiguration) |
50 | | -``` |
| 38 | +Verschlüsselte Objekte verwenden AEAD-serverseitige Verschlüsselung für Manipulationssicherheit. Zusätzlich ist RustFS mit allen gängigen Schlüsselverwaltungslösungen (wie HashiCorp Vault) kompatibel und getestet. RustFS verwendet ein Key Management System (KMS) zur Unterstützung von SSE-S3. |
51 | 39 |
|
52 | | - |
| 40 | +Wenn ein Client SSE-S3 anfordert oder automatische Verschlüsselung aktiviert ist, verschlüsselt der RustFS-Server jedes Objekt mit einem eindeutigen Objektschlüssel, der von einem vom KMS verwalteten Hauptschlüssel geschützt wird. Angesichts des extrem niedrigen Overheads kann automatische Verschlüsselung für jede Anwendung und Instanz aktiviert werden. |
53 | 41 |
|
54 | | -## Leistungsoptimierung |
| 42 | + |
55 | 43 |
|
56 | | -### Speicherkonfiguration |
| 44 | +### WORM (Write Once Read Many) |
57 | 45 |
|
58 | | -1. **Laufwerksauswahl** |
59 | | - - Verwenden Sie Enterprise-Grade-Laufwerke für die Produktion |
60 | | - - Erwägen Sie NVMe SSDs für hochperformante Workloads |
61 | | - - Trennen Sie Betriebssystem- und Datenlaufwerke |
| 46 | +#### Identity Management |
62 | 47 |
|
63 | | -2. **RAID-Konfiguration** |
64 | | - - Deaktivieren Sie Hardware-RAID für Objektspeicher |
65 | | - - Verwenden Sie JBOD (Just a Bunch of Disks) Modus |
66 | | - - Lassen Sie RustFS die Redundanz verwalten |
| 48 | +RustFS unterstützt die fortschrittlichsten Standards im Identity Management und kann sich mit OpenID Connect-kompatiblen Anbietern sowie wichtigen externen IDP-Anbietern integrieren. Das bedeutet, dass der Zugriff zentralisiert ist, Passwörter temporär und rotiert werden, anstatt in Konfigurationsdateien und Datenbanken gespeichert zu werden. Zusätzlich sind Zugriffs-Policies granular und hochgradig konfigurierbar, was Multi-Tenant- und Multi-Instanz-Bereitstellungen einfach unterstützt. |
67 | 49 |
|
68 | | -### Netzwerkoptimierung |
| 50 | +#### Kontinuierliche Replikation |
69 | 51 |
|
70 | | -1. **Netzwerk-Bonding** |
| 52 | +Die Herausforderung traditioneller Replikationsmethoden besteht darin, dass sie nicht effektiv über einige hundert TiB hinaus skalieren. Dennoch benötigt jeder eine Replikationsstrategie zur Unterstützung der Disaster Recovery, und diese Strategie muss geografische Standorte, Rechenzentren und Clouds überspannen. |
71 | 53 |
|
72 | | - ```bash |
73 | | - # Netzwerk-Bonding für Redundanz konfigurieren |
74 | | - sudo modprobe bonding |
75 | | - echo "balance-rr" > /sys/class/net/bond0/bonding/mode |
76 | | - ``` |
| 54 | +RustFS' kontinuierliche Replikation ist für großskalige, rechenzentrumsübergreifende Bereitstellungen konzipiert. Durch die Nutzung von Lambda-Computing-Benachrichtigungen und Objektmetadaten kann sie Deltas effizient und schnell berechnen. Lambda-Benachrichtigungen stellen sicher, dass Änderungen sofort propagiert werden, anstatt im traditionellen Batch-Modus. |
77 | 55 |
|
78 | | -2. **Jumbo Frames** |
| 56 | +Kontinuierliche Replikation bedeutet, dass bei einem Ausfall der Datenverlust minimal bleibt – selbst angesichts hochdynamischer Datensätze. Schließlich ist kontinuierliche Replikation, wie alles was RustFS macht, multi-vendor, was bedeutet, dass Ihr Backup-Standort alles von NAS bis Public Cloud sein kann. |
79 | 57 |
|
80 | | - ```bash |
81 | | - # Jumbo Frames für besseren Durchsatz aktivieren |
82 | | - sudo ip link set dev eth0 mtu 9000 |
83 | | - ``` |
| 58 | +#### Globale Föderation |
84 | 59 |
|
85 | | - |
| 60 | +Die Daten moderner Unternehmen sind überall. RustFS ermöglicht es, diese unterschiedlichen Instanzen zu einem einheitlichen globalen Namensraum zusammenzufassen. Konkret können beliebig viele RustFS-Server zu einem verteilten Cluster kombiniert werden, und mehrere verteilte Cluster können zu einer RustFS-Server-Föderation kombiniert werden. Jede RustFS-Server-Föderation bietet eine einheitliche Administrator- und Namensraum-Sicht. |
86 | 61 |
|
87 | | -## Monitoring und Wartung |
| 62 | +RustFS-Föderationsserver unterstützen eine unbegrenzte Anzahl von verteilten Clustern. Die Auswirkung dieses Ansatzes ist, dass Objektspeicher für große, geografisch verteilte Unternehmen massiv skaliert werden kann, während die Fähigkeit beibehalten wird, verschiedene Anwendungen (Splunk, Teradata, Spark, Hive, Presto, TensorFlow, H20) von einer einzigen Konsole aus zu bedienen. |
88 | 63 |
|
89 | | -### Gesundheitsüberwachung |
| 64 | +#### Multi-Cloud-Gateway |
90 | 65 |
|
91 | | -- Überwachen Sie die Laufwerksgesundheit mit SMART-Tools |
92 | | -- Verfolgen Sie Netzwerkauslastung und Latenz |
93 | | -- Richten Sie Alarme für Hardwareausfälle ein |
| 66 | +Alle Unternehmen verfolgen Multi-Cloud-Strategien. Das schließt Private Clouds ein. Daher müssen Ihre Bare-Metal-, Virtualisierungs-, Container- und Public Cloud-Services (einschließlich Nicht-S3-Anbieter wie Google, Microsoft und Alibaba) gleich aussehen. Während moderne Anwendungen hochgradig portabel sind, sind die Daten, die diese Anwendungen unterstützen, es nicht. |
94 | 67 |
|
95 | | -### Wartungsverfahren |
| 68 | +Die Bereitstellung dieser Daten, unabhängig davon, wo sie sich befinden, ist eine der Hauptherausforderungen, die RustFS löst. RustFS läuft auf Bare Metal, Network Attached Storage und jeder Public Cloud. Noch wichtiger ist, dass RustFS über die Amazon S3 API sicherstellt, dass diese Datensicht aus Anwendungs- und Verwaltungsperspektive vollkommen identisch aussieht. |
96 | 69 |
|
97 | | -1. **Laufwerkersatz** |
98 | | - - Hot-Swap fehlerhafter Laufwerke |
99 | | - - Überwachen Sie den Heilungsprozess |
100 | | - - Überprüfen Sie die Datenintegrität |
| 70 | +RustFS kann noch weiter gehen und Ihre bestehende Speicherinfrastruktur Amazon S3-kompatibel machen. Die Auswirkungen sind weitreichend. Jetzt können Organisationen ihre Dateninfrastruktur wirklich vereinheitlichen – von Datei zu Block erscheinen alle Daten als über die Amazon S3 API zugängliche Objekte, ohne Migration. |
101 | 71 |
|
102 | | -2. **Knotenwartung** |
103 | | - - Ordnungsgemäße Knotenabschaltung |
104 | | - - Rolling Updates |
105 | | - - Kapazitätsplanung |
| 72 | +Wenn WORM aktiviert ist, deaktiviert RustFS alle APIs, die Objektdaten und -metadaten ändern könnten. Das bedeutet, dass Daten nach dem Schreiben manipulationssicher werden. Dies hat praktische Anwendungen in vielen verschiedenen regulatorischen Anforderungen. |
106 | 73 |
|
107 | | -## Sicherheitsüberlegungen |
| 74 | + |
108 | 75 |
|
109 | | -### Physische Sicherheit |
| 76 | +## Systemarchitektur |
110 | 77 |
|
111 | | -- Sicherer Serverraumzugang |
112 | | -- Umgebungsüberwachung |
113 | | -- Stromredundanz |
| 78 | +RustFS ist als Cloud-nativ konzipiert und kann als leichtgewichtige Container laufen, die von externen Orchestrierungsservices wie Kubernetes verwaltet werden. Der gesamte Server ist eine statische Binärdatei von etwa 40 MB und nutzt CPU- und Speicherressourcen effizient, selbst unter hoher Last. Das Ergebnis ist, dass Sie eine große Anzahl von Tenants auf gemeinsam genutzter Hardware co-hosten können. |
114 | 79 |
|
115 | | -### Netzwerksicherheit |
| 80 | +RustFS läuft auf Commodity-Servern mit lokal angeschlossenen Laufwerken (JBOD/JBOF). Alle Server im Cluster sind funktional gleichwertig (vollständig symmetrische Architektur). Es gibt keinen Namenode oder Metadatenserver. |
116 | 81 |
|
117 | | -- Firewall-Konfiguration |
118 | | -- Netzwerksegmentierung |
119 | | -- TLS-Verschlüsselung für Client-Verbindungen |
| 82 | +RustFS schreibt Daten und Metadaten zusammen als Objekte und benötigt keine Metadaten-Datenbank. Außerdem führt RustFS alle Funktionen (Erasure Coding, Bitrot-Prüfung, Verschlüsselung) als Inline-, strikt konsistente Operationen aus. Das Ergebnis ist, dass RustFS außergewöhnlich widerstandsfähig ist. |
120 | 83 |
|
121 | | -## Fehlerbehebung |
| 84 | +Jeder RustFS-Cluster ist eine Sammlung von verteilten RustFS-Servern mit einem Prozess pro Knoten. RustFS läuft als einzelner Prozess im Benutzerraum und verwendet leichtgewichtige Coroutinen für hohe Gleichzeitigkeit. Laufwerke werden in Erasure-Sets gruppiert (standardmäßig 16 Laufwerke pro Set), und Objekte werden mit einem deterministischen Hashing-Algorithmus auf diesen Sets platziert. |
122 | 85 |
|
123 | | -### Häufige Probleme |
124 | | - |
125 | | -1. **Laufwerkausfälle** |
126 | | - - Überprüfen Sie den SMART-Status |
127 | | - - Ersetzen Sie fehlerhafte Laufwerke umgehend |
128 | | - - Überwachen Sie den Heilungsfortschritt |
129 | | - |
130 | | -2. **Netzwerkprobleme** |
131 | | - - Überprüfen Sie die Netzwerkkonnektivität |
132 | | - - Prüfen Sie die Bandbreitenauslastung |
133 | | - - Überwachen Sie auf Paketverluste |
134 | | - |
135 | | -3. **Leistungsprobleme** |
136 | | - - Analysieren Sie I/O-Muster |
137 | | - - Prüfen Sie auf CPU/Arbeitsspeicher-Engpässe |
138 | | - - Optimieren Sie das Laufwerkslayout |
| 86 | +RustFS ist für großskalige, Multi-Rechenzentrum-Cloud-Speicherdienste konzipiert. Jeder Tenant betreibt seinen eigenen RustFS-Cluster, vollständig isoliert von anderen Tenants, wodurch sie vor Störungen durch Upgrades, Updates und Sicherheitsvorfälle geschützt werden. Jeder Tenant skaliert unabhängig durch die Föderation von Clustern über geografische Standorte hinweg. |
139 | 87 |
|
0 commit comments