Wie man

Installieren und konfigurieren Sie DRBD auf CentOS 8 | RHEL 8

Installieren und konfigurieren Sie DRBD auf CentOS 8 | RHEL 8

Dies ist eine Schritt-für-Schritt-Anleitung zur Installation von Distributed Replicated Block Device (DRBD) auf CentOS 8 / RHEL 8 Linux-Servern. DRBD ist eine kostenlose und quelloffene, softwarebasierte replizierte Speicherlösung, die zum Spiegeln des Inhalts von Blockgeräten wie Festplattenpartitionen, Festplatten und logischen Volumes zwischen Hosts in einem Netzwerk verwendet wird.

Die Kernfunktionalität von DRBD wird durch ein Linux-Kernelmodul mit Treiber für ein virtuelles Blockgerät implementiert. Da sich DRBD im unteren Bereich des I/O-Stacks des Systems befindet, ist es extrem flexibel und vielseitig, was es zu einer idealen Lösung für die Implementierung einer hochverfügbaren Replikationslösung macht.

Durch die Installation von DRBD erhalten Sie eine Reihe von Verwaltungstools, die mit dem Kernelmodul kommunizieren, um DRBD-Ressourcen zu konfigurieren und zu verwalten.

Wie DRBD Daten spiegelt:

Schritt 1: Installieren Sie DRBD auf CentOS 8 | RHEL 8 Linux

Die Pakete für DRBD müssen unter CentOS 8 / RHEL 8 Linux manuell installiert werden. Für die Installation verwenden wir das ELRepo-Repository, das zusätzliche Pakete für Enterprise Linux enthält.

Fügen Sie das ELRepo-Repository zu Ihrem CentOS / RHEL 8-System hinzu, indem Sie die folgenden Befehle ausführen.

sudo dnf -y installieren https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.U/min

- Wenn das Repository dem System hinzugefügt wurde, können Sie den öffentlichen Schlüssel importieren:

sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

Bestätigen Sie die Konfiguration, indem Sie nach DRBD-Paketen suchen.

$ sudo dnf suche drbd ELRepo.org Community Enterprise Linux Repository - el8 338 kB/s | 264 kB 00:00 ============================================ ===================== Name & Zusammenfassung Matched: drbd ======================= ========================================== kmod-drbd90.x86_64 : drbd90-Kernelmodul(e) drbd90-utils.x86_64 : Verwaltungsdienstprogramme für DRBD drbd90-utils-sysvinit.x86_64 : Das SysV-Initskript zur Verwaltung der DRBD.

Jetzt können Sie DRBD mit Kernelmodul unter CentOS 8 Linux installieren.

sudo dnf install vim drbd90-utils kmod-drbd90

Akzeptieren Sie die Installation in der Eingabeaufforderung, die durch die Befehlsausführung angezeigt wird.

Abhängigkeiten gelöst. ================================================ ================================================ ================================================ == Paket-Arch-Version Repository-Größe ========================================== ================================================ ================================================ ========= Installieren: kmod-drbd90 x86_64 9.0.21-3.el8_2.elrepo elrepo 292 k drbd90-utils x86_64 9.10.0-2.el8.elrepo elrepo 753 k Upgrade: dracut x86_64 049-70.git20200228.el8 BaseOS 365 k dracut-Netzwerk x86_64 049-70.git20200228.el8 BaseOS 100 k dracut-squash x86_64 049-70.git20200228.el8 BaseOS 54 k iptables x86_64 1.8.4-10.el8 BaseOS 581 k iptables-ebtables x86_64 1.8.4-10.el8 BaseOS 70 k iptables-libs x86_64 1.8.4-10.el8 BaseOS 105 k kexec-tools x86_64 2.0.20-14.el8 BaseOS 485 k libnftnl x86_64 1.1.5-4.el8 BaseOS 83 k Linux-Firmware noarch 20191202-97.gite8a0f4c9.el8 BaseOS 72 M systemd x86_64 239-30.el8_2 BaseOS 3.5 M systemd-libs x86_64 239-30.el8_2 BaseOS 1.1 M systemd-pam x86_64 239-30.el8_2 BaseOS 449 k systemd-udev x86_64 239-30.el8_2 BaseOS 1.3 M Abhängigkeiten installieren: kernel-core x86_64 4.18.0-193.6.3.el8_2 BaseOS 28 M Transaktionszusammenfassung =========================================== ================================================ ================================================ ======== Installieren Sie 3 Pakete Upgrade 13 Pakete Gesamte Downloadgröße: 109 M Ist das in Ordnung [J/N]: J

Unter den standardmäßigen SELinux-Sicherheitsrichtlinien kann DRBD-Mail nicht ausgeführt werden und Sie müssen möglicherweise DRBD-Prozesse von der SELinux-Kontrolle ausnehmen:

sudo dnf -y install policycoreutils-python-utils sudo semanage permissive -a drbd_t

Aktivieren Sie DRBD-Dienstports in der Firewall.

sudo Firewall-cmd --add-port=6996-7800/tcp --permanent sudo Firewall-cmd --reload

Schritt 2: Vorbereiten Ihres untergeordneten Speichers

Mit der Installation von DRBD auf dem CentOS / RHEL 8 Linux-System können wir mit der Konfiguration des replizierten Speichers mit DRBD auf zwei Servern fortfahren.

Wir müssen eine grobe beiseite legen gleich groß Speicherbereich auf beiden Clusterknoten, der als untergeordnetes Gerät für Ihre DRBD-Ressource verwendet wird. Blockierte Geräte, die Sie einfach verwenden können, sind:

In meinem Setup habe ich zwei Server mit untenstehenden Details.

ServernameServer-IPRaw Disk-Gerät
Server-01.Computerforgeeks.com192.168.20.11/dev/sdb
server-02.Computerforgeeks.com192.168.20.12/dev/sdb

Dies ist das Festplattenlayout meines Servers:

$ lsblk NAME MAJ:MIN RM GRÖSSE RO TYP MOUNTPOINT sda 8:0 0 19.1G 0 Datenträger sda1 8:1 0 19G 0 Teil / ├─sda14 8:14 0 1M 0 Teil └─sda15 8:15 0 64M 0 Teil /boot/efi sdb 8:16 0 50G 0 Datenträger sr0 11:0 1 1024M 0 rom

Ich werde LVM verwenden, um eine Volume-Gruppe für DRBD zu erstellen, um die spätere Skalierung zu vereinfachen. Dies erfolgt auf dem Server mit Raw Disk und installiertem DRBD.

Partitionstabelle auf der Festplatte erstellen.

sudo parted -s -a optimal -- /dev/sdb mklabel gpt sudo parted -s -a optimal -- /dev/sdb mkpart primär 0% 100% sudo parted -s -- /dev/sdb align-check optimal 1

Installieren Sie LVM-Tools und erstellen Sie PV, VG und LV für DRBD.

$ sudo dnf -y install lvm2 $ sudo pvcreate /dev/sdb1 Physisches Volume "/dev/sdb1" erfolgreich erstellt. $ sudo vgcreate drbdpool /dev/sdb1 Volume-Gruppe "drbdpool" erfolgreich erstellt $ sudo lvcreate -n drbdata -l100%FREE drbdpool Logisches Volume "drbdata" erstellt.

LVM-Einstellungen bestätigen.

$ sudo pvs PV VG Fmt Attr PSize PFree /dev/sdb1 drbdpool lvm2 a-- <50.00g <50.00g $ sudo vgs VG #PV #LV #SN Attr VSize VFree drbdpool 1 0 0 wz--n- <50.00g <50.00g

Schritt 3: DRBD-Ressource konfigurieren

Alle Aspekte von DRBD werden in der /etc/drbd.conf Konfigurationsdatei mit folgendem Inhalt.

$ Katze /etc/drbd.conf # Ein Beispiel finden Sie in /usr/share/doc/drbd… /drbd.conf.Beispiel: "drbd.d/global_common.conf"; include "drbd.t/*.res";

Dies ist nur eine Skelettdatei, die dem Dienst mitteilt, in welchen Verzeichnissen er nach anderen Konfigurationsdateien suchen soll.

Ich erstelle eine neue Konfigurationsdatei unter /etc/drbd.d/r0.res

sudo vim /etc/drbd.d/resource0.res

Mit folgendem Inhalt:

Ressource Ressource0  auf Server-01.Computerforgeeks.com  Gerät /dev/drbd1; Datenträger /dev/mapper/drbdpool-drbdata; Adresse 95.217.209.209:7789; Meta-Festplatte intern;  auf Server-02.Computerforgeeks.com  Gerät /dev/drbd1; Datenträger /dev/mapper/drbdpool-drbdata; Adresse 95.217.220.167:7789; Meta-Festplatte intern;  

Konfigurationszusammenfassung:

Schritt 4: DRDB-Ressource initialisieren

Nachdem Sie die anfängliche Ressourcenkonfiguration abgeschlossen haben, können Sie Ihre Ressource aufrufen. Das wird nur einmal gemacht.

Jeder der folgenden Schritte muss auf beiden Knoten ausgeführt werden.

Initialisieren der Metadaten von DRBD - Syntax: drbdadm create-md

$ sudo drbdadm create-md resource0 Initialisieren des Aktivitätsprotokolls Initialisieren der Bitmap (1600 KB) auf Null Schreiben von Metadaten… Neuer drbd-Metadatenblock erfolgreich erstellt.

Schritt 5: DRBD-Ressource aktivieren

Sobald die Ressource bee . ist initialisiert Sie müssen es mit seinem Backing-Gerät (oder Geräten, im Falle einer Multi-Volume-Ressource) verknüpfen, Replikationsparameter festlegen und die Ressource mit ihrem Peer verbinden:

$ sudo drbdadm up resource0 --== Vielen Dank für Ihre Teilnahme an der globalen Nutzungsumfrage ==-- Die Antwort des Servers lautet: Sie sind der 6934. Benutzer, der diese Version installiert

Beobachten Sie den Status:

$ sudo drbdadm status resource0 resource0 role:Sekundärer Datenträger:Inkonsistenter Server-02.Computerforgeeks.com-Rolle:Sekundäre Peer-Festplatte:Inkonsistent

Das Inkonsistent/Inkonsistent Festplattenstatus wird zu diesem Zeitpunkt erwartet expected.

Schritt 6: Erste Gerätesynchronisierung

DRBD hat sowohl Festplatten- als auch Netzwerkressourcen erfolgreich zugewiesen und ist betriebsbereit. Die nächste Aktion besteht darin, DRBD mitzuteilen, welcher der Knoten als Quelle der ersten Gerätesynchronisation.

Wir müssen die anfängliche vollständige Synchronisierung starten (Nur auf einem Knoten ausführen). Ich werde meinen laufen lassen Server-01.Computerforgeeks.com

sudo drbdadm primär --force resource0

Nach Ausgabe dieses Befehls beginnt die anfängliche vollständige Synchronisation synchronization. Je nach Gerätegröße kann es einige Zeit dauern.

Status überprüfen:

# On Primary $ sudo drbdadm status sudo drbdadm status resource0 resource0 role:Primary disk:UpToDate server-02.Computerforgeeks.com role:Secondary peer-disk:UpToDate # On Secondary $ sudo drbdadm status resource0 resource0 role:Secondary disk:UpToDate server-01.Computerforgeeks.com-Rolle:Primäre Peer-Festplatte:UpToDate

Schritt 7: Verwenden des DRBD-Geräts

Wir können jetzt das DRBD-Gerät verwenden, da es voll funktionsfähig ist. Wir können ein Dateisystem auf dem Gerät erstellen, es als Rohblockgerät verwenden, es mounten und jede andere Operation ausführen, die Sie mit einem zugänglichen Blockgerät durchführen würden.

Gerätezuordnung für Namen abrufen.

$ lsblk NAME MAJ:MIN RM GRÖSSE RO TYP MOUNTPOINT sda 8:0 0 19.1G 0 Datenträger sda1 8:1 0 19G 0 Teil / ├─sda14 8:14 0 1M 0 Teil └─sda15 8:15 0 64M 0 Teil /boot/efi sdb 8:16 0 50G 0 Datenträger └─sdb1 8 :17 0 50G 0 part └─drbdpool-drbdata 253:0 0 50G 0 lvm └─drbd1 147:1 0 50G 0 disk sr0 11:0 1 1024M 0 rom

Lassen Sie uns ein Dateisystem auf einem DRBD-Gerät erstellen:

$ sudo mkfs.xfs /dev/drbd1 meta-data=/dev/drbd1 isize=512 agcount=4, agsize=3276442 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=1, spärlich=1, rmapbt=0 = reflink=1 data = bsize=4096 blocks=13105767, imaxpct=25 = sunit=0 swidth=0 blks benennung =version 2 bsize=4096 ascii-ci=0, ftype=1 log =internes Log bsize=4096 blocks=6399 , version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0

Lassen Sie uns die Montage schmecken:

sudo mkdir /mnt/mydrbd sudo mount /dev/drbd1 /mnt/mydrbd

Bestätigung:

$ df -hT /mnt/mydrbd/ Dateisystemtyp Verwendete Größe Verfügbare Verwendung% Eingehängt auf /dev/drbd1 xfs 50G 390M 50G 1% /mnt/mydrbd

Überprüfen Sie, ob Sie Dateien schreiben können.

für i in 1… 10; tun sudo touch /mnt/mydrbd/$i.txt fertig

Bestätigen Sie, ob Dateien auf dem DRBD-Gerät erstellt wurden:

$ ls -l /mnt/mydrbd total 0 -rw-r--r--. 1 Wurzel Wurzel 0 7. Juli 00:36 10.txt -rw-r--r--. 1 Wurzel Wurzel 0 7. Juli 00:36 1.txt -rw-r--r--. 1 Wurzel Wurzel 0 7. Juli 00:36 2.txt -rw-r--r--. 1 Wurzel Wurzel 0 7. Juli 00:36 3.txt -rw-r--r--. 1 Wurzel Wurzel 0 7. Juli 00:36 4.txt -rw-r--r--. 1 Wurzel Wurzel 0 7. Juli 00:36 5.txt -rw-r--r--. 1 Wurzel Wurzel 0 7. Juli 00:36 6.txt -rw-r--r--. 1 Wurzel Wurzel 0 7. Juli 00:36 7.txt -rw-r--r--. 1 Wurzel Wurzel 0 7. Juli 00:36 8.txt -rw-r--r--. 1 Wurzel Wurzel 0 7. Juli 00:36 9.TXT

Schritt 8: DRBD-Gerät auf dem sekundären Host montieren:

Zuerst auf dem aushängen Primärknoten und bekomme eine Nebenrolle.

sudo umount /mnt/mydrbd sudo drbdadm sekundäre Ressource0

Führen Sie dann auf dem sekundären Knoten Folgendes aus:

$ sudo drbdadm primäre Ressource0 $ sudo drbdadm Status Ressource0 Rolle: Sekundäre Festplatte: UpToDate Server-02.Computerforgeeks.com-Rolle:Primäre Peer-Festplatte:UpToDate $ sudo mkdir /mnt/mydrbd $ sudo mount /dev/drbd1 /mnt/mydrbd $ df -hT /mnt/mydrbd Dateisystemtyp Größe Verwendet Verfügbare Verwendung% Gemountet auf /dev/drbd1 xfs 50G 390M 50G 1% /mnt/mydrbd $ ls -lh /mnt/mydrbd/ total 0 -rw-r--r--. 1 Wurzel Wurzel 0 7. Juli 00:36 10.txt -rw-r--r--. 1 Wurzel Wurzel 0 7. Juli 00:36 1.txt -rw-r--r--. 1 Wurzel Wurzel 0 7. Juli 00:36 2.txt -rw-r--r--. 1 Wurzel Wurzel 0 7. Juli 00:36 3.txt -rw-r--r--. 1 Wurzel Wurzel 0 7. Juli 00:36 4.txt -rw-r--r--. 1 Wurzel Wurzel 0 7. Juli 00:36 5.txt -rw-r--r--. 1 Wurzel Wurzel 0 7. Juli 00:36 6.txt -rw-r--r--. 1 Wurzel Wurzel 0 7. Juli 00:36 7.txt -rw-r--r--. 1 Wurzel Wurzel 0 7. Juli 00:36 8.txt -rw-r--r--. 1 Wurzel Wurzel 0 7. Juli 00:36 9.TXT

In diesem Handbuch haben wir erfahren, wie wir DRBD auf einem CentOS / RHEL 8 Linux-Computer installieren und konfigurieren können configure. Detaillierte Informationen zur DRBD-Technologie finden Sie in der offiziellen Dokumentation im folgenden Link.

Mehr zum Thema Speicher:

Ceph 15 (Octopus) Cluster auf CentOS 8 . installieren

Ceph 15 (Octopus) Storage Cluster auf Ubuntu 20 . installieren.04

GlusterFS-Speicher mit Heketi auf CentOS 8 / CentOS 7 einrichten

Die 7 besten Apps, um die Textnachrichten Ihres Mannes auszuspionieren
Sie haben plötzlich den Drang, die SMS Ihres Mannes auszuspionieren. Er hat sich in letzter Zeit vielleicht seltsam verhalten, was Fragen in deinem Ko...
Einfache Möglichkeit zum Herunterladen von Videos von YouTube und vielem mehr mit dem kostenlosen Video-Downloader
Wählen Sie YTD Video Downloader, um Videos von sozialen Netzwerken und all Ihren Lieblingswebsites herunterzuladenFähig sein zu Videos auf Facebook un...
Überwachen Sie Apache Kafka mit Prometheus und Grafana
In unseren letzten Anleitungen haben wir gesehen, wie man Kafka sowohl in Ubuntu 20 als auch in CentOS 8 installiert. Wir hatten eine kurze Einführung...