it concepts Liebel Publikationen 

Linux-Hochverfügbarkeit

2. und erweiterte Auflage

Oliver Liebel  

 

Galileo Computing, 2. aktualisierte und erweiterte Auflage  - 09/2013
848 Seiten, gebunden.
49,90 Euro.

  • ISBN-10: 3836225425
  • ISBN-13: 978-3836225427
      • Lokale HA: BTRFS, RAID, LVM, NIC-Bonding und SMART
      • Linux-HA-Cluster: Corosync/CMAN, Pacemaker, LVS, GFS2, OCFS2, GlusterFS, Ceph,
            DRBD 8/9, Storage Cluster für ESXi/vSphere
      • Xen/KVM-VMs im Cluster, Ceph-RBD, Backup und Disaster Recovery

    "Hochverfügbarkeit ist ein zentrales und ebenso komplexes Thema für jeden Administrator. Profitieren Sie jetzt von den praxiserprobten Setup-Lösungen und dem technischen Background, die der langjährige Linux-Experte Oliver Liebel für Sie zusammengestellt hat. So sorgen Sie einfach und mit moderaten Hardware-Ressourcen dafür, dass Ihre Linux-Server lokal und im Netz stets hochverfügbar sind und zudem optimal skalieren. Das Buch beleuchtet die wichtigsten Aspekte der lokalen Hochverfügbarkeit und die Sicherstellung der Redundanz der wichtigsten Serverkomponenten: Disk-Monitoring mit SMART, SSD's und Hybrid-Disks im Server-Einsatz, ausfallsichere Bonding-Netzdevices, redundante (Soft-)Raids, skalierbare Logical Volumes, die Auswahl des passenden Linux-Journaling-Dateisystems und ausführliche Praxis-Einblicke in das kommende Standard-Dateisystem unter Linux, das Raid-, Resizing und Snapshot-Fähigkeiten in sich vereinigt: BTRFS. Zur Sicherstellung der Hochverfügbarkeit auf Cluster-Ebene werden zahlreiche aktuelle und praxiserprobte Cluster-Setups mit Corosync/CMAN und Pacemaker anschaulich erläutert, das ganze ergänzt durch Storage-Verwaltung im Cluster: DRBD 8 und das neue DRBD 9.0 mit Mesh-/Multi-Node-Replication, traditionelle Cluster-Dateisysteme wie OCFS2 und GFS2, Distributed Storage Cluster mit GlusterFS, die "Next Generation" des Distributed Storage Clustering mit CEPH und vieles andere mehr. Des Weiteren wird gezeigt, wie Pacemaker Cluster in verschiedenen Konfigurationen als hochskalierbare und -verfügbare Storage-Backends für vSphere/ESXi-Umgebungen eingesetzt werden können. Zur optimalen Ausnutzung und Verfügbarkeit der Ressourcen wird zudem das Setup von virtuellen XEN- und KVM-Maschinen im Cluster und auf verschiedenen Storage-Backends, wie z.B. Ceph-RBD oder DRBD im Dual-Primary-Mode, eingängig erläutert, sowie deren Live-Migration, damit Sie die optimale Verfügbarkeit der VMs in jeder Situation sicherstellen können."



    Pressestimmen zur 1.Ausgabe:

    SearchSecurity, 01/2011
    "Linux Hochverfügbarkeit ist ein wirklich lohnenswertes Buch für Linux-Admins im Unternehmen. Der Autor beschreibt unterhaltsam und trotzdem sehr informativ viele Details zum Aufbau lokaler oder netzwerkbasierter Hochverfügbarkeits-Systeme und spart nicht mit Praxisbeispielen."

    ADMIN, 02/2011
    "Wer mit aktuellen Open-Source-Technologien hochverfügbare Cluster aufbauen will, ist mit dem Buch gut bedient, denn es gibt direkt umsetzbare Anleitungen dafür. Im Mittelpunkt steht das, was sich die meisten Admins unter Hochverfügbarkeit vorstellen: Cluster-Setup mit redundanten Netzwerken und Speichersystemen. Das führt Liebel an den Open-Source-Paketen OpenAIS, Corosync, DRBD und Pacemaker im Detail vor. Die Praxis steht dabei klar im Vordergrund, und so nehmen Shell-Kommandos entsprechend großen Raum ein."

    Linux Magazin, 04/2011
    Empfehlung der Redaktion

    Linux Magazin Online, 04.04.2011
    "Für viele Unternehmen ist die IT-Anlage heutzutage so wichtig, dass deren Ausfall stark negative bis existenzbedrohende Auswirkung haben kann. Insofern ist die nahezu ständige Verfügbarkeit als unternehmenskritisch einzustufen. Das Buch "Linux-Hochverfügbarkeit" zeigt, wie sie sich mit Linux-Mitteln verwirklichen lässt. Spezielle, oft proprietäre und meist hochpreisige Lösungen klammert der Autor Oliver Liebel bewusst aus. Es geht ihm darum, Lösungen aus dem Open-Source-Umfeld aufzuzeigen, die auch mit moderaten Budgets realisierbar sind und dennoch kommerziellen Produkten das Wasser reichen können. Insgesamt zeigt dieses Buch, was mit Linux und freier Software alles möglich ist, um dem Ziel der Hochverfügbarkeit nahe zu kommen."

    IT-Administrator 07/2011
    "Hochverfügbarkeitsszenarien waren vor ein paar Jahren nur den Administratoren sehr großer Rechenzentren vorbehalten, sind aber mittlerweile auch in mittleren und kleineren Netzwerken relevant. Linux-Experte Oliver Liebel widmet sich diesem Thema und das primär auf seiner Open Source-Platform. Die Motivation dahinter entspringt den praxisnahen Admin-Anforderungen: maximale Ausfallsicherheit bei relativ moderaten Hardware-Voraussetzungen. Dabei berücksichtigt der Autor keine spezielle Hardware-Konstellation, sondern stellt Ansätze mit bereits bewährten Standard-Tools vor. Oliver Liebel lässt sein Know-how in die detailliert aufgeschlüsselte Arbeit einfließen und präsentiert eine gelungene Mischung aus relevanter Theorie gepaart mit praktischen Beispielen. Einziges Manko: Kommerziell verfügbare Systeme werden in keiner Weise erwähnt. Dennoch ist der Administrator nach dieser Lektüre Garant für den unterbrechungsfreien Geschäftsablauf."

    Inhalt

    • ... Vorwort ... 19
    • 1 ... Mission Critical – ausfallsichere Server ... 26
    • 1.1 ... Grundsätzliche Überlegungen zur Redundanz ... 27
    • 1.1.1 ... Parallelität, MTBF, MTTR und einiges mehr … ... 29
    • 1.2 ... Tool-Time zum Ersten: Das richtige Werkzeug ... 34
    • 1.2.1 ... Päckchen ... 35
    • 1.2.2 ... … und Betriebsanleitungen ... 36
    • ... Teil I – Hochverfügbarkeit (HA) auf Server-Ebene ... 39
    • 2 ... Lokale Hochverfügbarkeit ... 40
    • 2.1 ... Vorbetrachtungen ... 40
    • 2.1.1 ... Temperatur ... 41
    • 2.1.2 ... G-Force ... 41
    • 2.2 ... Netzteile, CPUs und mehr ... 42
    • 2.2.1 ... Redundante Netzteile ... 42
    • 2.2.2 ... Kernfrage, Teil 1: CPU ... 43
    • 2.2.3 ... Kernfrage, Teil 2: Control Groups und Cpusets ... 46
    • 2.2.4 ... monit ... 61
    • 2.2.5 ... Fessel- Spielchen – Netzwerkkarten-Bonding ... 66
    • 3 ... Lokaler Storage ... 74
    • 3.1 ... Vorbetrachtungen ... 74
    • 3.2 ... The road ahead – SSDs im Servereinsatz ... 78
    • 3.3 ... Disk- Überwachung: Clever mit SMART ... 83
    • 4 ... Raid ... 90
    • 4.1 ... Raid-Level ... 91
    • 4.1.1 ... Raid 0 – oder: Wen kümmert’s? ... 92
    • 4.1.2 ... Raid 1: Spieglein, Spieglein … ... 93
    • 4.1.3 ... Raid 5: A + B = ? ... 94
    • 4.1.4 ... Raid 6 ... 97
    • 4.2 ... Exkurs: Raid-Kombilevel ... 97
    • 4.3 ... Hard- oder Software-Raids ... 98
    • 4.4 ... Softraids unter Linux ... 102
    • 4.4.1 ... Softraid-Performance ... 103
    • 4.4.2 ... Einsatzzweck und Bootloader ... 105
    • 4.4.3 ... Weitere Vorbetrachtungen zum Raid-Setup ... 106
    • 4.4.4 ... Exkurs: Journalisten – Journaling-Dateisysteme unter Linux ... 108
    • 4.4.5 ... Mirror, Mirror – Teil 1: Softraid Level 1 ... 124
    • 4.4.6 ... Dynamisches Duo – Softraid Level 1 + 0 und 10 ... 134
    • 4.4.7 ... Softraid Level 5 ... 136
    • 4.4.8 ... Softraid Level 6 ... 140
    • 4.4.9 ... The Better Way – Partitionable Raids ... 141
    • 4.4.10 ... Bootredundante Softraids für das OS ... 143
    • 4.4.11 ... System-Installation/-Migration auf ein partitionable Raid ... 150
    • 4.4.12 ... Weitere wichtige Raid-Parameter und - Szenarien ... 154
    • 5 ... LVM – Storage- Virtualisierung mit dem Logical Volume Manager ... 160
    • 5.1 ... LVM – How it works ... 161
    • 5.1.1 ... Logische Schaltzentrale – lvm.conf ... 163
    • 5.1.2 ... Let’s get physical – Erstellen und Administrieren der PVs ... 164
    • 5.1.3 ... Gruppentherapie – Administration der Volume Groups ... 167
    • 5.1.4 ... Administration der Logical Volumes ... 168
    • 5.1.5 ... Darf gestrip(p)t werden? – Stripesets ... 169
    • 5.1.6 ... Blow up ... 170
    • 5.2 ... Bitte lächeln – Snapshots ... 173
    • 5.2.1 ... LVM- Snaphots und Datenbanken ... 177
    • 5.2.2 ... Völlige Verschmelzung – Snapshot-Merging statt Restore ... 181
    • 5.3 ... Spieglein, Spieglein … LVM-Raid statt unterliegendem Raid ... 183
    • 5.3.1 ... Auto(?)-Rebuild von defekten PVs im LVM- Mirrorset ... 185
    • 5.3.2 ... Just me myself and I – LV-Raids/Raid-LVs ... 186
    • 5.3.3 ... LVM/LV- Raid für das root-Dateisystem ... 190
    • 6 ... BTRFS in der Praxis ... 194
    • 6.1 ... BTRFS: Vorbetrachtungen ... 194
    • 6.2 ... Ab in den Untergrund: Subvolumes ... 196
    • 6.3 ... BTRFS- Datenvolumen: Redundanz, Resizing und Snapshots ... 197
    • 6.3.1 ... Raid 1 ... 197
    • 6.3.2 ... btrfs- Tools ... 199
    • 6.3.3 ... Recover ... 200
    • 6.3.4 ... Resize ... 201
    • 6.3.5 ... Raid 10 ... 202
    • 6.3.6 ... Subvolumes und Snapshots ... 202
    • 6.3.7 ... BTRFS – Reflinks ... 203
    • 6.3.8 ... Datenintegrität und Defragmentierung mit btrfs <scrub> und <defragment> ... 204
    • 6.3.9 ... Konvertierung mit btrfs-convert ... 205
    • 6.3.10 ... BTRFS- Filesystem-Resizing ... 205
    • 6.3.11 ... Sonstige BTRFS-Tools ... 206
    • 6.4 ... BTRFS im Distributions-Einsatz als Root- FS/Subvolume ... 206
    • 6.4.1 ... Green Snapper ... 207
    • 6.4.2 ... Snapshot-Revertierung ... 212
    • 6.4.3 ... Kernel- Upgrade/Änderung und Rollbacks ... 214
    • 6.4.4 ... Root- Raid-BTRFS ... 215
    • 6.5 ... Fazit ... 217
    • ... Teil II – Hochverfügbarkeits-Cluster ... 219
    • 7 ... HA-Cluster – Vorbetrachtungen ... 220
    • 7.1 ... How it works ... 220
    • 7.2 ... Clustertypen ... 221
    • 7.2.1 ... Hochverfügbarkeits-Cluster ... 221
    • 7.2.2 ... Load- Balancing-Cluster ... 221
    • 7.2.3 ... High- Performance-Computing-Cluster (HPC- Cluster) ... 222
    • 7.2.4 ... Exkurs: Grids – alles vernetzt oder was? ... 222
    • 7.2.5 ... Exkurs: Stark bewölkt – Cloud Computing ... 222
    • 7.2.6 ... Active/Passive – (Hot-)Failover-Cluster ... 224
    • 7.2.7 ... Active/Active-Cluster ... 225
    • 7.3 ... Cluster- Reigen: n-Node Cluster ... 226
    • 7.4 ... Cluster- Lobotomie: Split-Brain, Fencing und STONITH ... 226
    • 7.4.1 ... Exkurs: High Noon – STONITH Deathmatch ... 228
    • 7.5 ... Volksentscheid: Cluster-Quorum ... 229
    • 7.6 ... Exkurs: Alles oder nichts – Shared-all-/Shared- nothing-Cluster ... 230
    • 8 ... HA-Basics ... 231
    • 8.1 ... Ressourcen und Agenten ... 232
    • 8.2 ... Alles eine Frage der Kommunikation: konzeptionelle ClusterÜbersicht ... 234
    • 8.2.1 ... Das technische (Schichten-)Modell von Heartbeat | Corosync und Pacemaker ... 235
    • 8.2.2 ... Cluster-Kommunikation am konkreten Beispiel ... 238
    • 9 ... Clustersoftware ... 240
    • 9.1 ... Heartbeat ... 240
    • 9.2 ... Corosync ... 241
    • 9.3 ... Pacemaker ... 244
    • 9.3.1 ... Alles Tron oder was? – Der »MCP« ... 248
    • 9.4 ... Exkurs: CMAN und die roten Hüte ... 250
    • 9.5 ... Installation der Cluster-spezifischen Software ... 251
    • 9.5.1 ... Verfallsdatum abgelaufen? – Enterprise/LTS vs. Short-Term-Releases ... 251
    • 9.5.2 ... Von Quellen und Päckchen … ... 252
    • 9.5.3 ... … und der »Ente« in Enterprise ... 253
    • 9.5.4 ... Upgrade der Cluster-Software und einzelner Applikationen ... 253
    • 10 ... NTPD – The Time Machine ... 256
    • 10.1 ... Setup ... 257
    • 10.2 ... NTP in VMs ... 260
    • 11 ... Setup der Cluster-Kommunikation ... 265
    • 11.1 ... Corosync- Setup ... 267
    • 11.1.1 ... Protokoll-Konfiguration (totem) ... 267
    • 11.1.2 ... Interface-Konfiguration ... 270
    • 11.1.3 ... Exkurs: »Cast«-ings ... 273
    • 11.1.4 ... Logging-Konfiguration ... 274
    • 11.1.5 ... Exkurs: Alles virtuell oder was? – VLAN ... 276
    • 11.1.6 ... Der Schlüsselmeister – authkey ... 277
    • 11.1.7 ... Startup ... 279
    • 11.1.8 ... Corosync-Debugging ... 280
    • 11.2 ... Exkurs: CMAN ... 282
    • 11.3 ... Heartbeat- Setup ... 285
    • 11.3.1 ... ha.cf ... 285
    • 11.3.2 ... Und wieder der Schlüsselmeister – authkeys ... 289
    • 11.3.3 ... Startup ... 290
    • 11.3.4 ... Debugging ... 290
    • 12 ... Pacemaker ... 291
    • 12.1 ... Der Cluster-Monitor crm_mon ... 292
    • 12.2 ... First Contact ... 294
    • 12.2.1 ... Punktestände, Klebrigkeiten, Regeln, Platzanweiser und Rangordnungen ... 294
    • 12.2.2 ... Konfigurations-Layout ... 299
    • 12.2.3 ... Die CIB-Files ... 300
    • 12.3 ... Tool-Time zum 2.: Cluster-Admin-Tools ... 301
    • 12.3.1 ... Die crm-Shell ... 301
    • 12.3.2 ... cibadmin und crm_*-Tools ... 311
    • 12.3.3 ... Die Pacemaker-GUI ... 316
    • 12.3.4 ... HAWK ... 319
    • 12.3.5 ... LCMC ... 321
    • 13 ... Management von Cluster-Ressourcen ... 325
    • 13.1 ... At your Service – gestatten: Ihre Service-IP ... 326
    • 13.2 ... Integration von Ressourcen, Teil 1: Service-IP ... 327
    • 13.2.1 ... Hackordnung: Ressourcen-Platzierung ... 332
    • 13.2.2 ... Strategische Platzierung – mögliche »Placement Strategies« unseres Clusters ... 333
    • 13.3 ... Örtlichkeiten – Setzen von (Co-)Location- Constraints ... 336
    • 13.3.1 ... Location ... 336
    • 13.3.2 ... Colocation ... 337
    • 13.4 ... Failover- Simulation und Klebrigkeiten ... 338
    • 13.5 ... Schattenspielchen im Sandkasten – Testsimulation mit crm_shadow ... 341
    • 13.6 ... CIB- Templating ... 345
    • 13.7 ... Ressourcen verwalten ... 346
    • 13.7.1 ... Ressourcen starten und stoppen ... 347
    • 13.7.2 ... Ressourcen und Constraints löschen, Integritätsprüfung der CIB ... 348
    • 13.7.3 ... Ressourcen bereinigen ... 350
    • 13.7.4 ... Ignoranz at it’s best – Ressourcen (un- )managen ... 350
    • 13.8 ... Integration von Ressourcen, Teil 2: Apache ... 351
    • 13.8.1 ... Exkurs: Der »gepatchte« und andere Agenten im Käfig – Pacemaker-Ressourcen im »shielded«-cpuset ... 352
    • 13.8.2 ... Exkurs: Co-Location oder Gruppe? ... 355
    • 13.9 ... Colocation- und Ordering-Constraints in der Praxis ... 355
    • 13.9.1 ... Colocation-Constraints ... 355
    • 13.9.2 ... Immer schön der Reihe nach – Orderings ... 357
    • 13.9.3 ... Mandatory Ordering Constraint ... 358
    • 13.9.4 ... Advisory Ordering Constraint ... 359
    • 13.9.5 ... Ressource-Sets (Multi-Orderings) ... 359
    • 13.9.6 ... Exkurs: Warten auf Godot – Intermediate- Zustände (Starting/Stopping/Pending- Operations) unseres Clusters abfragen ... 364
    • 13.9.7 ... Ressource-Sets (Multi-Colocations) ... 365
    • 13.9.8 ... Rulesets in der Praxis ... 366
    • 13.10 ... Gruppentherapie ... 367
    • 13.11 ... Migration-Threshold und Failure-Timeout ... 369
    • 13.12 ... Benutzerrechte und Zugriffskontrollen im Cluster ... 373
    • 13.12.1 ... Rollenspielchen ... 373
    • 13.12.2 ... ACL- Benutzer ... 375
    • 14 ... Cluster- Beispiele aus der Praxis ... 377
    • 14.1 ... The Clone Wars – Hot-Failover mit Clonesets ... 377
    • 14.2 ... Hot- Failover-Webservices mit Apache-Cloneset und ServiceIP ... 379
    • 14.2.1 ... Exkurs – Auto-Update von Constraints ... 381
    • 14.2.2 ... Failure-Simulation ... 384
    • 14.3 ... Exkurs: Namensfragen – SSL-/TLS-Verbindungen im FailoverFall ... 384
    • 14.4 ... Die gleiche Hausnummer – Hot-Failover Apache- Cloneset mit zwei identischen Cluster- IPs ... 385
    • 14.4.1 ... … and then there were Three ... 388
    • 14.5 ... Cephalopoden-Kunde, Teil 1: Failover- Proxy-Cluster mit Squid ... 391
    • 14.6 ... Maximum HA-Scaling: Hochverfügbares, applikationsunabhängiges Loadbalancing im Cluster ... 396
    • 14.6.1 ... Hochskalierbarer und ausfallsicherer Loadbalancer mit LVS ... 397
    • 14.6.2 ... Setup des OpenLDAP (localhost auf dem LB oder als externer Worker) ... 400
    • 14.6.3 ... Erstes Beispiel: Setup des 2-Node Loadbalancers (gleichzeitig auch Worker) ... 407
    • 14.6.4 ... Zweites Beispiel: Setup eines 2-Node- Hot-Failover-Loadbalancers mit drei externen Workern ... 414
    • 14.7 ... »Geben Sie mir ein ›Ping‹, Wassili …«: Voll vernetzt – die ping-/pingd-Ressource ... 418
    • 14.7.1 ... ping- Ruleset ... 422
    • 14.7.2 ... Exkurs: Ionisations-Blackout ... 423
    • 14.8 ... Inspector Gadget – Ressourcen-Platzierung auf Basis von nodespezifischen System- Informationen ... 425
    • 14.8.1 ... Alle geregelt oder was? – Multiple Rules und Entscheidungskriterien für den Cluster ... 427
    • 14.8.2 ... Cleanup der SysInfo – Attribute ... 429
    • 14.8.3 ... »Back in Time« und anderer Mumpitz: Zeitbasierte Regeln ... 429
    • 14.9 ... Gruppentherapie zum Zweiten – Failover einer Samba-3-Ressource ... 429
    • 14.9.1 ... Setup S3-Standalone ... 432
    • 14.9.2 ... Setup S3 mit OpenLDAP-Anbindung ... 434
    • 14.9.3 ... Cluster-Integration der OpenLDAP und S3- Ressourcen ... 441
    • 15 ... Pacemaker 1.1.8, Corosync 2.x und pcs ... 446
    • 15.1 ... Vorbetrachtungen ... 446
    • 15.2 ... Corosync- Konfiguration per pcs ... 447
    • 15.3 ... Fire it up … ... 450
    • 15.4 ... Pacemaker- Konfiguration per pcs ... 451
    • 16 ... … und noch einmal Tool-Time: Eigene OCF-Ressource- Agenten erstellen ... 455
    • 16.1 ... Vorbetrachtungen ... 455
    • 16.1.1 ... Zum ersten Punkt – den zu verwendenden Standards und Returncodes ... 456
    • 16.1.2 ... Zum zweiten Punkt – den Überwachungsfunktionalitäten ... 458
    • 16.1.3 ... Fazit ... 459
    • ... Teil III – Hochverfügbare Storage-Cluster ... 461
    • 17 ... Ausfallsichere Shared-Nothing-Cluster mit DRBD ... 462
    • 17.1 ... DRBD – Vorbetrachtungen ... 463
    • 17.1.1 ... Wozu – und wozu nicht: Einsatzmöglichkeiten von DRBD ... 465
    • 17.1.2 ... Die DRBD-Funktionalität im Detail ... 466
    • 17.1.3 ... Rollenspielchen – DRBD-Modi ... 467
    • 17.1.4 ... Replikations-Varianten ... 468
    • 17.2 ... DRBD- Standalone-Setup ... 470
    • 17.2.1 ... drbd.conf – die Schaltzentrale ... 471
    • 17.2.2 ... Die DRBD-Userspace-Tools ... 474
    • 17.2.3 ... Setup der DRBD-Devices ... 476
    • 17.2.4 ... Manueller DRBD-Funktionstest (Master/Slave) ... 482
    • 17.3 ... DRBD- Master/Slave-Ressource im S3/LDAP- Cluster ... 484
    • 17.3.1 ... Exkurs: Ab in den Käfig – Zwangslokation für DRBD-Instanzen ... 490
    • 17.4 ... Schnappschüsse zum Zweiten: DRBD-Backups per BTRFS oder LVM ... 491
    • 17.4.1 ... DRBD- Snapshots über BTRFS ... 491
    • 17.4.2 ... Online-Resizing eines DRBD mit unterlegten BTRFS-Volumes … ... 492
    • 17.4.3 ... DRBD on top of LV – Backup des Secondary per Snapshot ... 493
    • 17.4.4 ... Online-Resizing eines DRBD mit unterlegtem LV ... 495
    • 17.4.5 ... LV on top of DRBD (Master/Slave) ... 496
    • 17.4.6 ... DRBD/BTRFS vs. DRBD/LVM – Fazit ... 498
    • 17.5 ... To Clone or not to DRBD – hochverfügbare MySQL- Cluster ... 499
    • 17.5.1 ... Einzelkämpfer: Standalone MySQL-DB mit DRBD ... 500
    • 17.5.2 ... Teamplayer: MySQL-DB im Hot-Failover Cloneset ... 501
    • 17.6 ... Exkurs: Groß und wenig – oder lieber klein und viel? Cluster-Storage-Export via NFS oder iSCSI ... 509
    • 17.7 ... DRBD- Master/Slave mit NFS-Clone als hochverfügbares Storage-Backend für VMware vSphere/ESXi-Hosts ... 510
    • 17.8 ... DRBD Dual- Primary Mode ... 516
    • 17.8.1 ... Einsatzzwecke ... 517
    • 17.8.2 ... Exkurs: DRBD-Split-Brain-Recovery ... 517
    • 17.8.3 ... Exkurs: Manuelles DRBD-Split-Brain- Recover ... 521
    • 17.9 ... Cluster- Dateisysteme ... 523
    • 17.9.1 ... Exkurs: DLM – der Distributed Lock Manager ... 525
    • 17.10 ... Die Cluster-FS-»Klassiker«: GFS2 und OCFS2 ... 527
    • 17.10.1 ... GFS(2) ... 527
    • 17.10.2 ... OCFS(2) ... 527
    • 17.11 ... Pacemaker und Cluster-Filesysteme ... 528
    • 17.12 ... DRBD Dual-Primary mit OCFS2 im Pacemaker- Stack als S3-Storage-Backend ... 531
    • 17.12.1 ... Do you really …? ... 531
    • 17.12.2 ... Setup der DRBD Ressource ... 532
    • 17.12.3 ... Setup der DLM/OCFS2-Ressourcen ... 535
    • 17.12.4 ... Setup der Filesystem-Ressource und aller Constraints ... 537
    • 17.12.5 ... Redundanzbetrachtungen ... 541
    • 17.12.6 ... Failover-Fälle mit OCFS2 im pcmk-Stack ... 541
    • 17.13 ... DRBD Dual-Primary mit OCFS2 im eigenen O2CB- Stack ... 542
    • 17.14 ... DRBD Dual-Primary mit OCFS2 im CMAN-Stack ... 546
    • 17.15 ... Bitte lächeln – Teil 3: Snapshots und Resizing mit DRBD DualPrimary und OCFS2 ... 547
    • 17.15.1 ... Snapshots per LV ... 547
    • 17.15.2 ... Snapshots per Reflink unter OCFS2 ... 549
    • 17.16 ... DRBD Dual-Primary mit OCFS2 und CLVM ... 551
    • 17.16.1 ... CLVM: Exkurs zu den wichtigsten Komponenten ... 552
    • 17.16.2 ... CLVM- Setup im Detail ... 553
    • 17.16.3 ... Exkurs: Red Snapper, oder: das Snapshot- Dilemma der roten Hüte ... 556
    • 17.16.4 ... Exkurs: CLVM-Resizing ... 557
    • 17.17 ... DRBD Dual-Primary mit GFS2 ... 558
    • 17.18 ... DRBD Dual-Primary mit GFS2 und NFS-Clone als Hot-Failover Storage-Backend für VMware ESXi/vSphere – Hosts ... 561
    • 17.19 ... DRBD- Online-Device-Verification ... 565
    • 17.20 ... DRBD Replication Traffic Integrity Checking ... 566
    • 17.21 ... Stacked Fun? ... 567
    • 18 ... The Road ahead – DRBD 9.x ... 568
    • 18.1 ... Setup ... 569
    • 18.1.1 ... Setup- Details ... 569
    • 18.1.2 ... Fire it up ... 570
    • 18.1.3 ... Auto- Promote ... 572
    • 18.1.4 ... Analyse ... 573
    • 18.1.5 ... Cluster Integration … ... 573
    • 18.1.6 ... DRBD- Client … ... 573
    • 18.2 ... DRBD 9 – Fazit ... 573
    • 19 ... Gerechte Verteilung – Distributed Storage Cluster mit GlusterFS und Ceph ... 575
    • 19.1 ... Hoch? Oder lieber breit? Scale-Out anstelle von Scale-Up ... 577
    • 19.2 ... GlusterFS ... 578
    • 19.3 ... Ceph(FS) ... 578
    • 20 ... Alles nur Kopfsache – Distributed Storage Cluster mit Ceph ... 580
    • 20.1 ... Vorbetrachtung ... 580
    • 20.1.1 ... Dreieinigkeit … ... 580
    • 20.1.2 ... Ceph Object Storage Daemon (Ceph-OSD) ... 584
    • 20.1.3 ... Ceph Metadata Server (Ceph-MDS) ... 585
    • 20.1.4 ... Ceph Monitor (Ceph-MON) ... 586
    • 20.1.5 ... Einfache Ceph-Cluster Design Regeln ... 587
    • 20.2 ... Setup und Verwaltung unseres Ceph-Clusters ... 587
    • 20.2.1 ... Exkurs: Auswahl eines lokalen Dateisystems für Ceph ... 588
    • 20.2.2 ... Ceph(FS)-Mount ... 595
    • 20.2.3 ... Exkurs: Schlüsselfragen ... 596
    • 20.2.4 ... Size Matters – Part 2 ... 598
    • 20.2.5 ... F-Fall ... 599
    • 20.2.6 ... Ceph- Tool-Time: Stellschrauben und Messgeräte ... 600
    • 20.2.7 ... Ceph- Datensicherheit und Replikationslevel: ... 601
    • 20.2.8 ... Placement Groups (PGs) ... 602
    • 20.2.9 ... Pools ... 605
    • 20.2.10 ... (Default-)Replikationslevel unserer Pools ... 606
    • 20.2.11 ... CRUSH maps ... 608
    • 20.2.12 ... Poolparty – Die richtige Platzierung im richtigen Pool ... 613
    • 20.2.13 ... Size Matters – Part 3: Resizing unseres Ceph- Clusters ... 615
    • 20.2.14 ... Neuen OSD-Node hinzufügen ... 618
    • 20.2.15 ... Und noch ein Wächter – Neuen MON hinzufügen ... 622
    • 20.2.16 ... Alles Meta oder was? – Hinzufügen des vierten MDS ... 623
    • 20.2.17 ... CephFS – verzögerte Löschung ... 624
    • 20.2.18 ... CephFS – Snapshots ... 625
    • 20.3 ... Troubleshooting und Debugging ... 625
    • 20.4 ... Rhythmischer Octopus – Ceph/Samba 4 Storage Cluster ... 627
    • 20.4.1 ... Ceph- Cluster-Setup ... 627
    • 20.4.2 ... S4- Setup ... 629
    • 20.4.3 ... Provisioning des ersten DC (jake): ... 630
    • 20.4.4 ... Join der weiteren S4-DC ... 633
    • 20.4.5 ... Exkurs: Berechtigungsfragen – S3FS vs. NTVFS und Ceph ... 636
    • 20.4.6 ... S4 – Clusterintegration ... 640
    • 20.5 ... Hochverfügbares Ceph-RBD-Storage-Backend für S4 ... 642
    • 20.5.1 ... Ceph- RBD-Setup ... 643
    • 21 ... Distributed Storage Cluster mit GlusterFS ... 647
    • 21.1 ... GlusterFS – Installationsvoraussetzungen ... 648
    • 21.2 ... Setup der Gluster-Nodes ... 649
    • 21.2.1 ... Client Mount: Daten da? ... 651
    • 21.2.2 ... NFS- und CIFS-Mount ... 651
    • 21.2.3 ... Gluster-Konsole ... 651
    • 21.2.4 ... Size Matters Part 99 – oder: Another Brick in the Gluster-Cluster … Erweiterung des Gluster-Volumes um weitere Nodes (Bricks) ... 652
    • 21.2.5 ... Tool- Time again – Wartungsarbeiten am Gluster- Cluster ... 654
    • 21.3 ... Pacemaker- Integration von Gluster ... 655
    • 21.3.1 ... Performance-Monitoring ... 657
    • 21.3.2 ... Authentifikation ... 657
    • 21.4 ... Begegnung der dritten Art: UFO – Objektbasierter Gluster-Storage ... 658
    • 22 ... Geo-Site- /Multi-Site-(DFS-)Cluster für Datacenter ... 659
    • 22.1 ... Konzeptionelles Setup einer 2- Datacenter-Ceph-Multi-Site-Replication via LAN ... 660
    • 22.1.1 ... Vorbetrachtungen ... 660
    • 22.1.2 ... Setup ... 662
    • 22.1.3 ... Feintuning: CRUSH map für Datacenter ... 665
    • 22.2 ... Geo- Replication mit Gluster ... 666
    • 22.2.1 ... Nix Wallstreet – Mountbroker ... 667
    • 22.3 ... Ticket am Start? Geo-Site-/Multi-Site-Cluster mit Tickets und Boothd ... 668
    • 22.3.1 ... Pacemaker-Integration der Ticket- Ressourcen und Constraints ... 670
    • 22.3.2 ... boothd-Konfiguration ... 671
    • 22.4 ... Cluster- Storage – Fazit ... 672
    • 22.4.1 ... Performance ... 674
    • 23 ... iSCSI im Cluster ... 675
    • 23.1 ... iSCSI- Basics ... 675
    • 23.1.1 ... Wer braucht’s? ... 676
    • 23.2 ... Setup der iSCSI-Ressourcen (DRBD im Primary/Secondary) ... 676
    • 23.3 ... Einrichtung des iSCSI-Initiators ... 679
    • 23.4 ... DRBD- Master/Slave mit iSCSITarget als hochverfügbarem Storage-Backend für VMware ESXi/vSphere-Hosts ... 682
    • 23.4.1 ... Erweiterung ... 685
    • 23.5 ... DRBD im DualPrimary mit Cluster-FS als iSCSITarget für multiple Initiatoren ... 685
    • 23.6 ... Ceph/RBD als hochredundantes iSCSITarget ... 687
    • ... Teil IV – STONITH und Debugging im Cluster ... 689
    • 24 ... Node-Fencing mit STONITH ... 690
    • 24.1 ... Vorbetrachtungen ... 690
    • 24.2 ... Einfaches STONITH-Test-Setup mit external/ssh ... 691
    • 24.2.1 ... Exkurs: Passwortlose ssh-Key- Autorisierung ... 692
    • 24.2.2 ... Integration der external/ssh-STONITH- Ressourcen in unseren Cluster ... 694
    • 24.3 ... Watchdog ... 695
    • 24.4 ... SBD – STONITH per Split-Brain-Detector ... 695
    • 24.5 ... Quorum- Disk ... 697
    • 24.5.1 ... Setup qdisk unter RHEL/CentOS ... 699
    • 24.6 ... STONITH per external/ibmrsa-telnet ... 702
    • 24.7 ... STONITH per external/riloe und external/ipmi ... 704
    • 24.8 ... Fencing von virtualisierten Pacemaker- Clusternodes auf ESXi/vSphere-Hosts ... 705
    • 24.8.1 ... Shoot ’em down ... 710
    • 25 ... Debugging im Cluster ... 711
    • 26 ... Virtualisierung im Cluster ... 718
    • 26.1 ... Virtualisierungskonzepte – oder: Die wundersame Welt der Zwiebel ... 721
    • 26.2 ... Xen ... 725
    • 26.2.1 ... Xen- Terminologie ... 728
    • 26.2.2 ... Xen- Setup ... 728
    • 26.2.3 ... Installieren einer Xen-DomU ... 731
    • 26.2.4 ... Live- Migration von Xen-DomUs ... 737
    • 26.2.5 ... Remus ... 745
    • 26.2.6 ... Exkurs: Snapshots/Backups für Xen-DomUs und verschiedene Blockdevice-Formate ... 746
    • 26.2.7 ... Monitoring von Xen-DomUs im Cluster ... 751
    • 26.3 ... KVM/qemu ... 752
    • 26.3.1 ... KVM- Setup ... 753
    • 26.3.2 ... KVM- Netzwerksetup ... 755
    • 26.3.3 ... Doc Oc als VM-Spielplatz – Teil 1: VM-Storage mit Ceph/RBD und Cluster-FS ... 756
    • 26.3.4 ... KVM- Live-Migration ... 760
    • 26.3.5 ... Backup/Snapshots von KVM-Gästen ... 763
    • 26.3.6 ... Doc Oc als VM-Spielplatz – Teil 2: KVM nativ auf Ceph/RBD ... 764
    • 26.3.7 ... Debugging ... 771
    • 27 ... Backup und Disaster Recovery ... 774
    • 27.1 ... Analyse ... 775
    • 27.2 ... Umsetzung ... 777
    • 27.2.1 ... Kategorie 1: Backup und Recover des reinen Datenspeichers ... 777
    • 27.2.2 ... Kategorie 2: Backup und Recovery eines nicht virtualisierten Systems ... 785
    • 27.2.3 ... Kategorie 3: Backup und Recover von virtuellen Maschinen ... 788
    • ... Anhang ... 791
    • A.1 ... Beispieldateien ... 791
    • A.2 ... Paketlisten ... 791
    • A.3 ... Manpages ... 807
    • A.3.1 ... SMART, cpusets/cgroups, monit, ulimit, Bonding ... 808
    • A.3.2 ... Softraid, Bootloader, Filesysteme ... 809
    • A.3.3 ... LVM ... 813
    • A.3.4 ... HA – Heartbeat | CMAN | Corosync / Pacemaker und Applikationen im Cluster ... 815
    • A.3.5 ... DRBD, Cluster-FS, cLVM, iSCSI, STONITH ... 822
    • A.3.6 ... Xen, KVM, Qemu, libvirt ... 825
    • A.3.7 ... OCF- Resource-Agenten, auszugsweise alphabetische Übersicht ... 827
    • ... Index ... 831