Lustre File System mounten und darauf zugreifen

Um auf ein File Storage with Lustre-Dateisystem zuzugreifen, müssen Sie es von einer Compute-Instanz oder einem OKE-Knoten mounten. Auf der Instanz, über die Sie das Dateisystem mounten möchten, müssen Sie einen Lustre-Client installieren. Erstellen Sie zunächst das Lustre-Clientpackage auf einem System, und installieren Sie dann das Clientpackage auf allen Instanzen, die ein Lustre-Dateisystem mounten müssen.

Clients

Ein Lustre-Client, der auf einer Compute-Instanz ausgeführt wird, ist für den Zugriff auf ein Lustre-Dateisystem erforderlich. Erstellen und installieren Sie einen Client, der mit dem Betriebssystem der Instanzen kompatibel ist, die das Dateisystem mounten. Wenn Sie Hilfe bei Lustre-Clients benötigen, wenden Sie sich an den Support.

Erstellen eines Lustre-Clients für Oracle Linux 8

Erstellen Sie einen Lustre-Client auf einem System, und installieren Sie das Clientpackage dann auf jeder Instanz, die ein Lustre-Dateisystem mountet.

  1. Um einen Lustre-Client mit Oracle Linux zu verwenden, muss der Kernel in Red Hat Compatible Kernel (RHCK) geändert werden. Das Wechseln von Kernelversionen wird unter Ändern des Standardkernels in Oracle Linux beschrieben.
  2. Stellen Sie sicher, dass das System den RHCK-Kernel nach dem Neustart ausführt.
  3. Installieren Sie erforderliche Packages mit den folgenden Befehlen:

    release=$(cat /etc/os-release | grep ^VERSION= |cut -f2 -d\" |cut -f1 -d.)
    sudo dnf config-manager --set-enabled ol${release}_codeready_builder
    sudo dnf config-manager --enable ol${release}_developer_EPEL
    sudo yum-config-manager --enable ol${release}_developer
    sudo yum install git libtool patch pkgconfig libnl3-devel.x86_64 libblkid-devel libuuid-devel rpm-build kernel-rpm-macros kernel-devel kernel-abi-whitelists libmount libmount-devel libyaml-devel
  4. Klonen Sie das Lustre-Client-Quell-Repository, und checken Sie den Client mit den folgenden Befehlen aus:

    git clone git://git.whamcloud.com/fs/lustre-release.git lustre-client
    cd lustre-client/
    git checkout tags/2.15.5
  5. Erstellen Sie den Client und RPMs. Alle Lustre RPMs im aktuellen Verzeichnis werden mit den folgenden Befehlen erstellt:

    sudo sh autogen.sh
    ./configure --enable-client
    sudo make
    sudo make rpms
    sudo make dkms-rpm
  6. Prüfen Sie die RPMs:

    ls -l *.rpm
  7. Wenn Sie den Lustre-Client auf derselben Instanz installieren möchten, die Sie erstellt haben, führen Sie die folgenden Befehle aus:

    sudo make install
    sudo depmod
    sudo modprobe lustre

Fahren Sie mit Installieren eines Lustre-Clients für Oracle Linux 8 fort.

Installieren eines Lustre-Clients für Oracle Linux 8

Bei diesen Schritten wird davon ausgegangen, dass Sie bereits einen Lustre-Client für Oracle Linux erstellt haben.

In diesem Beispiel wird das Lustre Dynamic Kernel Module Support-(DKMS-)Clientpackage für seine Flexibilität über verschiedene Kernelversionen hinweg verwendet. Wenn Sie jedoch den DKMS-Client verwenden, müssen Lustre-Module erstellt werden, wenn er installiert ist oder der Kernel aktualisiert wird. Sie können die RPMs auswählen, die Sie installieren möchten, wie das Nicht-DKMS-Package kmod-lustre-client für die Linux-Module.

  1. Erstellen Sie ein Verzeichnis auf der Instanz, in der Sie den Lustre-Client installieren möchten. Beispiel:

    mkdir lustre-rpms
  2. Kopieren Sie die Lustre RPMs. In diesem Beispiel verwenden wir die DKMS-RPMs, wie:

    lustre-client-2.15.5-1.el8.x86_64.rpm
    lustre-client-dkms-2.15.5-1.el8.noarch.rpm
  3. Um einen Lustre-Client mit Oracle Linux zu verwenden, muss der Kernel in Red Hat Compatible Kernel (RHCK) geändert werden. Das Wechseln von Kernelversionen wird unter Ändern des Standardkernels in Oracle Linux beschrieben.
  4. Stellen Sie sicher, dass das System den RHCK-Kernel nach dem Neustart ausführt.
  5. Aktivieren Sie das erforderliche Linux-Repository für Abhängigkeiten, und installieren Sie Abhängigkeiten mit den folgenden Befehlen:

    release=$(cat /etc/os-release | grep ^VERSION= |cut -f2 -d\" |cut -f1 -d.)
    sudo dnf config-manager --set-enabled ol${release}_codeready_builder
    sudo dnf config-manager --enable ol${release}_developer_EPEL
    sudo yum install dkms libmount-devel libyaml-devel
  6. Installieren Sie die Client-RPMs mit dem folgenden Befehl:

    sudo yum localinstall -y ./*.rpm
  7. Testen Sie die Module mit den folgenden Befehlen:

    sudo modprobe lustre
    sudo lsmod |grep lustre
  8. Der Lustre-Client ist bereit. Starten Sie das System neu.

Erstellen eines Lustre Client für Ubuntu 22.04

Erstellen Sie einen Lustre-Client auf einem System, und installieren Sie das Clientpackage dann auf jeder Instanz, die ein Lustre-Dateisystem mountet.

  1. Lustre 2.15.5 ist nicht kompatibel mit Linux-Kernel 6. Der Client benötigt eine Kernelversion von 5.15.x. Prüfen Sie die BS- und Kernel-Versionen mit den folgenden Befehlen:

    cat /etc/os-release
    uname -r

    In diesem Beispiel ist die verwendete kompatible Kernelversion 5.15.0-1040-oracle.

  2. Wenn eine andere Kernelversion installiert ist, installieren Sie die erforderliche Kernelversion und die Kernel-Header mit den folgenden Befehlen, die die Beispielversion von 5.15.0-1040-oracle verwenden:

    sudo apt-get install linux-image-5.15.0-1040-oracle
    sudo apt-get install linux-headers-5.15.0-1040-oracle
    sudo apt-get install linux-modules-5.15.0-1040-oracle
  3. Aktualisieren Sie grub mit dem folgenden Befehl:

    sudo update-grub
  4. Prüfen Sie die Datei /boot/grub/grub.cfg, um den Eintrag für die Kernelversion abzurufen, und aktualisieren Sie den Eintrag GRUB_DEFAULT in der Datei /etc/default/grub wie folgt:

    GRUB_DEFAULT='Advanced options for Ubuntu>Ubuntu, with Linux 5.15.0-1040-oracle'
  5. Aktualisieren Sie grub mit dem folgenden Befehl:

    sudo update-grub
  6. Starten Sie den Client mit sudo reboot neu. Stellen Sie nach dem Neustart sicher, dass die richtige Kernelversion ausgeführt wird.
  7. Klonen Sie das Lustre-Client-Quell-Repository, und checken Sie den Client mit den folgenden Befehlen aus:

    git clone git://git.whamcloud.com/fs/lustre-release.git lustre-client
    cd lustre-client/
    git checkout tags/2.15.5
  8. Installieren Sie allgemeine Packages mit dem folgenden Befehl:

    sudo apt-get install -y libreadline-dev libpython3-dev libkrb5-dev libkeyutils-dev flex bison libmount-dev quilt swig libtool make git libnl-3-dev libnl-genl-3-dev libnl-3-dev pkg-config libhwloc-dev libnl-genl-3-dev libyaml-dev libtool libyaml-dev ed libreadline-dev dpatch libsnmp-dev mpi-default-dev libncurses5-dev libncurses-dev bison flex gnupg libelf-dev gcc libssl-dev bc wget bzip2 build-essential udev kmod cpio module-assistant module-assistant debhelper dpatch libsnmp-dev mpi-default-dev libssl-dev
  9. Konfigurieren Sie den Client:

    cd lustre-client
    sudo sh autogen.sh
    ./configure --enable-client
  10. Bearbeiten Sie die Debian-Kontrolldateien, um Abhängigkeiten mit den neuesten linux-image- und linux-headers-Paketen zu entfernen. Ohne diese Abhängigkeiten zu entfernen, schlägt das Erstellen der Packages fehl. Bearbeiten Sie die Kontrolldateien wie:

    vi debian/control*

    Entfernen Sie alle Referenzen in den beiden Dateien. Beispiel:

    linux-headers-generic | linux-headers-amd64 | linux-headers-arm64 , linux-image | linux-image-amd64 | linux-image-arm64, linux-headers-generic | linux-headers-amd64
  11. Erstellen Sie die Packages mit den folgenden Befehlen:

    sudo make debs
    sudo make dkms-debs
  12. Überprüfen Sie die Pakete:

    ls -l debs/*.deb
  13. Wenn Sie den Lustre-Client auf derselben Instanz installieren möchten, die Sie erstellt haben, führen Sie die folgenden Befehle aus:

    sudo make install
    sudo depmod
    sudo modprobe lustre

Fahren Sie mit Installieren eines Lustre-Clients für Ubuntu 22.04 fort.

Installation eines Lustre-Clients für Ubuntu 22.04

Bei diesen Schritten wird davon ausgegangen, dass Sie bereits einen Lustre-Client für Ubuntu erstellt haben.

  1. Lustre 2.15.5 ist nicht kompatibel mit Linux-Kernel 6. Der Client benötigt eine Kernelversion von 5.15.x. Prüfen Sie die BS- und Kernel-Versionen mit den folgenden Befehlen:

    cat /etc/os-release
    uname -r

    In diesem Beispiel ist die verwendete kompatible Kernelversion 5.15.0-1040-oracle.

  2. Wenn eine andere Kernelversion installiert ist, installieren Sie die erforderliche Kernelversion und die Kernel-Header mit den folgenden Befehlen, die die Beispielversion von 5.15.0-1040-oracle verwenden:

    sudo apt-get install linux-image-5.15.0-1040-oracle
    sudo apt-get install linux-headers-5.15.0-1040-oracle
    sudo apt-get install linux-modules-5.15.0-1040-oracle
  3. Aktualisieren Sie grub mit dem folgenden Befehl:

    sudo update-grub
  4. Aktualisieren Sie den Eintrag GRUB_DEFAULT in der Datei /etc/default/grub wie folgt:

    GRUB_DEFAULT='Advanced options for Ubuntu>Ubuntu, with Linux 5.15.0-1040-oracle'
  5. Aktualisieren Sie grub mit dem folgenden Befehl:

    sudo update-grub
  6. Starten Sie den Client mit sudo reboot neu. Stellen Sie nach dem Neustart sicher, dass die richtige Kernelversion ausgeführt wird.
  7. Kopieren Sie die erstellten Paketdateien in die Instanz, in der Sie den Lustre-Client installieren möchten. Im folgenden Beispielverzeichnis debs wurde das DKMS-Kernelmodulpackage aufgrund seiner Flexibilität ausgewählt. Sie können jedoch auch Nicht-DKMS-Modul-RPMs auswählen:

    rw-r--r-- 1 ubuntu ubuntu 17058172 Apr  2 02:26 lustre-client-modules-dkms_2.15.5-1_amd64.deb
    -rw-r--r-- 1 ubuntu ubuntu   678790 Apr  2 02:26 lustre-client-utils_2.15.5-1_amd64.deb
  8. Installieren Sie die Packages mit den folgenden Befehlen:

    sudo apt-get update
    sudo apt install --fix-broken ./*.deb
  9. Testen Sie die Module mit den folgenden Befehlen:

    sudo modprobe lustre
    sudo lsmod |grep lustre
  10. Der Lustre-Client ist bereit. Starten Sie das System neu.

Mountbefehle

Von einer Instanz mit Lustre-Clientmodulen installiert können Sie ein Dateisystem mounten.

Mountbefehl abrufen

Gehen Sie wie folgt vor, um den Mountbefehl für ein bestimmtes Dateisystem abzurufen:

  1. Wählen Sie auf der Listenseite Lustre-Dateisysteme das Dateisystem aus, mit dem Sie arbeiten möchten. Wenn Sie Hilfe beim Suchen der Listenseite benötigen, lesen Sie Dateisysteme auflisten.
  2. Suchen Sie auf der Detailseite des Dateisystems unter Lustre-Eigenschaften den Mount-Befehl.
  3. Wählen Sie Kopieren, um den Mountbefehl in die Zwischenablage zu kopieren.

Mounten eines Dateisystems

Führen Sie aus der Instanz den Mountbefehl aus, der in den vorherigen Schritten in die Zwischenablage kopiert wurde. Beispiel:

mount -t lustre 10.0.0.2@tcp:/lustrefs /mnt/mymountpoint