Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Create a user build with the home directory /home/build

    Code Block
    # useradd -m build
    
  2. Switch to the user build and change to the build $HOME directory.

    Code Block
    # su build
    $ cd $HOME
    
  3. Get the MASTER branch from HPDD git.

    Code Block
    $ git clone git://git.hpdd.intel.com/fs/lustre-release.git
    $ cd lustre-release
    
  4. Run sh ./autogen.sh
  5. Resolve any outstanding dependencies until autogen.sh completes successfully. Success will look like:

    Code Block
    $ sh ./autogen.sh
    configure.ac:10: installing 'config/config.guess'
    configure.ac:10: installing 'config/config.sub'
    configure.ac:12: installing 'config/install-sh'
    configure.ac:12: installing 'config/missing'
    libcfs/libcfs/autoMakefile.am: installing 'config/depcomp'
    $

Prepare

...

ZFS for Lustre

  1. Get SPL and ZFS from github

    Code Block
    $ cd $HOME 
    $ git clone https://github.com/zfsonlinux/spl.git
    $ git clone https://github.com/zfsonlinux/zfs.git
    $
    $ cd spl
    $ ./autogen.sh
    $ cd ../zfs
    $ ./autogen.sh
    $ cd $HOME
  2. Build SPL for kABI-tracking kmod

    Code Block
    $ cd $HOME/spl
    $ ./configure --with-spec=redhat
    $ make pkg-utils pkg-kmod

    This will end with:

    Code Block
    ...
    ...
    Checking for unpackaged file(s): /usr/lib/rpm/check-files /tmp/spl-build-build-FxdXBfej/BUILDROOT/spl-kmod-0.7.0-rc3.el7.centos.x86_64
    Wrote: /tmp/spl-build-build-FxdXBfej/RPMS/x86_64/kmod-spl-0.7.0-rc3.el7.centos.x86_64.rpm
    Wrote: /tmp/spl-build-build-FxdXBfej/RPMS/x86_64/kmod-spl-devel-0.7.0-rc3.el7.centos.x86_64.rpm
    Wrote: /tmp/spl-build-build-FxdXBfej/RPMS/x86_64/spl-kmod-debuginfo-0.7.0-rc3.el7.centos.x86_64.rpm
    Executing(%clean): /bin/sh -e /tmp/spl-build-build-FxdXBfej/TMP/rpm-tmp.NhMrJh
    + umask 022
    + cd /tmp/spl-build-build-FxdXBfej/BUILD
    + cd spl-0.7.0
    + rm -rf /tmp/spl-build-build-FxdXBfej/BUILDROOT/spl-kmod-0.7.0-rc3.el7.centos.x86_64
    + exit 0
    Executing(--clean): /bin/sh -e /tmp/spl-build-build-FxdXBfej/TMP/rpm-tmp.FDCzZG
    + umask 022
    + cd /tmp/spl-build-build-FxdXBfej/BUILD
    + rm -rf spl-0.7.0
    + exit 0

    At this point you should have SPL package in ~build/spl

  3. Install the SPL packages. They are required dependencies to build zfs

    Code Block
    As root, go to ~build/spl and install the packages
    # yum -y localinstall *.x86_64.rpm
  4. Build ZFS

    Code Block
    $ su build
    $ cd $HOME/zfs
    $ ./configure --with-spec=redhat
    $ make pkg-utils pkg-kmod

    This will end with:

    Code Block
    ...
    ...
     
  5. b

You can have different ways to prepare a patched kernel for Lustre. The easier method is to download built RPM packages from build.hpdd.intel.com. For example, if you're running el7, you should download the packages from here: https://build.hpdd.intel.com/view/Non-Reviews/job/lustre-master/arch=x86_64,build_type=server,distro=el7,ib_stack=inkernel/lastSuccessfulBuild/artifact/artifacts/RPMS/x86_64/ at the time when this page is written. You're going to need the packages starting with 'kernel-'. After new kernel packages are downloaded, you can skip the following few steps and go to the section 'Installing the Lustre kernel and rebooting'.

...