Install prebuilt Lustre client software

In this article, you learn how to download and install a Lustre client package. Once installed, you can set up client VMs and attach them to an Azure Managed Lustre cluster. Select an operating system version to see the instructions.

If you need to upgrade an existing Lustre client to the current version, see Upgrade a Lustre client to the current version.

For more information on connecting clients to a cluster, see Connect clients to an Azure Managed Lustre file system.

Upgrade client software

This tutorial shows how to install the client package to set up client VMs running AlmaLinux HPC 8.6, and attach them to an Azure Managed Lustre cluster.

The instructions apply to client VMs running:

  • AlmaLinux HPC 8.6

Install client software for Red Hat Enterprise Linux 7

This tutorial shows how to install the client package to set up client VMs running RHEL 7, and attach them to an Azure Managed Lustre cluster.

The instructions apply to client VMs running:

  • Red Hat Enterprise Linux 7 (RHEL 7)

Install client software for Red Hat Enterprise Linux or AlmaLinux 8

This tutorial shows how to install the client package to set up client VMs running RHEL 8 or Alma 8, and attach them to an Azure Managed Lustre cluster.

The instructions apply to client VMs running:

  • Red Hat Enterprise Linux 8 (RHEL 8)
  • Alma Linux 8

Note

For AlmaLinux 8.6 HPC Marketplace images, see the separate Alma 8.6 HPC install instructions.

Install client software for Red Hat Enterprise Linux 9

This tutorial shows how to install the client package to set up client VMs running RHEL 9, and attach them to an Azure Managed Lustre cluster.

The instructions apply to client VMs running:

  • Red Hat Enterprise Linux 9 (RHEL 9)

Install client software for Ubuntu 18.04

This tutorial shows how to install the client package to set up client VMs running Ubuntu 18.04, and attach them to an Azure Managed Lustre cluster.

The instructions apply to client VMs running:

  • Ubuntu 18.04

Install client software for Ubuntu 20.04

This tutorial shows how to install the client package to set up client VMs running Ubuntu 20.04, and attach them to an Azure Managed Lustre cluster.

The instructions apply to client VMs running:

  • Ubuntu 20.04

Install client software for Ubuntu 22.04

This tutorial shows how to install the client package to set up client VMs running Ubuntu 22.04, and attach them to an Azure Managed Lustre cluster.

The instructions apply to client VMs running:

  • Ubuntu 22.04

Download and install prebuilt client software

Warning

These instructions only apply to the AlmaLinux 8.6 HPC marketplace images. For all other AlmaLinux 8 installs, including HPC and general marketplace, refer to Red Hat 8 instructions.

  1. Install and configure the Azure Managed Lustre repository for the DNF package manager. Create the following script and name it repo.bash:

    #!/bin/bash
    set -ex
    
    rpm --import https://packages.microsoft.com/keys/microsoft.asc
    
    DISTRIB_CODENAME=el8
    
    REPO_PATH=/etc/yum.repos.d/amlfs.repo
    echo -e "[amlfs]" > ${REPO_PATH}
    echo -e "name=Azure Lustre Packages" >> ${REPO_PATH}
    echo -e "baseurl=https://packages.microsoft.com/yumrepos/amlfs-${DISTRIB_CODENAME}" >> ${REPO_PATH}
    echo -e "enabled=1" >> ${REPO_PATH}
    echo -e "gpgcheck=1" >> ${REPO_PATH}
    echo -e "gpgkey=https://packages.microsoft.com/keys/microsoft.asc" >> ${REPO_PATH}
    
  2. Execute script as super-user:

    sudo bash repo.bash
    
  3. Install the metapackage that matches your running kernel:

    sudo dnf install --disableexcludes=main --refresh amlfs-lustre-client-2.15.4_42_gd6d405d-$(uname -r | sed -e "s/\.$(uname -p)$//" | sed -re 's/[-_]/\./g')-1
    

    Note

    The metapackage version does not always align with the kernel version. Use the install command above to install the proper metapackage.

    If you want to upgrade only the kernel and not all packages, you must, at minimum, also upgrade the amlfs-lustre-client metapackage in order for the Lustre client to continue to work after the reboot. The command should look similar to the following example:

    export NEWKERNELVERSION=6.7.8
    sudo dnf upgrade kernel-$NEWKERNELVERSION amlfs-lustre-client-2.15.4_42_gd6d405d-$(echo $NEWKERNELVERSION | sed -e "s/\.$(uname -p)$//" | sed -re 's/[-_]/\./g')-1
    
  1. Install and configure the Azure Managed Lustre repository for the YUM package manager. Create the following script and name it repo.bash:

    #!/bin/bash
    set -ex
    
    rpm --import https://packages.microsoft.com/keys/microsoft.asc
    
    DISTRIB_CODENAME=el7
    
    REPO_PATH=/etc/yum.repos.d/amlfs.repo
    echo -e "[amlfs]" > ${REPO_PATH}
    echo -e "name=Azure Lustre Packages" >> ${REPO_PATH}
    echo -e "baseurl=https://packages.microsoft.com/yumrepos/amlfs-${DISTRIB_CODENAME}" >> ${REPO_PATH}
    echo -e "enabled=1" >> ${REPO_PATH}
    echo -e "gpgcheck=1" >> ${REPO_PATH}
    echo -e "gpgkey=https://packages.microsoft.com/keys/microsoft.asc" >> ${REPO_PATH}
    
  2. Execute script as super-user:

    sudo bash repo.bash
    
  3. Install the metapackage that matches your running kernel:

    sudo yum install amlfs-lustre-client-2.15.4_42_gd6d405d-$(uname -r | sed -e "s/\.$(uname -p)$//" | sed -re 's/[-_]/\./g')-1
    

    Note

    The metapackage version does not always align with the kernel version. Use the install command above to install the proper metapackage.

    If you want to upgrade only the kernel and not all packages, you must, at minimum, also upgrade the amlfs-lustre-client metapackage in order for the Lustre client to continue to work after the reboot. The command should look similar to the following example:

    export NEWKERNELVERSION=6.7.8
    sudo yum upgrade kernel-$NEWKERNELVERSION amlfs-lustre-client-2.15.4_42_gd6d405d-$(echo $NEWKERNELVERSION | sed -e "s/\.$(uname -p)$//" | sed -re 's/[-_]/\./g')-1
    
  1. Install and configure the Azure Managed Lustre repository for the DNF package manager. Create the following script and name it repo.bash:

    #!/bin/bash
    set -ex
    
    rpm --import https://packages.microsoft.com/keys/microsoft.asc
    
    DISTRIB_CODENAME=el8
    
    REPO_PATH=/etc/yum.repos.d/amlfs.repo
    echo -e "[amlfs]" > ${REPO_PATH}
    echo -e "name=Azure Lustre Packages" >> ${REPO_PATH}
    echo -e "baseurl=https://packages.microsoft.com/yumrepos/amlfs-${DISTRIB_CODENAME}" >> ${REPO_PATH}
    echo -e "enabled=1" >> ${REPO_PATH}
    echo -e "gpgcheck=1" >> ${REPO_PATH}
    echo -e "gpgkey=https://packages.microsoft.com/keys/microsoft.asc" >> ${REPO_PATH}
    
  2. Execute script as super-user:

    sudo bash repo.bash
    
  3. Install the metapackage that matches your running kernel:

    sudo dnf install amlfs-lustre-client-2.15.4_42_gd6d405d-$(uname -r | sed -e "s/\.$(uname -p)$//" | sed -re 's/[-_]/\./g')-1
    

    Note

    The metapackage version does not always align with the kernel version. Use the install command above to install the proper metapackage.

    If you want to upgrade only the kernel and not all packages, you must, at minimum, also upgrade the amlfs-lustre-client metapackage in order for the Lustre client to continue to work after the reboot. The command should look similar to the following example:

    export NEWKERNELVERSION=6.7.8
    sudo dnf upgrade kernel-$NEWKERNELVERSION amlfs-lustre-client-2.15.4_42_gd6d405d-$(echo $NEWKERNELVERSION | sed -e "s/\.$(uname -p)$//" | sed -re 's/[-_]/\./g')-1
    
  1. Install and configure the Azure Managed Lustre repository for the DNF package manager. Create the following script and name it repo.bash:

    #!/bin/bash
    set -ex
    
    rpm --import https://packages.microsoft.com/keys/microsoft.asc
    
    DISTRIB_CODENAME=el9
    
    REPO_PATH=/etc/yum.repos.d/amlfs.repo
    echo -e "[amlfs]" > ${REPO_PATH}
    echo -e "name=Azure Lustre Packages" >> ${REPO_PATH}
    echo -e "baseurl=https://packages.microsoft.com/yumrepos/amlfs-${DISTRIB_CODENAME}" >> ${REPO_PATH}
    echo -e "enabled=1" >> ${REPO_PATH}
    echo -e "gpgcheck=1" >> ${REPO_PATH}
    echo -e "gpgkey=https://packages.microsoft.com/keys/microsoft.asc" >> ${REPO_PATH}
    
  2. Execute script as super-user:

    sudo bash repo.bash
    
  3. Install the metapackage that matches your running kernel:

    sudo dnf install amlfs-lustre-client-2.15.4_42_gd6d405d-$(uname -r | sed -e "s/\.$(uname -p)$//" | sed -re 's/[-_]/\./g')-1
    

    Note

    The metapackage version does not always align with the kernel version. Use the install command above to install the proper metapackage.

    If you want to upgrade only the kernel and not all packages, you must, at minimum, also upgrade the amlfs-lustre-client metapackage in order for the Lustre client to continue to work after the reboot. The command should look similar to the following example:

    export NEWKERNELVERSION=6.7.8
    sudo dnf upgrade kernel-$NEWKERNELVERSION amlfs-lustre-client-2.15.4_42_gd6d405d-$(echo $NEWKERNELVERSION | sed -e "s/\.$(uname -p)$//" | sed -re 's/[-_]/\./g')-1
    

Caution

Ubuntu 18.04 LTS reached the end of Standard Support on May 31, 2023. Microsoft recommends either migrating to the next Ubuntu LTS release or upgrading to Ubuntu Pro to gain access to extended security and maintenance from Canonical. For more information, see the announcement.

  1. Ensure you have Ubuntu Pro activated and are on the recommended 5.4 kernel, which is provided by the linux-image-azure metapackage:

    apt list --installed linux-image*
    
  2. Install and configure the Azure Managed Lustre repository for the APT package manager. Create the following script and name it repo.bash:

    #!/bin/bash
    set -ex
    
    apt update && apt install -y ca-certificates curl apt-transport-https lsb-release gnupg
    source /etc/lsb-release
    echo "deb [arch=amd64] https://packages.microsoft.com/repos/amlfs-${DISTRIB_CODENAME}/ ${DISTRIB_CODENAME} main" | tee /etc/apt/sources.list.d/amlfs.list
    curl -sL https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor | tee /etc/apt/trusted.gpg.d/microsoft.gpg > /dev/null
    
    apt update
    
  3. Execute script as a super-user:

    sudo bash repo.bash
    
  4. Install the metapackage that matches your running kernel:

    sudo apt install amlfs-lustre-client-2.15.4-42-gd6d405d=$(uname -r)
    

    Note

    This command installs a metapackage that will keep the version of Lustre aligned with the installed kernel. In order for this to work, you must use apt full-upgrade instead of simply apt upgrade when updating your system.

    Optionally, if you want to upgrade only the kernel (and not all packages), you must, at minimum, also upgrade the amlfs-lustre-client metapackage in order for the Lustre client to continue to work after the reboot. The command should look similar to the following example:

    apt upgrade linux-image-[new kernel version] amlfs-lustre-client-2.15.4-42-gd6d405d
    
  1. Install and configure the Azure Managed Lustre repository for the APT package manager. Create the following script and name it repo.bash:

    #!/bin/bash
    set -ex
    
    apt update && apt install -y ca-certificates curl apt-transport-https lsb-release gnupg
    source /etc/lsb-release
    echo "deb [arch=amd64] https://packages.microsoft.com/repos/amlfs-${DISTRIB_CODENAME}/ ${DISTRIB_CODENAME} main" | tee /etc/apt/sources.list.d/amlfs.list
    curl -sL https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor | tee /etc/apt/trusted.gpg.d/microsoft.gpg > /dev/null
    
    apt update
    
  2. Execute script as a super-user:

    sudo bash repo.bash
    
  3. Install the metapackage that matches your running kernel:

    sudo apt install amlfs-lustre-client-2.15.4-42-gd6d405d=$(uname -r)
    

    Note

    This command installs a metapackage that will keep the version of Lustre aligned with the installed kernel. In order for this to work, you must use apt full-upgrade instead of simply apt upgrade when updating your system.

    Optionally, if you want to upgrade only the kernel (and not all packages), you must, at minimum, also upgrade the amlfs-lustre-client metapackage in order for the Lustre client to continue to work after the reboot. The command should look similar to the following example:

    apt upgrade linux-image-[new kernel version] amlfs-lustre-client-2.15.4-42-gd6d405d
    

Important

The Azure Marketplace image for the Ubuntu 22.04 LTS release uses the Hardware Enablement (HWE) kernel by default. However, these kernels are only supported for 6 month periods, and Lustre support for these kernels is often not available when they're released. Therefore, we recommend that you switch to the LTS kernel because it gives you more stability as well as maintains a kernel version that is supported with the Lustre Client.

  1. Install the LTS kernel metapackage.

    sudo apt update && sudo apt install linux-image-azure-lts-22.04
    
  2. Remove the HWE kernel metapackage.

    Remove the default (Hardware Enablement) kernel metapackage. It will also ask to remove the linux-azure metapackage. This is expected.

    sudo apt remove linux-image-azure
    
  3. List installed kernels and see which one is supplied by the LTS metapackage.

    After the metadata package is removed, check to see what kernels are currently installed. Newly provisioned hosts will have two kernels and older hosts might have more. Compare the version that the LTS metapackage provides against the other installed kernels. Here you see that a 6.2 kernel is still installed previously from the linux-image-azure metapackage.

    apt list --installed linux-image*
    
  4. Remove any kernels newer than the one mentioned in the LTS metapackage.

    You'll receive a warning about removing the kernel, but these steps work if you're following them on a newly provisioned host. However, if you have concerns, consult Ubuntu documentation on configuring kernels to ensure it's able to boot after a reboot.

    sudo apt remove linux-image-5.15.0-1053-azure
    
  5. Verify that you don't have kernels newer than the one mentioned in the LTS metapackage.

    apt list --installed linux-image*
    
  6. Reboot to load the LTS kernel.

  7. Install and configure the Azure Managed Lustre repository for the APT package manager. Create the following script and name it repo.bash:

    #!/bin/bash
    set -ex
    
    apt update && apt install -y ca-certificates curl apt-transport-https lsb-release gnupg
    source /etc/lsb-release
    echo "deb [arch=amd64] https://packages.microsoft.com/repos/amlfs-${DISTRIB_CODENAME}/ ${DISTRIB_CODENAME} main" | tee /etc/apt/sources.list.d/amlfs.list
    curl -sL https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor | tee /etc/apt/trusted.gpg.d/microsoft.gpg > /dev/null
    
    apt update
    
  8. Execute script as a super-user:

    sudo bash repo.bash
    
  9. Install the metapackage that matches your running kernel:

    sudo apt install amlfs-lustre-client-2.15.4-42-gd6d405d=$(uname -r)
    

    Note

    This command installs a metapackage that will keep the version of Lustre aligned with the installed kernel. In order for this to work, you must use apt full-upgrade instead of simply apt upgrade when updating your system.

    Optionally, if you want to upgrade only the kernel (and not all packages), you must, at minimum, also upgrade the amlfs-lustre-client metapackage in order for the Lustre client to continue to work after the reboot. The command should look similar to the following example:

    apt upgrade linux-image-[new kernel version] amlfs-lustre-client-2.15.4-42-gd6d405d
    

Next steps