Lustre File Systemのマウントおよびアクセス

Lustreファイル・システムを使用したファイル・ストレージにアクセスするには、コンピュート・インスタンスまたはOKEノードからマウントする必要があります。ファイル・システムのマウント元のインスタンスで、Lustreクライアントをインストールする必要があります。まず、システムにLustreクライアント・パッケージをビルドし、次にLustreファイル・システムをマウントする必要があるすべてのインスタンスにクライアント・パッケージをインストールします。

クライアント

Lustreファイル・システムにアクセスするには、コンピュート・インスタンスで実行されているLustreクライアントが必要です。ファイル・システムをマウントするインスタンスのOSと互換性のあるクライアントを構築およびインストールします。Lustreクライアントに関するサポートが必要な場合は、サポートに連絡してください

Oracle Linux 8用のLustreクライアントの構築

1つのシステムにLustreクライアントを構築し、Lustreファイル・システムをマウントする各インスタンスにクライアント・パッケージをインストールします。

  1. Oracle LinuxでLustreクライアントを使用するには、カーネルをRed Hat Compatible Kernel (RHCK)に変更する必要があります。カーネル・バージョンの切替えについては、「Oracle Linuxでのデフォルト・カーネルの変更」を参照してください。
  2. リブート後にシステムがRHCKカーネルを実行していることを確認します。
  3. 次のコマンドを使用して、必要なパッケージをインストールします。

    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. 次のコマンドを使用して、Lustreクライアント・ソースrepoをクローニングし、クライアントをチェックアウトします。

    git clone git://git.whamcloud.com/fs/lustre-release.git lustre-client
    cd lustre-client/
    git checkout tags/2.15.5
  5. クライアントおよびRPMを構築します。現在のディレクトリにあるすべてのLustre RPMは、次のコマンドを使用して構築されます。

    sudo sh autogen.sh
    ./configure --enable-client
    sudo make
    sudo make rpms
    sudo make dkms-rpm
  6. RPMを調べます。

    ls -l *.rpm
  7. Lustreクライアントをビルドしたインスタンスと同じインスタンスにインストールする場合は、次のコマンドを実行します。

    sudo make install
    sudo depmod
    sudo modprobe lustre

Installing a Lustre client for Oracle Linux 8に進みます。

Oracle Linux 8用のLustreクライアントのインストール

これらのステップでは、すでにOracle Linux用のLustreクライアントを構築していることを前提としています。

この例では、Lustre Dynamic Kernel Module Support (DKMS)クライアント・パッケージは、異なるカーネル・バージョン間の柔軟性に使用されます。ただし、DKMSクライアントを使用している場合は、Lustreモジュールがインストールされているか、カーネルがアップグレードされたときにLustreモジュールを作成する必要があります。Linuxモジュール用の非DKMS kmod-lustre-clientパッケージなど、インストールするRPMを選択できます。

  1. Lustreクライアントをインストールするインスタンスにディレクトリを作成します。たとえば:

    mkdir lustre-rpms
  2. Lustre RPMをコピーします。この例では、DKMS RPMを使用します。次に例を示します。

    lustre-client-2.15.5-1.el8.x86_64.rpm
    lustre-client-dkms-2.15.5-1.el8.noarch.rpm
  3. Oracle LinuxでLustreクライアントを使用するには、カーネルをRed Hat Compatible Kernel (RHCK)に変更する必要があります。カーネル・バージョンの切替えについては、「Oracle Linuxでのデフォルト・カーネルの変更」を参照してください。
  4. リブート後にシステムがRHCKカーネルを実行していることを確認します。
  5. 次のコマンドを使用して、依存関係に必要なLinuxリポジトリを有効にし、依存関係をインストールします。

    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. 次のコマンドを使用して、クライアントRPMをインストールします。

    sudo yum localinstall -y ./*.rpm
  7. 次のコマンドを使用して、モジュールをテストします。

    sudo modprobe lustre
    sudo lsmod |grep lustre
  8. Lustreクライアントの準備ができました。システムを再起動します。

Ubuntu 22.04用のLustreクライアントの構築

1つのシステムにLustreクライアントを構築し、Lustreファイル・システムをマウントする各インスタンスにクライアント・パッケージをインストールします。

  1. Lustre 2.15.5は、Linuxカーネル6と互換性がありません。クライアントには、5.15.xのカーネル・バージョンが必要です。次のコマンドを使用して、OSおよびカーネルのバージョンを確認します。

    cat /etc/os-release
    uname -r

    この例では、使用される互換性のあるカーネル・バージョンは5.15.0-1040-oracleです。

  2. 別のカーネル・バージョンがインストールされている場合は、5.15.0-1040-oracleのサンプル・バージョンを使用する次のコマンドを使用して、必要なカーネル・バージョンおよびカーネル・ヘッダーをインストールします。

    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. 次のコマンドを使用してgrubを更新します。

    sudo update-grub
  4. /boot/grub/grub.cfgを調べ、カーネル・バージョンのエントリを取得し、ファイル/etc/default/grubのエントリGRUB_DEFAULTを次のように更新します。

    GRUB_DEFAULT='Advanced options for Ubuntu>Ubuntu, with Linux 5.15.0-1040-oracle'
  5. 次のコマンドを使用してgrubを更新します。

    sudo update-grub
  6. sudo rebootを使用してクライアントを再起動します。リブート後、正しいカーネル・バージョンが実行されていることを確認します。
  7. 次のコマンドを使用して、Lustreクライアント・ソースrepoをクローニングし、クライアントをチェックアウトします。

    git clone git://git.whamcloud.com/fs/lustre-release.git lustre-client
    cd lustre-client/
    git checkout tags/2.15.5
  8. 次のコマンドを使用して、共通パッケージをインストールします。

    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. クライアントを構成します。

    cd lustre-client
    sudo sh autogen.sh
    ./configure --enable-client
  10. Debian制御ファイルを編集して、最新の linux-imageおよび linux-headersパッケージの依存関係を削除します。これらの依存関係を削除しないと、パッケージの作成は失敗します。次のような制御ファイルを編集します。

    vi debian/control*

    次のように、2つのファイル内のすべての参照を削除します。

    linux-headers-generic | linux-headers-amd64 | linux-headers-arm64 , linux-image | linux-image-amd64 | linux-image-arm64, linux-headers-generic | linux-headers-amd64
  11. 次のコマンドを使用してパッケージを構築します。

    sudo make debs
    sudo make dkms-debs
  12. パッケージを調べます。

    ls -l debs/*.deb
  13. Lustreクライアントをビルドしたインスタンスと同じインスタンスにインストールする場合は、次のコマンドを実行します。

    sudo make install
    sudo depmod
    sudo modprobe lustre

「Ubuntu 22.04用のLustreクライアントのインストール」に進みます。

Ubuntu 22.04用のLustreクライアントのインストール

これらのステップでは、すでにUbuntu用のLustreクライアントを構築していることを前提としています。

  1. Lustre 2.15.5は、Linuxカーネル6と互換性がありません。クライアントには、5.15.xのカーネル・バージョンが必要です。次のコマンドを使用して、OSおよびカーネルのバージョンを確認します。

    cat /etc/os-release
    uname -r

    この例では、使用される互換性のあるカーネル・バージョンは5.15.0-1040-oracleです。

  2. 別のカーネル・バージョンがインストールされている場合は、5.15.0-1040-oracleのサンプル・バージョンを使用する次のコマンドを使用して、必要なカーネル・バージョンおよびカーネル・ヘッダーをインストールします。

    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. 次のコマンドを使用してgrubを更新します。

    sudo update-grub
  4. ファイル/etc/default/grubのエントリGRUB_DEFAULTを次のように更新します。

    GRUB_DEFAULT='Advanced options for Ubuntu>Ubuntu, with Linux 5.15.0-1040-oracle'
  5. 次のコマンドを使用してgrubを更新します。

    sudo update-grub
  6. sudo rebootを使用してクライアントを再起動します。リブート後、正しいカーネル・バージョンが実行されていることを確認します。
  7. ビルドしたパッケージ・ファイルを、Lustreクライアントをインストールするインスタンスにコピーします。次のdebsディレクトリの例では、DKMSカーネル・モジュール・パッケージがその柔軟性のために選択されていますが、必要に応じてDKMS以外のモジュールRPMを選択できます。

    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. 次のコマンドを使用してパッケージをインストールします。

    sudo apt-get update
    sudo apt install --fix-broken ./*.deb
  9. 次のコマンドを使用して、モジュールをテストします。

    sudo modprobe lustre
    sudo lsmod |grep lustre
  10. Lustreクライアントの準備ができました。システムを再起動します。

マウント・コマンド

Lustreクライアント・モジュールがインストールされているインスタンスから、ファイル・システムをマウントできます。

mountコマンドの取得

特定のファイル・システムのmountコマンドを取得するには、次のステップを実行します。

  1. 「Lustre file systems」リスト・ページで、操作するファイル・システムを選択します。リスト・ページの検索に関するヘルプが必要な場合は、ファイル・システムのリストを参照してください。
  2. ファイル・システムの詳細ページの「Lustre properties」で、「Mount command」を見つけます。
  3. 「コピー」を選択して、マウント・コマンドをクリップボードにコピーします。

ファイルシステムのマウント

前のステップで、クリップボードにコピーしたマウント・コマンドをインスタンスから実行します。たとえば:

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