Detaillierter Prozess zum Erstellen eines NFS-Servers mithilfe des NFS-Ganesha-Image von Docker

Detaillierter Prozess zum Erstellen eines NFS-Servers mithilfe des NFS-Ganesha-Image von Docker

Beschreibung und Verwendung des NFS-Ganesha3-Bildes

1. Einführung in NFS-Ganesha

NFS-Ganesha ist ein Benutzermodus-Dateiserver, der das NFS-Protokoll (NFSv3/NFSv4, NFSv4.1) unterstützt. Er bietet eine FUSE-kompatible (Filesystem in Userspace) Schnittstelle FSAL (File System Abstraction Layer) für Unix- und Unix-ähnliche Betriebssysteme. Auf diese Weise können Benutzer über den NFS-Client auf ihre eigenen Speichergeräte zugreifen. Der NFS-Ganesha-Dienst ermöglicht Benutzern den Zugriff auf Daten im Benutzermodus über FSAL ohne häufige Interaktion mit dem Kernel, wodurch die Reaktionszeit beim Lesen von Daten erheblich verkürzt wird.

2. Konfiguration von NFS-Ganesha

GANESHA_LOGFILE: Speicherort der Protokolldatei

GANESHA_CONFIGFILE: Speicherort von ganesha.conf

GANESHA_OPTIONS: Befehlszeilenoptionen zur Übergabe an Ganesha

GANESHA_EPOCH: Ganesha-Epochenwert

GANESHA_EXPORT_ID: eindeutige Ganesha-Export-ID

GANESHA_EXPORT: Exportort

GANESHA_ACCESS: Zugriffs-ACL-Liste exportieren

GANESHA_ROOT_ACCESS: ACL-Liste für Root-Zugriff exportieren

GANESHA_NFS_PROTOCOLS: zu unterstützende NFS-Protokolle

GANESHA_TRANSPORTS: zu unterstützende NFS-Transporte

GANESHA_BOOTSTRAP_CONFIG: beim Start eine neue Konfigurationsdatei schreiben

STARTUP_SCRIPT: Speicherort eines Shell-Skripts, das beim Start ausgeführt werden soll


3. Verwendung des NFS-Ganesha-Containers

3.1 Aufbau des NFS-Ganesha-Servers

1. Wenn der Host über einen NFS-Dienst verfügt, beenden Sie zuerst den NFS-Dienst auf dem Host

systemctl stoppt NFS
systemctl deaktiviert NFS- und RPC-bezogene Dienste oder entfernt direkt mit yum die NFS-Utils

2. Führen Sie den Container aus

docker run -d --net=host --privileged=true --restart=always --name=nfs_server -v /data/k8s:/export elimuzi/nfs-ganesha

Ausführen des Containers

-d bedeutet, dass es im Hintergrund ausgeführt wird

–net=host bedeutet, dass die Host-IP freigegeben wird

–privileged=true Mit diesem Parameter hat der Root im Container echte Root-Rechte

–name=nfs_server Benennen Sie den Container nfs_server

-v /data/k8s:/export erstellt eine Datenträgerzuordnung. /data/k8s ist das Verzeichnis, das die lokale Maschine als NFS freigeben muss, und /export ist das Verzeichnis des Containers, das in der Konfigurationsdatei festgelegt ist.

elimuzi/nfs-ganesha ist der Bildname

–restart=always bedeutet automatischer Neustart beim Booten

3. Optional: So ändern Sie die Standardkonfiguration

Die Konfigurationsdatei kann die Standardkonfiguration verwenden. Wenn Sie jedoch die Standardkonfiguration ändern möchten, lautet das Startskript von nfs-ganesha im Ganesha-Image /start.sh. Wenn Sie es ändern müssen, können Sie diese Datei zuerst kopieren.

docker cp nfs_server:/start.sh .

Nach der Änderung kopieren Sie es zurück in den Container

docker cp start.sh nfs_server:/start.sh
docker restart nfs_server # Starten Sie den Container neu

3.2 Verwendung des NFS-Ganesha-Clients

Überprüfen Sie die IP-Adresse des Serverhosts

Bildbeschreibung hier einfügen

Überprüfen Sie die IP-Adresse des Clients

Bildbeschreibung hier einfügen

3.showmount-Ansicht

showmount -e 192.168.18.143 

Bildbeschreibung hier einfügen

4. NFS3 einhängen

Der Mount-Befehl verwendet standardmäßig NFS3

mount 192.168.18.143:/exportieren /mnt 

Bildbeschreibung hier einfügen

Montierung #Montierung anzeigen 

Bildbeschreibung hier einfügen

5. NFS4 einhängen

mount.nfs4 192.168.18.143:/ /mnt #nfs4 verwendet / statt /export 

Bildbeschreibung hier einfügen

IV. Referenzen

NFS-Ganesha-Quellcodeadresse: https://github.com/nfs-ganesha/nfs-ganesha
Adresse des Quellcodes des NFS-Ganesha2.5-Containers: https://github.com/apnar/docker-image-nfs-ganesha
Quellcodeadresse des NFS-Ganesha3-Containers: https://github.com/JiHeTuXing/docker-image-nfs-ganesha
NFS-Ganesha2.5-Containeradresse: https://hub.docker.com/r/apnar/nfs-ganesha
NFS-Ganesha3-Containeradresse: https://hub.docker.com/r/elimuzi/nfs-ganesha

Dies ist das Ende dieses Artikels über die Verwendung des NFS-Ganesha-Image von Docker zum Erstellen eines NFS-Servers. Weitere Informationen zum Erstellen eines NFS-Servers mit Docker finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Lösen Sie das Problem der Containerverwaltung mit Docker Compose
  • Detaillierte Erläuterung des Prozesses der Verwendung von GPU in Docker

<<:  Zusammenfassung der Namenskonventionen für HTML und CSS

>>:  MySQL Series 11-Protokollierung

Artikel empfehlen

Element Plus implementiert Affix

Inhaltsverzeichnis 1. Komponenteneinführung 2. Qu...

MySQL-Partitionierungspraxis mit Navicat

MySQL-Partitionierung ist hilfreich bei der Verwa...

Detaillierte Diskussion über Speicher und Variablenspeicher in JS

Inhaltsverzeichnis Vorwort JS Magische Zahl Numme...

So ändern Sie in Nginx die über http aufgerufene Website in https

Inhaltsverzeichnis 1. Hintergrund 2. Voraussetzun...

Ein Artikel, der Ihnen zeigt, wie Sie Vue-Komponenten erstellen und verwenden

Inhaltsverzeichnis 1. Was ist eine Komponente? 2....

Detaillierte Analyse des Linux-NFS-Mechanismus anhand von Fällen

In Fortsetzung des vorherigen Artikels erstellen ...

Detaillierte Einführung in das benutzerdefinierte Docker-Netzwerk

Inhaltsverzeichnis Benutzerdefiniertes Docker-Net...

Detaillierte Erläuterung des MySQL MVCC-Mechanismusprinzips

Inhaltsverzeichnis Was ist MVCC Mysql-Sperre und ...

Durchführung der lokalen Migration von Docker-Images

Ich habe vor Kurzem Docker gelernt und stoße dabe...

Detaillierte Erläuterung der Hosts-Dateikonfiguration auf einem Linux-Server

Konfiguration der Hostdatei des Linux-Servers Die...

Hinweise zum MySQL-Datenbank-Sicherungsprozess

Heute habe ich mir einige Dinge im Zusammenhang m...

Definition und Verwendung des MySQL-Cursors

Erstellen eines Cursors Erstellen Sie zunächst ei...