CentOS Installation

Table of Contents

1 [2015-01] Installation of test client with FAI + CentOS 6

Installation of a test client with FAI just requires the CentOS-basefiles from http://fai-project.org/download/basefiles/ and a few adjustments to the upstream and to our config scripts.

  • On a test fai-server installation (lxfaitest3), the variable AINSL_TARGET was set to $target.
  • However, most scripts still specify the target explicitly: ainsl $target/etc/..., which results in errors due to non-existing paths /target/target/etc/...
    • Put AINSL_TARGET (empty) to class/FAIBASE.var
  • $target is then missing in scripts/CENTOS/60-network-scripts

It is not tested if this was at all necessary on lxfaitest2, but wth.

  • In class/50-host-classes, the centos stanza is expanded to centos|clx*) to give the clients names such as clxtest01.gsi.de
  • In class/55-gsi-classes.source, a second case-statement is added to group all general class definitions that only apply to Debian clients:
case $HOSTNAME in
    lx*|l3-??)
        class_add `lsb_release -cs | tr 'a-z' 'A-Z'` # will define ETCH, LENNY, ...
        if ! ifclass GSI_NFSROOT; then
            ifclass -o I386 AMD64 && echo GRUB_PC
        fi
        ;;
esac
  • For installation in inaccessible VLANs, a line is added to hooks/repository.CENTOS:
ainsl $target/etc/yum.conf "proxy=http://lxproxy01.gsi.de:3128"
  • The installation puts the correct info into /etc/sysconfig/network-scripts/ifcfg-eth0 and /etc/sysconfig/network.
  • yum groupinstall base still wants to install 136 packages, although with this installation, some man pages are already present.
  • Packages ntp.x86_64 and emacs-nox have to be installed.
  • On lxfs102 aka clxtest02, installation of ipmitool.x86\64, OpenIPMI.x86\64, freeipmi.x86\64 works,
    • Load kernel module ipmi\devintf: /dev/ipmi0 exists afterwards
      • Write to /etc/sysconfig/modules/ipmi.modules:
#!/bin/bash
modprobe ipmi_devintf
modporbe ipmi_si
  • However, output to the serial console seems to be switched off.

1.1 GSI-FAI package lists

Checking the packages in GSI_CORE, GSI_FILESERVER, IB shows a number of packages with identical names. A number of packages has obvious pendants in CentOS, some others cannot be easily identified. Certainly not all packages are relevant for this CentOS-Lustre case.

2 [2017-07-10 Mon] Installation of lxfs419 with kickstart, CentOS 7

Installation works out of the box.

  • Since the installation device /dev/sda had been used before, kickstart becomes interactive and complains about too little space - it wants to preserve the existing installation.
    • The menu gives the possibilty to overwrite the old system.

After reboot, it takes quite some time until the network is up.

2.1 Chef

knife bootstrap

does not work from lxdv84 due to old chef versions etc.

The validation.pem distributed by FAI fits, but not the FAI-client.rb. Instead use a simpler version (also in chef/roles/development/cluster/virgo/executionnode.rb)

chef_server_url  "https://chef.hpc.gsi.de"
log_location     STDOUT
log_level        :fatal
ssl_verify_mode  :verify_none

Thus, create /etc/chef/ with these two files, then run chef-client.

2.2 Missing packages

The following packages are added to the default installation (lxmgmt5:/srv/http/centos/kickstart/default.cfg):

  • ibutils.x86_64
  • infiniband-diags.x86_64
  • emacs.x86_64

Perhaps the option --excludedocs should be dropped from default.cfg? (No man pages in installed system)

2.2.1 Version control of installation configs?

lxmgmt5:/srv/http does not show any traces of a .git directory, nor is a command like git status successful anywhere.

  • Surely these config files should be under version control?

2.2.2 Missing packages

The default yum repository does not have joe! What a desaster! Find it on https://centos.pkgs.org/7/epel-x86_64/joe-3.7-11.el7.x86_64.rpm.html and install locally by

rpm -ihv ./joe-3.7-11.el7.x86_64.rpm

2.3 Grub

https://wiki.centos.org/HowTos/Grub2 seems to give some good hints concerning grub.

2.4 Multipath

Install device-mapper-multipath.x86_64.

To run multipath, load the module, modprobe -v dm_multipath, create an /etc/multipath.conf by copying the file from lxfs410, and start it systemctl start multipathd.

  • The blacklist_exceptions segment of multipath.conf contains the key word property which is not understood.
  • Remove it to get
defaults {
     user_friendly_names yes
     bindings_file /etc/multipath/bindings
     path_grouping_policy failover
}
blacklist {
     devnode "^sda[0-9]*$"
}

2.5 Nyx OSS disk mapping

To create the Nyx OSS disk mapping, install

  • ruby.x8664
  • sg3utils.x8664

Copy Benny's files to the server:

troth@lxdv84:~/git/nyx-oss-udev/sbin$ scp update-nyx-oss-disk-map root@lxfs419:/usr/sbin/
troth@lxdv84:~/git/nyx-oss-udev/udev$ scp nyx_oss_diskid root@lxfs419:/lib/udev/nyx_oss_diskid
troth@lxdv84:~/git/nyx-oss-udev/udev/rules.d$ scp 69-nyx-oss-disk.rules root@lxfs419:/etc/udev/rules.d/

Run the usual:

[root@lxfs419 ]# /usr/sbin/update-nyx-oss-disk-map
[root@lxfs419 ]# udevadm trigger --action=add
[root@lxfs419 ]# udevadm settle

Looks good:

[root@lxfs419 ~]# ls /dev/disk/by-location/
0-0-10  0-0-19  0-0-7  0-1-6   1-0-13  1-0-3  1-1-10  1-1-19  encb0   encb17  encb8   encf15  encf5  srvb4   srvf13  srvf21
0-0-11  0-0-2   0-0-8  0-1-7   1-0-14  1-0-4  1-1-11  1-1-2   encb1   encb18  encb9   encf16  encf6  srvb5   srvf14  srvf22
0-0-12  0-0-20  0-0-9  0-1-8   1-0-15  1-0-5  1-1-12  1-1-3   encb10  encb19  encf0   encf17  encf7  srvb6   srvf15  srvf3
0-0-13  0-0-21  0-1-0  0-1-9   1-0-16  1-0-6  1-1-13  1-1-4   encb11  encb2   encf1   encf18  encf8  srvb7   srvf16  srvf4
0-0-14  0-0-22  0-1-1  1-0-0   1-0-17  1-0-7  1-1-14  1-1-5   encb12  encb3   encf10  encf19  encf9  srvb8   srvf17  srvf5
0-0-15  0-0-3   0-1-2  1-0-1   1-0-18  1-0-8  1-1-15  1-1-6   encb13  encb4   encf11  encf2   srvb0  srvb9   srvf18  srvf6
0-0-16  0-0-4   0-1-3  1-0-10  1-0-19  1-0-9  1-1-16  1-1-7   encb14  encb5   encf12  encf20  srvb1  srvf10  srvf19  srvf7
0-0-17  0-0-5   0-1-4  1-0-11  1-0-2   1-1-0  1-1-17  1-1-8   encb15  encb6   encf13  encf3   srvb2  srvf11  srvf2   srvf8
0-0-18  0-0-6   0-1-5  1-0-12  1-0-20  1-1-1  1-1-18  1-1-9   encb16  encb7   encf14  encf4   srvb3  srvf12  srvf20  srvf9

2.6 Create simple rpm package

To put Benny's nyx-oss-udev into a rpm, just use fpm, directory-to-rpm:

  • Create /tmp/nyx-oss-udev with the target directories as subdirectories, and copy the three files to their targets:
troth@lxdv84:~$ ls -lR /tmp/nyx-oss-udev
/tmp/nyx-oss-udev:
total 0
drwxr-xr-x 3 troth hpc 17 Jul 14 18:29 etc
drwxr-xr-x 3 troth hpc 17 Jul 14 18:29 lib
drwxr-xr-x 3 troth hpc 17 Jul 14 18:28 usr

/tmp/nyx-oss-udev/etc:
total 0
drwxr-xr-x 3 troth hpc 20 Jul 14 18:29 udev

/tmp/nyx-oss-udev/etc/udev:
total 0
drwxr-xr-x 2 troth hpc 34 Jul 14 18:29 rules.d

/tmp/nyx-oss-udev/etc/udev/rules.d:
total 4
-rw-r--r-- 1 troth hpc 382 Jul 14 18:29 69-nyx-oss-disk.rules

/tmp/nyx-oss-udev/lib:
total 0
drwxr-xr-x 2 troth hpc 27 Jul 14 18:29 udev

/tmp/nyx-oss-udev/lib/udev:
total 4
-rwxr-xr-x 1 troth hpc 1486 Jul 14 18:29 nyx_oss_diskid

/tmp/nyx-oss-udev/usr:
total 0
drwxr-xr-x 2 troth hpc 36 Jul 14 18:28 sbin

/tmp/nyx-oss-udev/usr/sbin:
total 8
-rwxr-xr-x 1 troth hpc 5347 Jul 14 18:28 update-nyx-oss-disk-map

The run fpm

fpm -s dir -t rpm -C /tmp/nyx-oss-udev --name nyx-oss-udev --version 1.0.0 --iteration 1  --description "nys-oss-udev"

The resulting nyx-oss-udev-1.0.0-1.x86_64.rpm is rpm-installable on lxfs419.

2.7 yum, repositories, …

  • To install Lustre packages, the newest release is downloaded from https://downloads.hpdd.intel.com .
  • The desired parts of that release are copied to the mirror, creating lxrpt2:/srv/centos/lustre-repository/lustre-2.10.0/el7.3.1611/server and lxrpt2:/srv/centos/lustre-repository/lustre-2.10.0/el7.3.1611/client.
  • The subdir repodata already exists upstream, but createrepo --update $PWD in the server or client directory overwrites these.

In the Chef role for Hebe OSS, centoss.rb, the following yum.repos.d/ config is sufficient

'/etc/yum.repos.d/lustre-server.repo' => {
  content: '
    [lustre-server]
    name = lustre-server
    baseurl = http://mirror.gsi.de/centos/lustre-repository/lustre-2.10.0/el7.3.1611/server
    enabled = 1
    gpgcheck = 0
  '
},

The name lustre-server appears only here, not on the mirror. Nevertheless, yum repolist shows gsi-mirror, gsi-repo, and lustre-server.

  • After addition of the lustre-server repo, yum update installs
Installing:
 kernel                         x86_64              3.10.0-514.21.1.el7_lustre               lustre-server               37 M
Updating:
 kernel-tools                   x86_64              3.10.0-514.21.1.el7_lustre               lustre-server              4.0 M
 kernel-tools-libs              x86_64              3.10.0-514.21.1.el7_lustre               lustre-server              3.9 M
 python-perf                    x86_64              3.10.0-514.21.1.el7_lustre               lustre-server              4.0 M
  • Installation of lustre.x86_64 (contains the utilities) fails because amongst others, kmod-lustre-osd-ldiskfs-2.10.0-1.el7.x86_64 is a dependency, and this requires ldiskfsprogs.

Of course, on an OSS we don't want ldiskfs.

2.8 ZFS

Installation of ZFS follows https://github.com/zfsonlinux/zfs/wiki/RHEL-&-CentOS.

yum install http://download.zfsonlinux.org/epel/zfs-release.el7_3.noarch.rpm

  • Add the gpg key for zfsonlinux
gpg --quiet --with-fingerprint /etc/pki/rpm-gpg/RPM-GPG-KEY-zfsonlinux

yum install https://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-10.noarch.rpm

  • yum repolist now reads
Loaded plugins: fastestmirror
epel/x86_64/metalink                                                                                   |  23 kB  00:00:00     
epel                                                                                                   | 4.3 kB  00:00:00     
(1/3): epel/x86_64/updateinfo                                                                          | 791 kB  00:00:00     
(2/3): epel/x86_64/group_gz                                                                            | 170 kB  00:00:00     
(3/3): epel/x86_64/primary_db                                                                          | 4.8 MB  00:00:00     
Loading mirror speeds from cached hostfile
 * epel: epel.besthosting.ua
repo id                                    repo name                                                                    status
epel/x86_64                                Extra Packages for Enterprise Linux 7 - x86_64                               11,888
gsi-mirror                                 gsi-mirror                                                                    9,363
gsi-repo                                   gsi-repo                                                                        0+2
lustre-server                              lustre-server                                                                  25+3
zfs/x86_64                                 ZFS on Linux for EL7 - dkms                                                      54
repolist: 21,330
  • The option --enablerepo=epel mentioned on the tecmint-webpage seems to be enabled by default.
  • Install dkms now works
yum --enablerepo=epel install dkms

==============================================================================================================================
 Package                     Arch                Version                                     Repository                  Size
==============================================================================================================================
Installing:
 dkms                        noarch              2.3-5.20170523git8c3065c.el7                epel                        78 k
Installing for dependencies:
 cpp                         x86_64              4.8.5-11.el7                                gsi-mirror                 5.9 M
 gcc                         x86_64              4.8.5-11.el7                                gsi-mirror                  16 M
 glibc-devel                 x86_64              2.17-157.el7                                gsi-mirror                 1.1 M
 glibc-headers               x86_64              2.17-157.el7                                gsi-mirror                 668 k
 kernel-devel                x86_64              3.10.0-514.21.1.el7_lustre                  lustre-server               19 M
 kernel-headers              x86_64              3.10.0-514.21.1.el7_lustre                  lustre-server              4.8 M
 libmpc                      x86_64              1.0.1-3.el7                                 gsi-mirror                  51 k
 mpfr                        x86_64              3.1.1-4.el7                                 gsi-mirror                 203 k
  • The gpg key file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 has a matching fingerprint and is imported.
yum install kernel-devel zfs

==============================================================================================================================
 Package                      Arch                     Version                                    Repository             Size
==============================================================================================================================
Installing:
 zfs                          x86_64                   0.6.5.11-1.el7.centos                      zfs                   337 k
Installing for dependencies:
 libnvpair1                   x86_64                   0.6.5.11-1.el7.centos                      zfs                    40 k
 libuutil1                    x86_64                   0.6.5.11-1.el7.centos                      zfs                    46 k
 libzfs2                      x86_64                   0.6.5.11-1.el7.centos                      zfs                   128 k
 libzpool2                    x86_64                   0.6.5.11-1.el7.centos                      zfs                   423 k
 spl                          x86_64                   0.6.5.11-1.el7.centos                      zfs                    30 k
 spl-dkms                     noarch                   0.6.5.11-1.el7.centos                      zfs                   444 k
 zfs-dkms                     noarch                   0.6.5.11-1.el7.centos                      zfs                   1.9 M
yum install lustre-osd-zfs-mount.x86_64

==============================================================================================================================
 Package                              Arch                   Version                      Repository                     Size
==============================================================================================================================
Installing:
 lustre-osd-zfs-mount                 x86_64                 2.10.0-1.el7                 lustre-server                  10 k
yum install lustre-dkms.noarch

==============================================================================================================================
 Package                       Arch                     Version                         Repository                       Size
==============================================================================================================================
Installing:
 lustre-dkms                   noarch                   2.10.0-1.el7                    lustre-server                    13 M
Installing for dependencies:
 expect                        x86_64                   5.45-14.el7_1                   gsi-mirror                      262 k
yum install kmod-lustre.x86_64

==============================================================================================================================
 Package                       Arch                     Version                         Repository                       Size
==============================================================================================================================
Installing:
 kmod-lustre                   x86_64                   2.10.0-1.el7                    lustre-server                   3.7 M
yum install lustre.x86_64

==============================================================================================================================
 Package                        Arch              Version                                      Repository                Size
==============================================================================================================================
Installing:
 lustre                         x86_64            2.10.0-1.el7                                 lustre-server            738 k
Installing for dependencies:
 libyaml                        x86_64            0.1.4-11.el7_0                               gsi-mirror                55 k
 lm_sensors-libs                x86_64            3.4.0-4.20160601gitf9185e5.el7               gsi-mirror                41 k
 net-snmp-agent-libs            x86_64            1:5.7.2-24.el7_2.1                           gsi-mirror               702 k
 net-snmp-libs                  x86_64            1:5.7.2-24.el7_2.1                           gsi-mirror               747 k

2.9 zfs module

Although the zfs packages seem to have installed without problems, zpool cannot execute because the module zfs is not loaded, and modprobe zfs does not find the module.

  • First of all, reboot, to get the kernel 3.10.0-514.21.1.el7_lustre.x86_64 running.
  • Still Module zfs not found.
  • Check the modules directory:
[root@lxfs419 3.10.0-514.21.1.el7_lustre.x86_64]# pwd
/lib/modules/3.10.0-514.21.1.el7_lustre.x86_64
[root@lxfs419 3.10.0-514.21.1.el7_lustre.x86_64]# ls
build          modules.alias.bin    modules.dep      modules.modesetting  modules.symbols      vdso
extra          modules.block        modules.dep.bin  modules.networking   modules.symbols.bin  weak-updates
kernel         modules.builtin      modules.devname  modules.order        source
modules.alias  modules.builtin.bin  modules.drm      modules.softdep      updates

[root@lxfs419 3.10.0-514.21.1.el7_lustre.x86_64]# find . -name "*zfs*"

[root@lxfs419 3.10.0-514.21.1.el7_lustre.x86_64]# find . -name "*lustre*"
./extra/lustre
./extra/lustre/fs/lustre.ko

[root@lxfs419 weak-updates]# cd ../extra/
[root@lxfs419 extra]# ls
lustre  splat.ko  spl.ko  zavl.ko  zcommon.ko  zfs.ko  znvpair.ko  zpios.ko  zunicode.ko
[root@lxfs419 extra]# modinfo ./zfs.ko 
filename:       /lib/modules/3.10.0-514.21.1.el7_lustre.x86_64/extra/./zfs.ko
...
  • So the module file is there, actually. Perhaps run depmod?
[root@lxfs419 extra]# yum search depmod
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * epel: epel.besthosting.ua
Warning: No matches found for: depmod
No matches found
  • So, CentOS does not need depmod?
  • Check modprobe:
[root@lxfs419 extra]# man modprobe
No manual entry for modprobe
  • Right, CentOS also does not need man pages by default.
    • Reinstallation of a package usually installs its manpages, too.
yum whatprovides /usr/sbin/modprobe
kmod-20-9.el7.x86_64

yum reinstall kmod-20-9.el7.x86_64

  • Man page of modprobe is now installed but says nothing.
  • According to the web, depmod comes with the package module-init-tools
[root@lxfs419 extra]# yum install module-init-tools
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * epel: epel.besthosting.ua
Package kmod-20-9.el7.x86_64 already installed and latest version
Nothing to do
  • So what? Already installed?
[root@lxfs419 extra]# depmod --help
Usage:
	depmod -[aA] [options] [forced_version]
...
  • WFT?
[root@lxfs419 3.10.0-514.21.1.el7_lustre.x86_64]# pwd
/lib/modules/3.10.0-514.21.1.el7_lustre.x86_64
[root@lxfs419 3.10.0-514.21.1.el7_lustre.x86_64]# ls
build          modules.alias.bin    modules.dep      modules.modesetting  modules.symbols      vdso
extra          modules.block        modules.dep.bin  modules.networking   modules.symbols.bin  weak-updates
kernel         modules.builtin      modules.devname  modules.order        source
modules.alias  modules.builtin.bin  modules.drm      modules.softdep      updates
[root@lxfs419 3.10.0-514.21.1.el7_lustre.x86_64]# find . -name *zfs*
./extra/zfs.ko
[root@lxfs419 3.10.0-514.21.1.el7_lustre.x86_64]# modprobe -v zfs
insmod /lib/modules/3.10.0-514.21.1.el7_lustre.x86_64/kernel/lib/zlib_deflate/zlib_deflate.ko 
...
  • Basically, reinstallation of kmod-20-9.el7.x86_64 has triggered (creation?,) existence and loadability of zfs.
  • Creation of a zpool works as in Debian.

2.10 ZFS 2

To avoid the conflict that showed up later with building the osd-zfs module, where in the end the DKMS approach was dismissed and the kmod approach accepted, stick to the section kABI-tracking kmod and just put the following repo on the server:

# cat /etc/yum.repos.d/zfs.repo 
#
# DO NOT CHANGE THIS FILE MANUALLY!
#
# This file is managed by the Chef configuration management system
#

[zfs-kmod]
name=ZFS on Linux for EL7 - kmod
baseurl=http://download.zfsonlinux.org/epel/7.3/kmod/$basearch/
enabled=1
metadata_expire=7d
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-zfsonlinux
  • Also install the key RPM-GPG-KEY-zfsonlinux
yum install zfs

will install all necessary packages, also creating the zfs module.

==============================================================================================================================================================================================================================================================
 Package                                                      Arch                                                Version                                                                       Repository                                               Size
==============================================================================================================================================================================================================================================================
Installing:
 zfs                                                          x86_64                                              0.7.0-1.el7_3                                                                 zfs-kmod                                                382 k
Installing for dependencies:
 kmod-spl                                                     x86_64                                              0.7.0-1.el7_3                                                                 zfs-kmod                                                105 k
 kmod-zfs                                                     x86_64                                              0.7.0-1.el7_3                                                                 zfs-kmod                                                866 k
 libnvpair1                                                   x86_64                                              0.7.0-1.el7_3                                                                 zfs-kmod                                                 29 k
 libuutil1                                                    x86_64                                              0.7.0-1.el7_3                                                                 zfs-kmod                                                 35 k
 libzfs2                                                      x86_64                                              0.7.0-1.el7_3                                                                 zfs-kmod                                                129 k
 libzpool2                                                    x86_64                                              0.7.0-1.el7_3                                                                 zfs-kmod                                                586 k
 lm_sensors-libs                                              x86_64                                              3.4.0-4.20160601gitf9185e5.el7                                                gsi-mirror                                               41 k
 spl                                                          x86_64                                              0.7.0-1.el7_3                                                                 zfs-kmod                                                 29 k
 sysstat                                                      x86_64                                              10.1.5-11.el7                                                                 gsi-mirror                                              310 k

2.10.1 Necessary zfs packages

Thus the packages from zfsonlinux.org that are needed here are

zfs kmod-zfs libzfs2 libzpool2 spl kmod-spl libnvpair1 lm_sensors-libs sysstat

2.11 Lustre: Module osd-zfs

The package kmod-lustre-osd-zfs cannot be installed: mountains of ksym(...) errors. Without it, no module osd-zfs exists. Lustre and ZFS can be installed, a zpool can be created and formatted with Lustre, but it cannot be mounted.

During several attempts it became clear that the lustre-repo is constructed above gets in the way.

  • Running yum update unconditionally with lustre-server.repo enabled will install the Lustre-Kernel kernel-3.10.0-514.21.1.el7_lustre.x86_64.rpm which should not be necessary on a ZFS system.
  • The repo also installs kernel-devel and kernel-headers in the Lustre variant which also collide with the build.

Instead, start a fresh installation, follow https://github.com/zfsonlinux/zfs/wiki/RHEL-%26-CentOS with installation of zfs-release.el7_3.noarch.rpm and subsequently kernel-devel, zfs. Then follow https://lists.01.org/pipermail/hpdd-discuss/2016-December/003047.html religiously:

[root@lxfs419 ~]# yum install yum-utils-1.1.31-40.el7.noarch
[root@lxfs419 ~]# yum-config-manager --disable zfs
[root@lxfs419 ~]# yum-config-manager --enable zfs-kmod
[root@lxfs419 ~]# yum -y install kmod-zfs-devel libzfs2-devel

troth@lxdv84:~/Downloads/Lustre/CentOS/lustre-2.10.0/el7.3.1611/public/lustre/lustre-2.10.0/el7.3.1611/server/SRPMS$ scp lustre-2.10.0-1.src.rpm root@lxfs419:

[root@lxfs419 ~]# yum -y install rpm-build
[root@lxfs419 ~]# yum -y install libselinux-devel libtool 
[root@lxfs324 ~]# yum -y install kernel-devel-3.10.0-862.14.4.el7.x86_64
[root@lxfs419 ~]# uname -r
3.10.0-514.el7.x86_64
[root@lxfs419 ~]# rpm -qa | grep kernel | grep `uname -r`
kernel-devel-3.10.0-514.el7_lustre.x86_64
kernel-headers-3.10.0-514.el7_lustre.x86_64
kernel-3.10.0-514.el7_lustre.x86_64
  • An important deviation from these Web-instructions was to add --without ldiskfs to the rpmbuild command: otherwise, after compilation the rpmbuild fails when trying to copy the (non-existing) file osd-ldiskfs.ko between directories.
[root@lxfs419 ~]# rpmbuild --rebuild --with zfs --without ldiskfs lustre-2.10.0-1.src.rpm
[root@lxfs419 ~]# yum -y install createrepo
[root@lxfs419 ~]# rpmbuild=`readlink -f ~/rpmbuild/RPMS`
[root@lxfs419 ~]# createrepo ${rpmbuild}
[root@lxfs419 ~]# cat <<END > /etc/yum.repos.d/lustre.repo
[lustre]
name=CentOS-$releasever - Lustre locally built RPMS
baseurl=file://${rpmbuild}
enabled=1
gpgcheck=0
END
  • Installation of the newly built packages still fails at first, because zfs-dkms and spl-dkms had been installed from the zfsonlinus-Epel and now conflict the new ones.
    • Erase and install:
[root@lxfs419 ~]# yum erase zfs-dkms-0.6.5.11-1.el7.centos.noarch spl-dkms-0.6.5.11-1.el7.centos.noarch 
[root@lxfs419 ~]# yum -y install kmod-lustre-osd-zfs* lustre

After finding and importing a previously created osspool0, it was mounted with lxmds20 as the MDS (mkfs.lustre --reformat --mgs --mdt --fsname=hebcent --index=0 --servicenode=10.20.3.1@o2ib5 --mgsnode=10.20.3.1@o2ib5 --mtail ^Csoptions"-E stride=4,stripe-width=20 -O flexbg,mmp,uninitbg" /dev/sda=)

2.12 zfs-server repo

The Lustre packages created on lxfs418 with an installed zfs version 0.7.0-1 are copied to the mirror, lxrpt2:/srv/centos/lustre-repository/lustre-2.10.0/el7.3.1611/zfs-server

  • Set up an entry for that repo:
# cat /etc/yum.repos.d/zfs-server.repo 
#
# DO NOT CHANGE THIS FILE MANUALLY!
#
# This file is managed by the Chef configuration management system
#

[zfs-server]
name = zfs-server
baseurl = http://mirror.gsi.de/centos/lustre-repository/lustre-2.10.0/el7.3.1611/zfs-server
enabled = 1
gpgcheck = 0

2.13 Install the Lustre packages

yum install kmod-lustre.x86_64 kmod-lustre-osd-zfs.x86_64 lustre.x86_64 lustre-osd-zfs-mount.x86_64

2.14 e2fsprogs

wget and upload https://downloads.hpdd.intel.com/public/e2fsprogs/1.42.13.wc5/el7/ to lxrpt2:/srv/centos/lustre-repository/e2fsprogs

On lxmsd20, yum install e2fsprogs: one version is already installed, but the install command gets the Intel package, probably due to the higher version number.

2.15 Lustre on lxmds20

With the correct e2fsprogs, the Lustre packages are installable on lxmds20, here including

kmod-lustre.x86_64 kmod-lustre-osd-ldiskfs lustre.x86_64 lustre-osd-ldiskfs-mount.x86_64

but not lustre-dkms.noarch (while dkms fomr the epel repo is installed), because of zfs-dependencies. Obviously, this package is for ZFS servers only.

2.16 DRBD on lxmds20

The EPEL repo holding drbd packages is installable:

wget http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm + rpm -i ...

This gives access to drbd84-utils.x86_64 and kmod-drbd84.x86_64, but the modules from kmod-drbd84 are not compatible with the Linux kernel.

Follow instead https://www.howtoforge.com/tutorial/how-to-install-and-setup-drbd-on-centos-6/

mkdir -p /root/rpmbuild/{BUILD,BUILDROOT,RPMS,SOURCES,SPECS,SRPMS}
cd drbd-8.4.10-1
drbd-8.4.10-1]# make km-rpm
  • This works for the module package, gives drbd-km-3.10.0_514.21.1.el7_lustre.x86_64-8.4.10-1.x86_64.rpm, which is installable and gives loadable module.
  • The utils however cannot be compiled: ./configure works, but make rpm fails because failed to load external entity http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl
  • Bump /etc/environment to the kronos.hpc.gsi.de version
ftp_proxy="http://proxy-ib2.gsi.de:3128/"
FTP_PROXY="http://proxy-ib2.gsi.de:3128/"
HTTP_PROXY="http://proxy-ib2.gsi.de:3128/"
http_proxy="http://proxy-ib2.gsi.de:3128/"
HTTPS_PROXY="http://proxy-ib2.gsi.de:3128/"
https_proxy="http://proxy-ib2.gsi.de:3128/"
no_proxy="localhost,127.0.0.1,10.10.0.0/16,chef.hpc.gsi.de"
NO_PROXY="localhost,127.0.0.1,10.10.0.0/16,chef.hpc.gsi.de"
RSYNC_PROXY="proxy-ib2.gsi.de:3128"
rsync_proxy="proxy-ib2.gsi.de:3128"
TZ=":/etc/localtime"
  • Log out, log in again !!
  • Install gcc++: yum install gcc-c++.x86_64
yum -y install gcc make automake autoconf libxslt libxslt-devel flex rpm-build

  • Now make km-rpm works
  • The compiled rpms in /root/rpmbuild/RPMS/x86_64 refuse to install because of conflicts of the type
file /usr/lib/debug/usr/sbin/drbdadm.debug conflicts between attempted installs of drbd-debuginfo-8.9.11-1.el7.centos.x86_64 and drbd-debuginfo-8.9.11-1.el7.centos.x86_64

  • Perhaps this is due to the prior installation of the drbd84-utils package from the repo. This package had been yum remove'd, but perhaps rpm does not really know about it?
  • rpm -iv --replacefiles is the command that works.

2.16.1 DRBD on lxmds17

On lxmds17 use the package repo http://mirror.gsi.de/centos/drbd-repository/8.9/el7

  • There are still errors installing drbd-utils
Transaction check error:
  file /usr/sbin/drbdadm conflicts between attempted installs of drbd-utils-8.9.11-1.el7.centos.x86_64 and drbd-utils-8.9.11-1.el7.centos.x86_64
  file /usr/sbin/drbdmeta conflicts between attempted installs of drbd-utils-8.9.11-1.el7.centos.x86_64 and drbd-utils-8.9.11-1.el7.centos.x86_64
  file /usr/sbin/drbdsetup conflicts between attempted installs of drbd-utils-8.9.11-1.el7.centos.x86_64 and drbd-utils-8.9.11-1.el7.centos.x86_64
  • Run
yum install --downloadonly drbd-utils  --downloaddir=/root

  • Install by rpm -iv --replacefiles drbd-utils-8.9.11-1.el7.centos.x86_64.rpm
  • Afterwards, the other packages install via yum without problems
yum install drbd-km-3.10.0_514.21.1.el7_lustre.x86_64.x86_64
yum install  drbd-bash-completion.x86_64 drbd-udev.x86_64 drbd-utils.x86_64

2.17 User-IDs auf lxmds19/20

The tool of choice seems to be sssd here - nslcd is not needed/installed.

  • The nslcd.keytab mentioned below has this name, nslcd, just for convenience: otherwise, a corresponding change on the keytab server would be necessary.
  • Some kerberos-stuff seems to be installed by default: there is an /etc/krb5.conf and /etc/krb5.conf.d
yum install sssd

  • This also creates /etc/sssd/, so the following config files can be written by Chef:

Create the following config files:

  • sssd
# cat /etc/sssd/sssd.conf
[sssd]
config_file_version = 2
services = nss
domains = LDAP

[nss]
filter_groups = root
filter_users = root

[domain/LDAP]
id_provider = ldap
ldap_uri = ldap://lxldap04.gsi.de
ldap_search_base = dc=gsi,dc=de
krb5_server = lxkdc1.gsi.de
krb5_realm = GSI.DE
ldap_krb5_keytab = /etc/nslcd.keytab
ldap_sasl_authid = nslcd/lxmds19.gsi.de
ldap_sasl_mech = GSSAPI
ldap_schema = rfc2307
ldap_user_search_base = ou=people,dc=gsi,dc=de
ldap_group_search_base = ou=groups,dc=gsi,dc=de
enumerate = true

  • Putting this sssd.conf as pure text into a role is fail: of course, the line with nslcd/lxmds19.gsi.de has to be adapted!
  • krb5
# cat krb5.conf
# Configuration snippets may be placed in this directory as well
includedir /etc/krb5.conf.d/

[logging]
 default = FILE:/var/log/krb5libs.log
 kdc = FILE:/var/log/krb5kdc.log
 admin_server = FILE:/var/log/kadmind.log

[libdefaults]
 dns_lookup_realm = false
 ticket_lifetime = 24h
 renew_lifetime = 7d
 forwardable = true
 rdns = false
 default_ccache_name = KEYRING:persistent:%{uid}

[realms]

[domain_realm]
  • ldap
# cat /etc/openldap/ldap.conf 
#
# LDAP Defaults
#

# See ldap.conf(5) for details
# This file should be world readable but not world writable.

#BASE	dc=example,dc=com
#URI	ldap://ldap.example.com ldap://ldap-master.example.com:666

#SIZELIMIT	12
#TIMELIMIT	15
#DEREF		never

TLS_CACERTDIR /etc/openldap/cacerts

# Turning this off breaks GSSAPI used with krb5 when rdns = false
SASL_NOCANON	on
URI ldap://lxldap03.gsi.de/
BASE dc=gsi,dc=de
  • The directory mentioned here, /etc/openldap/cacerts, is copied from server to server - is that correct?
    • On lxmds17, this directory was not created, but id troth still works.

2.18 keytabs

keytabs can be installed with knife and wallet

troth@lxdv84:~$ knife krb5 info lxmds19.gsi.de
Information for lxmds19.gsi.de
...
Also found nslcd/lxmds19.gsi.de@GSI.DE
Also found verify/lxmds19.gsi.de@GSI.DE
  • knife krb5 -a get lxmds19.gsi.de creates lxmds19:/etc/krb5.keytab
    • Since this installation is not running the usual kerb-cookbooks, the nslcd-keytab has to be place by hand as well:
troth@lxdv84:~$ wallet get keytab nslcd/lxmds19.gsi.de@GSI.DE -f /tmp/lxmds19nslcd

  • This may not work due to
wallet: troth@GSI.DE not authorized to create keytab:nslcd/lxmds19.gsi.de@GSI.DE

  • Destroy the keytabs that already exist
knife krb5 -a destroy lxmds19.gsi.de

  • Get a new krb5 keytab locally:
knife krb5 get lxmds19.gsi.de

  • Make yourself master of the universe
kinit -t /tmp/lxmds19.gsi.de20180226-988-po3mxt.keytab host/lxmds19.gsi.de

  • Now get the nslcd.keytab with wallet
wallet get keytab nslcd/lxmds19.gsi.de@GSI.DE -f /tmp/lxmds19nslcd

  • Move /tmp/lxmds19nslcd to lxmds19:/etc/nslcd.keytab
  • Move /tmp/lxmds19.gsi.de20180226-988-po3mxt.keytab to lxmds19:/etc/krb5.keytab
  • Enable and start sssd
systemctl enable sssd.service
systemctl start sssd.service

3 [2018-11-06 Tue] Upgrade CentOS 7.5, ZFS 0.7.9, Lustre 2.10.5

Upgrading Lustre on Hebe should put the most recent versions of the relevant software.

3.1 Upgrading the OSS

  • According to Andreas Dilger, ZFS versions 0.7.10 and 0.7.11 have serious bugs and should not be used.
  • Upgrade on lxfstest04 and create the necessary Lustre packages there (procedure as above), creating
kmod-lustre-2.10.5-1.el7.cern.x86_64.rpm          kmod-lustre-tests-2.10.5-1.el7.cern.x86_64.rpm  lustre-debuginfo-2.10.5-1.el7.cern.x86_64.rpm  lustre-osd-zfs-mount-2.10.5-1.el7.cern.x86_64.rpm    lustre-tests-2.10.5-1.el7.cern.x86_64.rpm kmod-lustre-osd-zfs-2.10.5-1.el7.cern.x86_64.rpm  lustre-2.10.5-1.el7.cern.x86_64.rpm lustre-iokit-2.10.5-1.el7.cern.x86_64.rpm      lustre-resource-agents-2.10.5-1.el7.cern.x86_64.rpm

These packages are put on the mirror, again creating a subdirectory named by the Lustre and the ZFS version.

The updated yum repo files read

# cat zfs.repo

[zfs-kmod]
name=ZFS on Linux for EL7 - kmod
baseurl=http://download.zfsonlinux.org/epel/7.5/kmod/$basearch/
enabled=1
metadata_expire=7d
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-zfsonlinux
# cat zfs.repo

[zfs-server]
name = zfs-server
# baseurl = http://mirror.gsi.de/centos/lustre-repository/lustre-2.10.2/el7.4/zfs-server
baseurl = http://mirror.gsi.de/centos/lustre-repository/lustre-2.10.5/zfs-0.7.9/zfs-server
enabled = 1
gpgcheck = 0
  • Start by getting all security updates:
root@lxfs421:~# yum --security update

  • Running update will install all new packages, effectivly upgrading to CentOS 7.5
root@lxfs434:~# yum update --skip-broken

  • –skip-broken skips over the ZFS packages and the depending Lustre packages - without it, yum will try to satisfy dependencies with zfs 0.7.11, and more importantly it will fail to fullfill the dependencies of the existing Lustre packages - and the new Lustre packages are not in the scope of yum update.
  • To get the new ZFS packages, first clean yum
root@lxfs434:~# yum clean all && rm -rf /var/cache/yum && ainsl /etc/yum.conf http_caching=none

  • Install the packages, explicitly specifying the desired version:
root@lxfs434:~# yum install kmod-zfs-0.7.9-1.el7_5.x86_64 kmod-spl-0.7.9-1.el7_5.x86_64 zfs-0.7.9-1.el7_5.x86_64 spl-0.7.9-1.el7_5.x86_64 libzfs2-0.7.9-1.el7_5.x86_64 libzpool2-0.7.9-1.el7_5.x86_64 libnvpair1-0.7.9-1.el7_5.x86_64

  • This will pull in the Lustre packages from lustre-repository/lustre-2.10.5/zfs-0.7.9/zfs-server as dependencies.
  • However, the kernel modules from the ZFS packages go to /lib/modules/3.10.0-862.2.3.el7.x86_64/extra, while the newest kernel is 3.10.0-862.14.4.el7.x86_64.
    • An option to make yum install the package as-if for the desired kernel is not known.
  • Furthermore: if the machine is booted first into 3.10.0-862.14.4 and the zfs packages are installed afterwards, the modules still go to the 2.3.../extra directory.
    • However, yum also creates symlinks from that /extra/ directory to 3.10.0-862.14.4.el7.x86_64/weak-updates
  • Hence write down all necessary commands in a script:
# cat link_modules.sh

#!/bin/bash

mkdir -p /lib/modules/3.10.0-862.14.4.el7.x86_64/weak-updates/spl/spl
mkdir -p /lib/modules/3.10.0-862.14.4.el7.x86_64/weak-updates/spl/splat
mkdir -p /lib/modules/3.10.0-862.14.4.el7.x86_64/weak-updates/zfs/avl
mkdir -p /lib/modules/3.10.0-862.14.4.el7.x86_64/weak-updates/zfs/icp
mkdir -p /lib/modules/3.10.0-862.14.4.el7.x86_64/weak-updates/zfs/nvpair
mkdir -p /lib/modules/3.10.0-862.14.4.el7.x86_64/weak-updates/zfs/unicode
mkdir -p /lib/modules/3.10.0-862.14.4.el7.x86_64/weak-updates/zfs/zcommon
mkdir -p /lib/modules/3.10.0-862.14.4.el7.x86_64/weak-updates/zfs/zfs
mkdir -p /lib/modules/3.10.0-862.14.4.el7.x86_64/weak-updates/zfs/zpios

ln -s /lib/modules/3.10.0-862.2.3.el7.x86_64/extra/spl/spl/spl.ko          /lib/modules/3.10.0-862.14.4.el7.x86_64/weak-updates/spl/spl/spl.ko
ln -s /lib/modules/3.10.0-862.2.3.el7.x86_64/extra/spl/splat/splat.ko      /lib/modules/3.10.0-862.14.4.el7.x86_64/weak-updates/spl/splat/splat.ko
ln -s /lib/modules/3.10.0-862.2.3.el7.x86_64/extra/zfs/avl/zavl.ko         /lib/modules/3.10.0-862.14.4.el7.x86_64/weak-updates/zfs/avl/zavl.ko
ln -s /lib/modules/3.10.0-862.2.3.el7.x86_64/extra/zfs/icp/icp.ko          /lib/modules/3.10.0-862.14.4.el7.x86_64/weak-updates/zfs/icp/icp.ko
ln -s /lib/modules/3.10.0-862.2.3.el7.x86_64/extra/zfs/nvpair/znvpair.ko   /lib/modules/3.10.0-862.14.4.el7.x86_64/weak-updates/zfs/nvpair/znvpair.ko
ln -s /lib/modules/3.10.0-862.2.3.el7.x86_64/extra/zfs/unicode/zunicode.ko /lib/modules/3.10.0-862.14.4.el7.x86_64/weak-updates/zfs/unicode/zunicode.ko
ln -s /lib/modules/3.10.0-862.2.3.el7.x86_64/extra/zfs/zcommon/zcommon.ko  /lib/modules/3.10.0-862.14.4.el7.x86_64/weak-updates/zfs/zcommon/zcommon.ko
ln -s /lib/modules/3.10.0-862.2.3.el7.x86_64/extra/zfs/zfs/zfs.ko          /lib/modules/3.10.0-862.14.4.el7.x86_64/weak-updates/zfs/zfs/zfs.ko
ln -s /lib/modules/3.10.0-862.2.3.el7.x86_64/extra/zfs/zpios/zpios.ko      /lib/modules/3.10.0-862.14.4.el7.x86_64/weak-updates/zfs/zpios/zpios.ko


depmod -w 3.10.0-862.14.4.el7.x86_64
  • Remember grub2-set-default 0 to boot the wanted kernel, for i in $(seq 0 6); do umount /srv/OST$i; done, lustre_rmmod and reboot.

3.2 Upgrading the MDS

  • Run first on the DRBD-secondaries:
root@lxmds20:~# yum --security update
root@lxmds20:~# yum  update --skip-broken
root@lxmds20:~# drbdadm down mds
root@lxmds20:~# grub2-set-default 0
root@lxmds20:~# shutdown -r now

  • On lxmds18, the DRBD packages are then created as described above/in the Wiki, from drbd-8.4.11-1.tar.gz. The packages are placed on the mirror, same location (http://mirror.gsi.de/centos/drbd-repository/8.9/el7)
  • Download new e2fsprogs and patchless-ldiskfs-server from lustre.org and put these on the mirror, too. The URLs read
baseurl = http://mirror.gsi.de/centos/lustre-repository/e2fsprogs/1.44.3.wc1/el7
baseurl = http://mirror.gsi.de/centos/lustre-repository/lustre-2.10.5/el7.5.1804/patchless-ldiskfs-server

  • Get DRBD modules
root@lxmds20:~# yum install drbd-km-3.10.0_862.14.4.el7.x86_64.x86_64

  • Install e2fsprogs and Lustre
root@lxmds20:~# yum install e2fsprogs-1.44.3.wc1-0.el7.x86_64
root@lxmds20:~# yum install kmod-lustre-osd-ldiskfs-2.10.5-1.el7.x86_64 lustre-osd-ldiskfs-mount-2.10.5-1.el7.x86_64 lustre-2.10.5-1.el7.x86_64 kmod-lustre-2.10.5-1.el7.x86_64

On some machines, yum stubbornly refuses to see the e2fsprogs package (the -devel packages of the same version are visible). In that case use scp and yum localinstall

The switch from lxmds19 to lxmds20 means umounting the MDS on lxmds19. This takes a long time (feeling), actually 5 min:

Nov 08 09:42:24 lxmds19.gsi.de kernel: Lustre: Failing over hebe-MDT0000

Nov 08 09:47:13 lxmds19.gsi.de kernel: Lustre: server umount hebe-MDT0000 complete

Mounting the MDS on lxmds20 and then lxmds22 works, reconnects to the new IPs likewise.

3.2.1 HSM error

After mounting the MDTs, both machines have trouble with the HSM coordinators:

Nov  8 09:54:16 lxmds20 kernel: Lustre: HSM coordinator thread is not running - denying agent registration.

Nov  8 09:54:16 lxmds22 kernel: Lustre: HSM coordinator thread is not running - denying agent registration.

The relevant file is rather empty:

root@lxmds20:~# cat /proc/fs/lustre/mdt/hebe-MDT0000/hsm/*
3600
1
60

10
3

NonBlockingRestore [NoRetryAction]
0

Auch aus Client-Sicht:

#+BEGINEXAMPLE lxcopytool01:~# systemctl status -l lhsmtooltsm

4 lhsmtooltsm.service - Lustre TSM Copytool

Loaded: loaded (/lib/systemd/system/lhsmtooltsm.service; enabled) Active: failed (Result: exit-code) since Thu 2018-11-08 10:39:51 CET; 1min 29s ago Docs: man:lhsmtooltsm(1) Process: 2856 ExecStart=/usr/sbin/lhsmtooltsm $LHSMTOOLTSMOPTS (code=exited, status=6) Main PID: 2856 (code=exited, status=6)

Nov 08 10:39:50 lxcopytool01 systemd[1]: Started Lustre TSM Copytool. Nov 08 10:39:51 lxcopytool01 lhsmtooltsm[2856]: cannot start copytool on '/lustre/hebe': No such device or address (6) Nov 08 10:39:51 lxcopytool01 lhsmtooltsm[2856]: [ERROR] 1541669991.138919 [2856] lhsmtooltsm.c:754 cannot start copytool interface: No such device or address (6) Nov 08 10:39:51 lxcopytool01 systemd[1]: lhsmtooltsm.service: main process exited, code=exited, status=6/NOTCONFIGURED Nov 08 10:39:51 lxcopytool01 systemd[1]: Unit lhsmtooltsm.service entered failed state. #+ENDEXAMPLE

lxmds20 hat sich dann berappelt, lxmds22 noch nicht:

root@lxmds20:~# lctl get_param mdt.hebe-MDT0000.hsm_control
mdt.hebe-MDT0000.hsm_control=enabled

aber

root@lxmds22:~# lctl get_param mdt.hebe-MDT0001.hsm_control
mdt.hebe-MDT0001.hsm_control=stopped

Also auch auf lxmds22 auf enabled setzen:

root@lxmds22:~# lctl set_param mdt.hebe-MDT0001.hsm_control=enabled

5 [2019-04-23 Tue] Upgrade auf Kernel 3.10.0-957.10.1, ZFS 0.7.13, Lustre 2.12

A security update on CentOS brings kernel 3.10.0-957.10.1

  • The packages kmod-zfs and kmod-spl no longer provide zfs modules that this kernel can understand.
    • The modules were compiled for 3.10.0-862.2.3 and newer kernels linked those modules to lib/modules/<uname -r>
  • -> Either compile all ZFS manually or try DKMS

5.1 DKMS

lxfstest03 has already most of the development tools necessary for DKMS packages.

  • The manual asks for installation of epel-release, kernel-devel and zfs.
  • The latter does not work. Instead, first remove the kmod-packages:
yum remove kmod-zfs kmod-spl

  • Then try to do the dkms packages: yum install zfs-dkms.
    • The upstream code example for the yum repository for zfs-dkms contains the line baseurl=http://download.zfsonlinux.org/epel/7/$basearch/ which puts zfs 0.6.5.9 on the system - slightly too old …
    • Update the repo line to read baseurl=http://download.zfsonlinux.org/epel/7.6/$basearch/
    • Run yum remove zfs-dkms-0.6.5.9-1.el7.centos.noarch spl-dkms-0.6.5.9-1.el7.centos.noarch
  • Now, yum install zfs does the trick. The module is created, the old zpool can be imported.

5.1.1 Lustre

Compiling lustre-osd-zfs fails consistently with

/root/rpmbuild/BUILD/lustre-2.10.6/lustre/osd-zfs/osd_internal.h:774:2: error: implicit declaration of function 'refcount_add' [-Werror=implicit-function-declaration]
  refcount_add(&dn->dn_bonus->db_holds, osd_obj_tag);
yum install ./lustre-zfs-dkms-2.12.0-1.el7.noarch.rpm
yum install ./lustre-2.12.0-1.el7.x86_64.rpm
yum install ./lustre-osd-zfs-mount-2.12.0-1.el7.x86_64.rpm

6 Update 2.10.5 -> 2.10.6

Steht im Wiki

6.1 OSS

  • Cern-Repo aktivieren: in /etc/yum.repos.d/CentOS-Base.repo einfuegen
baseurl=http://linuxsoft.cern.ch/cern/centos/$releasever/os/$basearch/

  • Im /etc/yum.repos.d/zfs-server.repo auf Verzeichnis 2.10.6 wechseln
baseurl = http://mirror.gsi.de/centos/lustre-repository/lustre-2.10.6/zfs-0.7.9/zfs-server

Das Cern-Repo wird gebraucht, weil die 2.10.6-Pakete nach kernel >= 3.10.0-957 fragen - das gibt es nur dort.

  • Installiert wird dann eher ein noch neuerer Kernel, aber die Module aus den 2.10.6-er Paketen laufen dann auch mit kernel-3.10.0-862.14.4

7 [2019-03-01 Fri] MDS with MOFED 4.5

There are recurring errors on all Hebe MDS with

Apr 23 10:03:41 lxmds19.gsi.de kernel: kworker/4:1: page allocation failure: order:8, mode:0x80d0
Apr 23 10:03:41 lxmds19.gsi.de kernel: CPU: 4 PID: 13737 Comm: kworker/4:1 Kdump: loaded Tainted: G           OE  ------------   3.10.0-957.1.3.el7.x86_64 #1
Apr 23 10:03:41 lxmds19.gsi.de kernel: Hardware name: Supermicro X10DRi/X10DRi, BIOS 2.1 09/13/2016
Apr 23 10:03:41 lxmds19.gsi.de kernel: Workqueue: ib_cm cm_work_handler [ib_cm]
Apr 23 10:03:41 lxmds19.gsi.de kernel: Call Trace:

The following is an excerpt from lxmds18:.bash_history ! https://jira.whamcloud.com/browse/LU-10736

root@lxmds18:~# 
cd MOFED-4.5-1.0.1.0/el7/server/RPMS/x86_64/
yum install ./kernel-3.10.0-957.el7_lustre.x86_64.rpm
yum search rdma-core --showduplicates
yum erase rdma-core-15-7.el7_5.x86_64 rdma-core-15-7.el7_5.i686

yum install ./ibutils-1.5.7.1-0.12.gdcaeae2.45101.x86_64.rpm ./libibumad-43.1.1.MLNX20180612.87b4d9b-0.1.45101.x86_64.rpm ./libibmad-5.0.0.MLNX20181022.0361c15-0.1.45101.x86_64.rpm ./libibverbs-41mlnx1-OFED.4.5.0.1.0.45101.x86_64.rpm ./libibverbs-utils-41mlnx1-OFED.4.5.0.1.0.45101.x86_64.rpm ./librdmacm-41mlnx1-OFED.4.2.0.1.3.45101.x86_64.rpm ./librdmacm-utils-41mlnx1-OFED.4.2.0.1.3.45101.x86_64.rpm ./opensm-libs-5.3.0.MLNX20181108.33944a2-0.1.45101.x86_64.rpm ./mlnx-ofa_kernel-4.5-OFED.4.5.1.0.1.1.gb4fdfac.x86_64.rpm

yumdownloader infiniband-diags
rpm -i --replacefiles ./infiniband-diags-2.0.0-2.el7.x86_64.rpm

yum install ./kmod-mlnx-ofa_kernel-4.5-OFED.4.5.1.0.1.1.gb4fdfac.x86_64.rpm
yum reinstall ./kmod-lustre-2.10.6-1.el7.x86_64.rpm ./kmod-lustre-osd-ldiskfs-2.10.6-1.el7.x86_64.rpm  ./lustre-2.10.6-1.el7.x86_64.rpm ./lustre-osd-ldiskfs-mount-2.10.6-1.el7.x86_64.rpm


cd /etc/sysconfig/network-scripts/
jmacs ifcfg-ib0
# Set "TYPE=Infiniband", before it was set to "Ethernet" which worked with mlx4, but no longer with mlx5

grub2-set-default 0 # Seems to be wrong/ineffective
shutdown -r now

# Not needed on lxmds21:
lsmod | grep mlx
modprobe -v mlx5_core
modprobe -v mlx5_ib
modprobe -v mlx4_ib
modprobe -v ib_umad
modprobe -v ib_ipoib
cat /etc/modules
modprobe -v rdma_ucm
ibstat
ip a
jmacs /etc/modules # Does not exist anymore? There is now /etc/modules-load.d/

yum install drbd-km-3.10.0_957.el7_lustre.x86_64-8.4.11-1.x86_64.rpm
  • The DRBD package was compiled previously on lxmds17.

8 [2019-10-28 Mon] Upgrade auf CentOS 7.7, zfs 0.7.13, Lustre 2.12.3

On lxfs316 = fresh CentOS 7.5-installation with zfs 0.7.9, upgrade to CentOS 7.7:

yum update

  • Reboot
  • remove /etc/yum.repos.d/zfs.repo
  • update /etc/yum.repos.d/zfs-server.repo to read
baseurl = http://mirror.gsi.de/centos/lustre-repository/lustre-2.12.3/server

  • These RPM contain ZFS packages with specific names ( kmod-zfs-3.10.0-1062.1.1.el7lustre.x8664 kmod-spl-3.10.0-1062.1.1.el7lustre.x8664), therefore remove generic old ones:
yum remove kmod-zfs kmod-spl

  • Install one of the newer packages, should pull in the rest
  • Install the Lustre-ZFS-packages
yum install kmod-lustre-osd-zfs.x86_64 lustre-osd-zfs-mount.x86_64 lustre

On lxmds3 = fresh CentOS 7.5-installation, upgrade to CentOS 7.7 via yum update, reboot

  • update /etc/yum.repos.d/lustre-server.repo to read
baseurl = http://mirror.gsi.de/centos/lustre-repository/lustre-2.12.3/server

  • Install Lustre packages in this order (does not pull in ZFS packages):
yum install lustre-osd-ldiskfs-mount.x86_64 lustre kmod-lustre

Create new DRBD modules, still using drbd-8.4.11-1.tar.gz, following https://www.howtoforge.com/tutorial/how-to-install-and-setup-drbd-on-centos-6/

  • Even on this fresh installation, rpm -iv --replacefiles ./drbd-utils-8.9.11-1.el7.centos.x86_64.rpm is still necessary.

Use the attached Infortrend with two partitions for separate MGS and MDTs:

  • Create /etc/drbd.d/mgs-mds3.res and /etc/drbd.d/mdt-mds3.res with a ficticious lxmds4 as partner.
mkfs.lustre --mgs --fsname=ltest --servicenode=10.20.3.214@o2ib2 --servicenode=10.20.2.200@o2ib2 --mgsnode=10.20.3.214@o2ib2 --mgsnode=10.20.2.200@o2ib2 --mkfsoptions="-E stride=4,stripe-width=20 -O flex_bg,mmp,uninit_bg" /dev/drbd0
mkfs.lustre --mdt --fsname=ltest --index=0 --servicenode=10.20.3.214@o2ib2 --servicenode=10.20.2.200@o2ib2 --mgsnode=10.20.3.214@o2ib2 --mgsnode=10.20.2.200@o2ib2 --mkfsoptions="-E stride=4,stripe-width=20 -O flex_bg,mmp,uninit_bg" /dev/drbd1

9 [2020-04-05 Sun] Install with CentOS-DVD image

9.1 DVD image

On lxfs387-400, the Mellanox firmware does not speak iPXE. Installation of CentOS via PXE does not work either (network timeout). Hence installation with the DVD.

  • The CentOS mirror holds installation media: 7.5.1804/isos/x86_64
    • The smaller image CentOS-7-x86_64-Minimal-1804.iso does not offer IB support
    • CentOS-7-x86_64-DVD-1804.iso works
  • The image has to be plugged into the KVM window of IPMIView
  • In the software selection part, in the second column, check IB support and infrastructure server
  • The installation does not allow to pick specific packages and it does not configure the IB interface

9.2 Network configuration

After booting into the installed system, at least the IB interface should be up (ibstat should exist).

  • Configure /etc/sysconfig/network-scripts/ifcfg-ib0 according to examples from other servers.
    • In particular set BOOTPROTO=dhcp -> BOOTPROTO=none, ONBOOT=no -> ONBOOT=yes and add IPADDR, NETMASK, GATEWAY and DNS1
  • Copy /etc/environment from some other server
  • Install emacs and joe

9.3 Chef

Even though the appropriate chef-package is in gsi-reposotory, it is not installable directly.

  • Copy chef-13.7.16-1.el7.x86_64.rpm to the server, install
  • mkdir /etc/chef
  • Copy client.rb and validation.pem from lxmgmt5:/srv/http/centos/chefstart
  • Run chef-client (stops with errors on the first run)
  • Install zfs: yum install zfs-0.7.9-1.el7_5.x86_64 spl-0.7.9-1.el7_5.x86_64
  • Run Chef-client (should succeed now)

The OSS role is role[lustre_hebe_oss]

9.4 Hard disks

  • modprobe -v dm_multipath
  • systemctl restart multipathd
  • update-sas-oss-disk-map
  • udevadm trigger --action=add
  • udevadm settle
  • Check /dev/disk/by-location/

10 ZFS parameters

10.1 lxfs415

8388608*8 = 67108864 540757909504*0.75 = 405568432128 131072*8 1048576

cd /sys/module/zfs/parameters/
cat zfs_vdev_scheduler
echo  -n deadline > zfs_vdev_scheduler
echo 1 > metaslab_debug_unload
echo 16 > zfs_vdev_async_read_max_active
echo 16 > zfs_vdev_sync_read_max_active
echo 16 > zfs_vdev_sync_read_min_active
cat zfetch_max_distance
free  -b
arc_summary.py 
echo 405568432128 > zfs_arc_max 
echo 54075790950 > zfs_dirty_data_max
echo 67108864 > zfetch_max_distance
cat zfs_vdev_async_read_max_active
cat zfs_vdev_scheduler
cat /sys/module/zfs/parameters/zfs_vdev_scrub_max_active
cat /sys/module/zfs/parameters/zfs_vdev_sync_read_max_active 
cat /sys/module/zfs/parameters/zfs_vdev_sync_read_max_active 
cat zfs_vdev_sync_read_max_active
cat zfs_vdev_sync_read_min_active
cat zfs_vdev_async_read_min_active 
cat zfs_vdev_async_read_max_active 
echo 20 > zfs_vdev_async_write_active_min_dirty_percent
echo 5 > zfs_vdev_async_write_min_active
cat zfs_prefetch_disable
cat zfs_arc_max
free -g
cat /proc/meminfo 
grep MemTotal /proc/meminfo 
cat zfs_dirty_data_max
cat zfs_arc_max
free -g
free -b
zpool status
zfs get recordsize
zfs set recordsize=1M osspool6
zfs get recordsize
zfs set recordsize=1M osspool5
zfs get recordsize
zfs set recordsize=1M osspool4
zfs set recordsize=1M osspool3
zfs set recordsize=1M osspool2
zfs set recordsize=1M osspool1
zfs set recordsize=1M osspool0
zfs get recordsize
echo 1048576 > zfs_vdev_aggregation_limit
cd /sys/module/zfs/parameters/
cat zfs.txg.timeout
ls *write*
man 5 spl-module-parameters
#
cd /proc/fs/lustre/
cd ost
ls
cd OSS
ls
cd ost
ls
cat threads_max 
cat threads_started 
cd ..
cd ost_create/
ls
cat threads_max 
cat /sys/fs/lustre/version 
cat /proc/spl/kstat/zfs/arcstats 
cat /proc/spl/kstat/zfs/arcstats | grep size
cat /proc/spl/kstat/zfs/arcstats | grep c_max
zfs get compressratio

11 [2020-05-22 Fri] Upgrade hebetest 2.10.6 to 2.10.8

11.1 Upgrade lxfstest03: wrong ZFS version

Upgrade of lxfstest03 very tedious because the wrong ZFS version (0.7.12) was installed.

  • Closer inspection of the Whamcloud repos show that Lustre 2.10.8 still goes with zfs 0.7.9.
  • yum update did update many packages but not change to CentOS 7.6 or similar -?
  • mirror.gsi.de gets a copy of Whamclouds rpm repository: use of upstream directly does not work because of missing filelist.xml in the repodata directory -WTF?
    • This copy contains only the 2.10.8/el7/server and 2.10.8/el7/patchless-ldiskfs-server parts.
  • Putting these repos and the repo for zfs 0.7.12 into /etc/yum.repos.d/ makes yum update try to upgrade ZFS and Lustre as well, but it fails with the ksyms
  • The attempt to install or build the Lustre packages fails completely because at first, the zfs 0.7.12 packages for CentOS 7.5 were installed: zfs-0.7.12-1.el7_5.x86_64 - no good
  • At the end, the ZFS and Lustre packages are removed at first.
  • Then the zfs 0.7.12 packages are installed:
yum install zfs-0.7.12-1.el7_6.x86_64 spl-0.7.12-1.el7_6.x86_64 kmod-zfs-0.7.12-1.el7_6.x86_64 kmod-spl-0.7.12-1.el7_6.x86_64 libzpool2-0.7.12-1.el7_6.x86_64 libzfs2-0.7.12-1.el7_6.x86_64  libnvpair1-0.7.12-1.el7_6.x86_64

  • The Lustre source is put into /root, lustre-2.10.8-1.src.rpm, and the devel tools are installed: yum install kmod-zfs-devel-0.7.12.1.el7_6 libzfs2-devel-0.7.12.1.el7_6 rpm-build libselinux-devel libtool
rpmbuild --rebuild --with zfs --without ldiskfs lustre-2.10.8-1.src.rpm

fails because of LU-11507, lustre/osd-zfs/osd_internal.h:929:2: error: implicit declaration of function 'refcount_add' This is due to a change in ZFS, https://github.com/openzfs/zfs/pull/7932 The previous attempt at patching was to introduce the following in osdinternal.h:

#ifdef HAVE_ZFS_REFCOUNT_ADD
#define ZFS_REFCOUNT_ADD        zfs_refcount_add
#else
#define ZFS_REFCOUNT_ADD        refcount_add
#endif

/*                                                                                                                                                                                                                                                                                       
 * Helpers.                                                                                                                                                                                                                                                                              
 */

and replace the occurences of refcound_add by ZFS_REFCOUNT_ADD. This time, this leads to more errors about implicit definitions of the function. -> Instead replace refcound_add by zfs_refcount_add wherever applicable.

  • Staring afresh with rpmbuild ... does not work, because it cleans the working directory first. -> Either patch the source properly or continue the build after the error message.
  • Run make -j40 -s and then make rpms, puts the rpms directly into /root/rpmbuild/BUILD/lustre-2.10.8. Proper make-command to continue with rpmbuild is unknown.
  • Installation of a mixture of upstream lustre 2.10.8 and the self compiled ones fails. -> Install only the local packages.
  • Mounting the OSTs results in error messages on the MDS: = client hebetest-MDT0000-lwp-OST000eUUID does not support ibits lock, either very old or an invalid client=
    • However, recovery completes and the OST seems to be writable.

mkdir -p /lib/modules/3.10.0-957.1.3.el7.x8664/weak-updates/spl/spl mkdir -p /lib/modules/3.10.0-957.1.3.el7.x8664/weak-updates/spl/splat mkdir -p /lib/modules/3.10.0-957.1.3.el7.x8664/weak-updates/zfs/avl mkdir -p /lib/modules/3.10.0-957.1.3.el7.x8664/weak-updates/zfs/icp mkdir -p /lib/modules/3.10.0-957.1.3.el7.x8664/weak-updates/zfs/nvpair mkdir -p /lib/modules/3.10.0-957.1.3.el7.x8664/weak-updates/zfs/unicode mkdir -p /lib/modules/3.10.0-957.1.3.el7.x8664/weak-updates/zfs/zcommon mkdir -p /lib/modules/3.10.0-957.1.3.el7.x8664/weak-updates/zfs/zfs mkdir -p /lib/modules/3.10.0-957.1.3.el7.x8664/weak-updates/zfs/zpios

ln -s /lib/modules/3.10.0-862.2.3.el7.x8664/extra/spl/spl/spl.ko /lib/modules/3.10.0-957.1.3.el7.x8664/weak-updates/spl/spl/spl.ko ln -s /lib/modules/3.10.0-862.2.3.el7.x8664/extra/spl/splat/splat.ko /lib/modules/3.10.0-957.1.3.el7.x8664/weak-updates/spl/splat/splat.ko ln -s /lib/modules/3.10.0-862.2.3.el7.x8664/extra/zfs/avl/zavl.ko /lib/modules/3.10.0-957.1.3.el7.x8664/weak-updates/zfs/avl/zavl.ko ln -s /lib/modules/3.10.0-862.2.3.el7.x8664/extra/zfs/icp/icp.ko /lib/modules/3.10.0-957.1.3.el7.x8664/weak-updates/zfs/icp/icp.ko ln -s /lib/modules/3.10.0-862.2.3.el7.x8664/extra/zfs/nvpair/znvpair.ko /lib/modules/3.10.0-957.1.3.el7.x8664/weak-updates/zfs/nvpair/znvpair.ko ln -s /lib/modules/3.10.0-862.2.3.el7.x8664/extra/zfs/unicode/zunicode.ko /lib/modules/3.10.0-957.1.3.el7.x8664/weak-updates/zfs/unicode/zunicode.ko ln -s /lib/modules/3.10.0-862.2.3.el7.x8664/extra/zfs/zcommon/zcommon.ko /lib/modules/3.10.0-957.1.3.el7.x8664/weak-updates/zfs/zcommon/zcommon.ko ln -s /lib/modules/3.10.0-862.2.3.el7.x8664/extra/zfs/zfs/zfs.ko /lib/modules/3.10.0-957.1.3.el7.x8664/weak-updates/zfs/zfs/zfs.ko ln -s /lib/modules/3.10.0-862.2.3.el7.x8664/extra/zfs/zpios/zpios.ko /lib/modules/3.10.0-957.1.3.el7.x8664/weak-updates/zfs/zpios/zpios.ko

11.2 Upgrade lxfstest02

  • Run yum update on lxfstest02. /etc/redhad-version remains at 7.5
  • Putting explicit version number 7.6.1810 for the repository does not help:
cat /etc/yum.repos.d/CentOS-Base.repo

...
[base]
name=CentOS-$releasever - Base
baseurl=http://mirror.gsi.de/centos/7.6.1810/os/$basearch/
...

11.2.1 Installed kernels:

3.10.0-862.3.2.el7
3.10.0-862.14.4.el7
3.10.0-957.10.1.el7
3.10.0-957.1.3.el7
3.10.0-957.5.1.el7
  • 3.10.0-862.14.4 is the Hebe kernel: the ZFS and Lustre modules are compiled for / working with that kernel.
    • In fact, these modules are all in /lib/modules/3.10.0-862.3.2/..., and symlinked to the 3.10.0-862.14.4 directories (= weak-updates)
  • The Whamcloud 2.10.8/server directory contains kernel-3.10.0-957.1.3.el7_lustre.x86_64.rpm, so obviously this was the starting kernel for 2.10.8

11.2.2 ZFS version

  • The Whamcloud 2.10.8 directories contain ZFS 0.7.9 packages (dkms), so obviously the proven ZFS version for 2.10.8 is zfs 0.7.9
  • Our ZFS packages previously had come from http://download.zfsonlinux.org/epel/7.5/kmod/$basearch/.
    • Change the version number to 7.6 : http://download.zfsonlinux.org/epel/7.6/kmod/$basearch/
    • But there is no zfs 0.7.9 found there, 7.6 brings zfs 0.7.12 (-> cf. upgrade lxfstest03 above)
    • Stick to 7.5 here.

11.2.3 Lustre packages

  • Install all Lustre packages from Whamcloud 2.10.8
    • The Lustre modules get installed to /lib/modules/3.10.0-957.1.3.el7/...
  • Boot kernel 3.10.0-957.1.3
  • Symlink the zfs/spl modules from /lib/modules/3.10.0-862.2.3 to /lib/modules/3.10.0-957.1.3
    • Symbol errors when loading modules!

11.2.4 DONE Conclusion:

  • State "DONE" from [2020-05-24 Sun 08:42]

11.2.5 Conclusion

  • Downloaded ZFS 0.7.9 modules were intended for CentOS 7.5 and its kernels. These modules do not work with the 3.10.0-957-kernels of CentOS 7.6
  • The Lustre 2.10.8 modules on the other hand are coded for 3.10.0-957. (Not tested: loading these Lustre modules under kernel 3.10.0-862.14.4 - very unlikely)

    ** lxfstest02 with DKMS

Usually, the DKMS method is frowned upon, becaue if you install DKMS based ZFS module, and then for some reason you update the kernel of your operating system, the ZFS kernel module must be recompiled again. Otherwise it won’t work. But the kABI based ZFS module has the upper hand in that it doesn’t require recompilation if the kernel of the operating system is updated.

Experience shows that

  • removing or installing packages like kmod-lustre-osd-zfs, kmod-zfs or kmod-spl takes enormous amounts of time, order of 5+ min
  • Update of the kernel of the OS does not happen on Lustre OSS, except when major upgrades are done.
  • Compiling the modules with dkms seems to be just as fast as installing the kmod-version.
[root@lxfstest01 ~]# time yum remove -y kmod-zfs kmod-zfs-devel kmod-spl-devel kmod-spl

real8m38.848s
user7m13.052s
sys2m38.896s

The Whamcloud packages in lustre-2.10.8/el7/patchless-ldiskfs-server contain the DKSM versions for ZFS, spl-dkms-0.7.9-1.el7.noarch.rpm, zfs-dkms-0.7.9-1.el7.noarch.rpm, lustre-zfs-dkms-2.10.8-1.el7.noarch.rpm

  • Remove all kmod packages

yum remove kmod-spl-devel kmod-zfs-devel yum remove kmod-spl kmod-zfs

  • Package dkms comes from EPEL, https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm, which was installed on lxfstest02, but the contained file was removed from /etc/yum.repos.d
    • Uninstall and reinstall the epel-release packages, puts the repo file back into place.
  • yum install dkms
  • yum install kernel-devel
  • yum install kernel-headers-3.10.0-957.el7.x8664
    • All of this is running under kernel 3.10.0-957.1.3, however there are no kernel headers for that kernel, the link /lib/modules/3.10.0-957.1.3/build is dead.
    • Try pointing the link to /usr/src/kernels/3.10.0-957.el7.x86_64 - works!

Run dkms for the ZFS modules:

dkms install -m spl -v 0.7.9 -k `uname -r`
dkms install -m zfs -v 0.7.9 -k `uname -r`

  • The modules are produced, can be loaded, the zpools can be imported.

Get the Lustre packages:

yum install lustre lustre-zfs-dkms lustre-osd-zfs-mount

[root@lxfstest01 ~]# time yum install -y zfs spl zfs-dkms spl-dkms libnvpair1 libzpool2 libzfs2

real  7m37.567s
user  7m42.594s
sys   2m51.750s
[root@lxfstest01 ~]# time yum install -y lustre lustre-zfs-dkms lustre-osd-zfs-mount

real  7m40.007s
user 10m25.075s
sys   3m15.521s

11.3 Caveat

Upgrade lxfstest01:

  • First remove all etc/yum.repos.d files except CentOS-Base.repo
    • In CentOS-Base.repo, both [base] and [updates] are enabled
    • Unconditional yum update seems to upgrade to CentOS 7.7: kernel 3.10.0-1127 gets installed (CentOS 7.7 started with kernel 3.10.0-1062).
  • Lustre 2.10.8 does not work with CentOS 7.7!
    • Mentioned on the mailing list.
    • Trying to install lustre-dkms results in error message about missing header -> incompatible change in kernel, works only with Lustre 2.12 ff.
  • To overcome, change CentOS-Base.repo to refer only to mirror.gsi.de/centos/7.6.1810/.
  • Then install kernel 3.10.0-957.el7 (plus kernel-headers-3.10.0-957.el7.x8664, kernel-devel-3.10.0-957.el7.x8664).
  • Remove and install the Lustre dkms packages (yum install -y lustre lustre-zfs-dkms lustre-osd-zfs-mount).

11.4 lxmds17

  • Remove /etc/yum.repos.d/*
  • Put in CentOS-Base.repo with baseurl=http://mirror.gsi.de/centos/$releasever/os/$basearch/ and baseurl=http://mirror.gsi.de/centos/$releasever/updates/$basearch/: yum update does not do anything
  • Switch to baseurl=http://mirror.gsi.de/centos/7.6.1810/[os,updates]/$basearch/: yum wants to update, stumbles over leftover library /usr/lib/libibmad.so.5(.6.0) from installation of MOFED: removed manually
  • Put in lustre-server.repo with baseurl = http://mirror.gsi.de/centos/lustre-repository/lustre-2.10.8/el7/patchless-ldiskfs-server
  • yum update also updates the Lustre modules, they are then found in
root@lxmds17:/lib/modules# ls -l ./3.10.0-957.10.1.el7.x86_64/weak-updates/lustre/fs/lustre.ko
lrwxrwxrwx. 1 root root 64 May 26 12:18 ./3.10.0-957.10.1.el7.x86_64/weak-updates/lustre/fs/lustre.ko -> /lib/modules/3.10.0-957.1.3.el7.x86_64/extra/lustre/fs/lustre.ko

root@lxmds17:/lib/modules# modinfo /lib/modules/3.10.0-957.1.3.el7.x86_64/extra/lustre/fs/lustre.ko
filename:       /lib/modules/3.10.0-957.1.3.el7.x86_64/extra/lustre/fs/lustre.ko
license:        GPL
version:        2.10.8
description:    Lustre Client File System
author:         OpenSFS, Inc. <http://www.lustre.org/>
retpoline:      Y
rhelversion:    7.6
srcversion:     E459483EA54C83D0585ECA3
depends:        obdclass,ptlrpc,libcfs,lnet,lmv,mdc,lov
vermagic:       3.10.0-957.1.3.el7.x86_64 SMP mod_unload modversions 
root@lxmds17:/lib/modules# modinfo drbd
filename:       /lib/modules/3.10.0-957.el7_lustre.x86_64/updates/drbd.ko
alias:          block-major-147-*
license:        GPL
version:        8.4.11-1
description:    drbd - Distributed Replicated Block Device v8.4.11-1
author:         Philipp Reisner <phil@linbit.com>, Lars Ellenberg <lars@linbit.com>
retpoline:      Y
rhelversion:    7.6
srcversion:     85CDEE2271F6326BF82B3F0
depends:        libcrc32c
vermagic:       3.10.0-957.el7_lustre.x86_64 SMP mod_unload modversions 
parm:           enable_faults:int
parm:           fault_rate:int
parm:           fault_count:int
parm:           fault_devs:int
parm:           allow_oos:DONT USE! (bool)
parm:           disable_sendpage:bool
parm:           proc_details:int
parm:           minor_count:Approximate number of drbd devices (1-255) (uint)
parm:           usermode_helper:string
  • umount /srv/mds leads to reboot, but machine comes up with kernel 3.10.0-957.10.1.el7
  • The Lustre modules are found, the old DRBD modules cannot be reused
  • DRBD has no younger version, still at 8.4.11-1. Creating the module works as before:
cd /root/drbd-8.4.11-1                                                                                                                                                                                                                              
drbd-8.4.11-1]# make km-rpm                                                                                                                                                                                                                   
  • DRBD module is loaded, DRBD resource can be started, Lustre can be mounted
    • Due to missing lxmds18, the recovery is stuck

11.4.1 lxmds18

lxmds18 did make more troubles with its network interface. But basically the upgrade worked the same way as in lxmds17.

12 [2020-06-03 Wed] Ordentliches Upgrade

The current installation (kickstart config) will put a number of release files into /etc/yum.repos.d

  • Remove CentOS-CERN.repo and any other zfs or lustre repo file.
  • This leaves CentOS-Base.repo, which contains the same 'enabled' URLs as CentOS-CERN.repo, but they are labeled 'CERN' instead of 'BASE' and 'Cern-Tesing' instead of 'Updates' - this seems to make a difference.

12.1 Upgrade to most recent version

yum clean all
rm -rf /var/cache/yum
ainsl /etc/yum.conf http_caching=none
yum makecache
yum check-update
yum update

As of [2020-06-03 Wed], this will upgrade to CentOS 7.8, which is probably no good for Lustre 2.12.

12.2 Upgrade to specific version

Look for the package centos-release

yum info --show-duplicates centos-release

This should show centos-release-7-5.1804.[1|4|5].el7.centos.x86_64 as the installed one.

The release package has the following content:

[root@lxfs323 ~]# rpm -qpil centos-release-7-5.1804.4.el7.centos.x86_64.rpm 
warning: centos-release-7-5.1804.4.el7.centos.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
Name        : centos-release
Version     : 7
Release     : 5.1804.4.el7.centos
Architecture: x86_64
Install Date: (not installed)
Group       : System Environment/Base
Size        : 40338
License     : GPLv2
Signature   : RSA/SHA256, Mon 13 Aug 2018 05:10:03 PM CEST, Key ID 24c6a8a7f4a80eb5
Source RPM  : centos-release-7-5.1804.4.el7.centos.src.rpm
Build Date  : Mon 13 Aug 2018 04:34:36 PM CEST
Build Host  : x86-01.bsys.centos.org
Relocations : (not relocatable)
Packager    : CentOS BuildSystem <http://bugs.centos.org>
Vendor      : CentOS
Summary     : CentOS Linux release file
Description :
CentOS Linux release files
/etc/centos-release
/etc/centos-release-upstream
/etc/issue
/etc/issue.net
/etc/os-release
/etc/pki/rpm-gpg
/etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
/etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-Debug-7
/etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-Testing-7
/etc/redhat-release
/etc/rpm/macros.dist
/etc/system-release
/etc/system-release-cpe
/etc/yum.repos.d/CentOS-Base.repo
/etc/yum.repos.d/CentOS-CR.repo
/etc/yum.repos.d/CentOS-Debuginfo.repo
/etc/yum.repos.d/CentOS-Media.repo
/etc/yum.repos.d/CentOS-Sources.repo
/etc/yum.repos.d/CentOS-Vault.repo
/etc/yum.repos.d/CentOS-fasttrack.repo
/etc/yum/vars/infra
/usr/lib/systemd/system-preset/85-display-manager.preset
/usr/lib/systemd/system-preset/90-default.preset
/usr/share/centos-release/EULA
/usr/share/doc/centos-release/Contributors
/usr/share/doc/centos-release/GPL
/usr/share/doc/redhat-release
/usr/share/redhat-release

Twiddling the -release files to read something else but 7-5.1804 might do the trick, but it is obviously better to use the release package.

  • While yum info only lists centos-release-7-5 as installed, it claims that other versions are already installed, e.g. when doing yum install centos-release-7-7.1908.0.el7.centos.x8664

Manual install:

yum install yum-utils
yumdownloader centos-release-7-7.1908.0.el7.centos.x86_64
rpm -iv --replacefiles --force ./centos-release-7-7.1908.0.el7.centos.x86_64.rpm

Now upgrade:

yum update

After reboot, /etc/centos-release reads CentOS Linux release 7.7.1908 (Core)

13 [2020-06-03 Wed] Upgrade htest 2.10.6 to 2.12.4

lxfs317-320 form htest with versions identical to Hebe. lxfs319/320 are the OSS, with role lustrehtestoss.

  • Check role lustrehtestoss and comment out the two file-sections writing /etc/yum.repos.d/zfs-server.repo and /etc/yum.repos.d/zfs.repo
  • Get back the original CentOS-Base.repo, even with the Cern-URL in it
yum clean all                                                             
rm -rf /var/cache/yum                                                  
ainsl /etc/yum.conf http_caching=none                                                    
yum install yum-utils
yumdownloader centos-release-7-7.1908.0.el7.centos.x86_64 
rpm -iv --replacefiles --force ./centos-release-7-7.1908.0.el7.centos.x86_64.rpm
yum makecache          
yum check-update                                                                           
yum update                                                                                    
  • To get a kernel fitting Lustre 2.12.4, use the repo from Cern again as CentOS-Base.repo:
[base]
name=CentOS-$releasever - Base
baseurl=http://linuxsoft.cern.ch/cern/centos/$releasever/os/$basearch/
gpgcheck=1
enabled=1
protect=1
priority=5
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#released updates 
[updates]
name=CentOS-$releasever - Updates
baseurl=http://linuxsoft.cern.ch/cern/centos/$releasever/updates/$basearch/
gpgcheck=1
enabled=1
protect=1
priority=5
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

Try the most recent variant:

yum install kernel-3.10.0-1062.18.1.el7.x86_64

13.1 [2020-06-05 Fri] Upgrade lxfs320

The Lustre 2.12.4 branch on Whamcloud has subdirs for Centos 7.7 (and 8.1). This suggests upgrading to 7.7, by installing centos-release-7-7.1908.0.el7.centos.x8664.rpm. This works, yum update installs the corresponding packages, kernel 3.10.0-1062 boots. However, adding the ZOL repo by yum install http://download.zfsonlinux.org/epel/zfs-release.el7_7.noarch.rpm and installing yum install zfs would put zfs 0.8x into the system.

  • The Lustre repos contain the DKMS versions, so installing them would put zfs 0.7.13 together with Lustre 2.12.4

Instead, install the ZOL for 7.6:

[root@lxfs320 ~]# yum install http://download.zfsonlinux.org/epel/zfs-release.el7_6.noarch.rpm

  • Make sure kmod is enabled, dkms is disabled.
[root@lxfs320 ~]# yum install zfs

[root@lxfs320 ~]# yum remove zfs zfs-kmod spl spl-kmod libzfs2 libnvpair1 libuutil1 libzpool2 zfs-release
[root@lxfs320 ~]# yum install http://download.zfsonlinux.org/epel/zfs-release.el7_6.noarch.rpm
[root@lxfs320 ~]# yum autoremove
[root@lxfs320 ~]# yum clean metadata
[root@lxfs320 ~]# yum install zfs

After rebooting in the new kernel, the zpools are available.

  • Copy the Lustre packages for 2.12.4, install
[root@lxfs320 ~]# yum install ./kmod-lustre-2.12.4-1.el7.x86_64.rpm ./kmod-lustre-osd-zfs-2.12.4-1.el7.x86_64.rpm ./lustre-2.12.4-1.el7.x86_64.rpm ./lustre-osd-zfs-mount-2.12.4-1.el7.x86_64.rpm

13.2 [2020-06-05 Fri] Upgrade lxfs318

Same procedure for the system upgrade: get the original CentOS-Base.repo, get the release package, install locally with overrides, restore the previous yum.repos.d-files, install the kernel.

yum update fails with

Transaction check error:
  file /usr/lib64/libibmad.so.5 from install of infiniband-diags-2.1.0-1.el7.x86_64 conflicts with file from package libibmad-5.0.0.MLNX20181022.0361c15-0.1.45101.x86_64

This libibmad comes from the previous installation with MOFED.

  • Remove infiniband-diags
  • Do yum update
  • Update lustre-server.repo to the 2.12.4 location
  • Install the Lustre packages:
yum install kmod-lustre.x86_64 kmod-lustre-osd-ldiskfs.x86_64 lustre.x86_64 lustre-osd-ldiskfs-mount.x86_64

  • Install infiniband-diags
  • Reboot: the booted system has no network: some modules were not loaded.
    • Create a file /etc/modules-load.d/ib.conf, containing the usual suspects. (effect not yet tested)

13.2.1 DRBD

The modules for DRBD are created from drbd-8.4.11-1.tar.gz.

  • Get the necessary devel packages
yum install kernel-devel-3.10.0-1062.18.1.el7.x86_64 gcc make automake autoconf libxslt libxslt-devel flex rpm-build

  • Unpack drbd and run make km-rpm in the drbd-8.4.11-1 directory. The resulting drbd-km-3.10.0_1062.18.1.el7.x86_64-8.4.11-1.x86_64.rpm can be installed, the module is loadable.

14 [2020-07-01 Wed] Upgrade lxfs322: h2test

Due to worries about https://jira.whamcloud.com/browse/LU-13392, try to replay all of the Hebe history.

14.0.1 Start version 2.10.2

Unfortunately, the start version is not exactly know. Install lxfs322/323/324/330 with CentOS 7.4, ZFS 0.7.4-2 and Lustre 2.10.2. Filesystemname h2test

  • User-IDs / LDAP connection does not work on these MDSes (lxfs322+323)
  • Copy the entire /u/troth directory to h2test: /h2test/hpc/troth on mds0 with some subdirectories on mds1
    • Copy of that as /h2test/test on mds1

14.1 Upgrade to 2.10.5

14.1.1 ZFS

Instead of messing around with upstream and Cern repositories, try our own mirror.

  • Get centos-release-7-5.1804.4.el7.cern.x8664.rpm and install locally
  • Insert lxrpt2 in the repos:
[base]
name=CentOS-$releasever - Base
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
baseurl=http://mirror.gsi.de/centos/7.5.1804/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#released updates 
[updates]
name=CentOS-$releasever - Updates
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
baseurl=http://mirror.gsi.de/centos/7.5.1804/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras&infra=$infra
baseurl=http://mirror.gsi.de/centos/7.5.1804/extras/$basearch/
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

yum update really sticks to CentOS-7.5-packages this time.

  • On the OSS, run yum update --skip-broken, the ZFS packages get in the way.

After reboot, make sure that /etc/yum.repos.d/zfs.repo uses the URL

baseurl=http://download.zfsonlinux.org/epel/7.5/kmod/$basearch

Install ZFS

yum install kmod-zfs-0.7.9-1.el7_5.x86_64 kmod-spl-0.7.9-1.el7_5.x86_64 zfs-0.7.9-1.el7_5.x86_64 spl-0.7.9-1.el7_5.x86_64 libzfs2-0.7.9-1.el7_5.x86_64 libzpool2-0.7.9-1.el7_5.x86_64 libnvpair1-0.7.9-1.el7_5.x86_64 

Again link the modules to the correct locations by ./link_modules.sh

14.1.2 Module osdzfs

osd_zfs refuses to load, irrespective of the package installed. -> Build new packages

yum install yum-utils kmod-zfs-devel libzfs2-devel rpm-build  libselinux-devel libtool 
yum install yum-utils  rpm-build  libselinux-devel libtool 
yum install kmod-zfs-devel-0.7.9-1.el7_5.x86_64 libzfs2-devel-0.7.9-1.el7_5.x86_64
yum install kernel-devel-3.10.0-862.14.4.el7.x86_64
rpmbuild --rebuild --with zfs --without ldiskfs lustre-2.10.5-1.src.rpm 
cd rpmbuild/RPMS/x86_64/
yum reinstall ./lustre-osd-zfs-mount-2.10.5-1.el7.cern.x86_64.rpm ./kmod-lustre-2.10.5-1.el7.cern.x86_64.rpm ./kmod-lustre-osd-zfs-2.10.5-1.el7.cern.x86_64.rpm ./lustre-2.10.5-1.el7.cern.x86_64.rpm

Now Lustre works. The freshly build packages are installed on lxfs330, too: modules load without problems.

  • The difference to the packages built previously, which are also on lxrpt2, is unclear.

14.1.3 MDS

Add lxrpt2 as repo for CentOSBase

baseurl=http://mirror.gsi.de/centos/7.5.1804/os/$basearch/

Repo for in lustre-server.repo:

baseurl = http://mirror.gsi.de/centos/lustre-repository/lustre-2.10.5/el7.5.1804/patchless-ldiskfs-server

yum install e2fsprogs-1.44.3.wc1-0.el7.x86_64
shutdown -r now
yum install drbd-km-3.10.0_862.14.4.el7.x86_64.x86_64
yum install kmod-lustre-osd-ldiskfs-2.10.5-1.el7.x86_64 lustre-osd-ldiskfs-mount-2.10.5-1.el7.x86_64 lustre-2.10.5-1.el7.x86_64 kmod-lustre-2.10.5-1.el7.x86_64

14.2 Upgrade to 2.10.6

  • CentOS remains at 7.5
  • ZFS remains at 0.7.9
  • zfs-server.repo now with URL baseurl = http://mirror.gsi.de/centos/lustre-repository/lustre-2.10.6/zfs-0.7.9/zfs-server
yum install kmod-lustre-2.10.6-1.el7.cern.x86_64 kmod-lustre-osd-zfs-2.10.6-1.el7.cern.x86_64 lustre-2.10.6-1.el7.cern.x86_64 lustre-osd-zfs-mount-2.10.6-1.el7.cern.x86_64

Reboot now - important, otherwise the modules don't load.

14.2.1 MDS

Kernel is now 3.10.0-957.27.2, therefore the existing DRBD modules don't fit.

tar xzf drbd-8.4.11-1.tar.gz 
cd drbd-8.4.11-1
yum install kernel-devel-3.10.0-957.27.2.el7.x86_64 kernel-headers-3.10.0-957.27.2.el7.x86_64
make km-rpm
yum install /root/rpmbuild/RPMS/x86_64/drbd-km-3.10.0_957.27.2.el7.x86_64-8.4.11-1.x86_64.rpm

URL in lustre-server.repo:

baseurl = http://mirror.gsi.de/centos/lustre-repository/lustre-2.10.6/el7.5.1804/patchless-ldiskfs-server

yum install kmod-lustre-2.10.6-1.el7.x86_64 kmod-lustre-osd-ldiskfs-2.10.6-1.el7.x86_64 lustre-2.10.6-1.el7.x86_64 lustre-osd-ldiskfs-mount-2.10.6-1.el7.x86_64

14.3 selinux

  • Removing selinux can be quite desatrous:
lxfs322: yum remove selinux-policy-targeted

  • At least the config in /etc/selinux/conf has to be set to "No", otherwise login, network and of course Lustre won't work (D-Bus errors)
  • Reinstalling all kinds of selinux-packages seems to help a little.
  • The output of tunefs.lustre --dryrun /dev/drbd0 contains
Persistent mount opts: user_xattr,errors=remount-ro,context="unconfined_u:object_r:user_tmp_t:s0"

After messing with selinux, the part

context="unconfined_u:object_r:user_tmp_t:s0

is no longer understood! Running

tunefs.lustre --mountfsoptions="user_xattr,errors=remount-ro" /dev/drbd0

helps.

Procedure could be avoided on lxfs323 by not removing selinux.

14.4 Upgrade to 2.12.5

14.4.1 OSS

baseurl=http://linuxsoft.cern.ch/cern/centos/$releasever/os/$basearch/

yum clean all                                                             
rm -rf /var/cache/yum                                                  
ainsl /etc/yum.conf http_caching=none                                                    
yum install yum-utils
yumdownloader centos-release-7-8.2003.0.el7.centos.x86_64
rpm -iv --replacefiles --force ./centos-release-7-8.2003.0.el7.centos.x86_64.rpm
yum makecache          
yum check-update                                                                           
yum --security update # 6 Minuten
yum update            # 3 Minuten                                                                        
yum update            # 8 Minuten

Lustre 2.12.5 is running under Centos 7.8, zfs 0.7.13 -> Upgrade CentOS to latest version.

  • Install kernel-3.10.0-1127.13.1.el7.x86_64
[root@lxfs330 ~]# yum remove zfs zfs-kmod spl spl-kmod libzfs2 libnvpair1 libuutil1 libzpool2 zfs-release # 5 Minuten
[root@lxfs330 ~]# yum install http://download.zfsonlinux.org/epel/zfs-release.el7_6.noarch.rpm
[root@lxfs330 ~]# yum autoremove # 10 sec
[root@lxfs330 ~]# yum clean metadata
[root@lxfs330 ~]# yum install zfs    # 4:20 Minuten

However, the kmod-zfs packages are compiled for the Linux kernel 3.10.0-957.5.1.el7.x8664 The patched kernel - branch of Lustre 2.12.5 shows a kernel 3.10.0-1127.8.2, where these zfs modules will never fit. -> DKMS

[root@lxfs324 ~]# yum install  https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
[root@lxfs324 ~]# yum install dkms kernel-devel kernel-header-$(uname -r)
[root@lxfs324 ~]# rm -f /lib/modules/3.10.0-1127.8.2.el7.x86_64/build
[root@lxfs324 ~]# ln -s /usr/src/kernels/3.10.0-1127.13.1.el7.x86_64 /lib/modules/3.10.0-1127.8.2.el7.x86_64/build
[root@lxfs324 ~]# time yum install -y zfs spl zfs-dkms spl-dkms libnvpair1 libzpool2 libzfs2
real7m26.486s
user8m21.642s
sys3m8.144s

[root@lxfs324 ~]# time yum remove kmod-lustre kmod-lustre-osd-zfs lustre lustre-osd-zfs-mount
real2m50.543s
user2m16.870s
sys1m1.576s

[root@lxfs324 ~]# time yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
real7m54.996s
user13m37.273s
sys3m35.039s
[root@lxfs330 ~]# yum install  https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
[root@lxfs330 yum.repos.d]# time yum install -y dkms kernel-devel kernel-header-$(uname -r)

real1m31.909s
user0m42.738s
sys0m14.427s

[root@lxfs330 ~]# time yum remove kmod-lustre kmod-lustre-osd-zfs lustre lustre-osd-zfs-mount
real2m14.214s
user1m42.296s
sys0m44.352s

[root@lxfs330 ~]# time yum install -y zfs spl zfs-dkms spl-dkms libnvpair1 libzpool2 libzfs2
real6m7.465s
user7m23.926s
sys2m46.674s

[root@lxfs330 ~]# time yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
real7m45.135s
user13m27.149s
sys3m32.616s


14.4.2 MDS

On lxfs322, have CentOS-Base.repo with baseurl=http://linuxsoft.cern.ch/cern/centos/$releasever/os/$basearch/

yum clean all
rm -rf /var/cache/yum
ainsl /etc/yum.conf http_caching=none
yum check-update

will install CenOS 7.8 packages

[root@lxfs322 ~]# yum --security update  # 8:25 minutes
[root@lxfs322 ~]# yumdownloader centos-release-7-8.2003.0.el7.centos.x86_64
[root@lxfs322 ~]# rpm -iv --replacefiles --force ./centos-release-7-8.2003.0.el7.centos.x86_64.rpm
[root@lxfs322 ~]# yum update -y    # 5:20 Minuten
[root@lxfs322 ~]# time yum install kmod-lustre kmod-lustre-osd-ldiskfs lustre lustre-osd-ldiskfs-mount
real7m27.639s
user5m20.849s
sys1m38.016s


[root@lxfs323 ~]# time yum install kmod-lustre kmod-lustre-osd-ldiskfs lustre lustre-osd-ldiskfs-mount
real9m5.468s
user6m27.584s
sys2m41.520s

yum remove opensm-libs-5.3.0.MLNX20181108.33944a2-0.1.45101.x86_64 libibmad-5.0.0.MLNX20181022.0361c15-0.1.45101.x86_64 mlnx-ofa_kernel-4.5-OFED.4.5.1.0.1.1.gb4fdfac.x86_64
# 4 Minuten
[root@lxfs328 ~]# yumdownloader centos-release-7-8.2003.0.el7.centos.x86_64
[root@lxfs328 ~]# rpm -iv --replacefiles --force ./centos-release-7-8.2003.0.el7.centos.x86_64.rpm
[root@lxfs328 ~]# yum clean all
[root@lxfs328 ~]# rm -rf /var/cache/yum
[root@lxfs328 ~]# ainsl /etc/yum.conf http_caching=none
[root@lxfs328 ~]# yum check-update
[root@lxfs328 ~]# time yum remove opensm-libs-5.3.0.MLNX20181108.33944a2-0.1.45101.x86_64 libibmad-5.0.0.MLNX20181022.0361c15-0.1.45101.x86_64 mlnx-ofa_kernel-4.5-OFED.4.5.1.0.1.1.gb4fdfac.x86_64 666:centos-release-7-5.1804.4.el7.cern.x86_64
[root@lxfs328 ~]# yum -y update # 9 Minuten
[root@lxfs328 ~]# 
[root@lxfs328 ~]# uname -a
[root@lxfs328 ~]# select-grub2-kernel.rb 0
[root@lxfs328 ~]# cat /usr/lib/os-release
[root@lxfs328 ~]# cat /etc/modules-load.d/ib.conf
[root@lxfs328 ~]# cat /etc/sysconfig/network-scripts/ifcfg-ib0
[root@lxfs328 ~]# shutdown -r now
[root@lxfs328 ~]# yum install drbd-km-3.10.0_1127.13.1.el7.x86_64-8.4.11-1.x86_64
[root@lxfs328 ~]# yum install -y e2fsprogs-1.45.6.wc1-0.el7.x86_64
[root@lxfs328 ~]# time yum install -y kmod-lustre kmod-lustre-osd-ldiskfs lustre lustre-osd-ldiskfs-mount
real3m44.242s
user2m55.286s
sys0m59.036s

15 [2020-07-23 Thu] Upgrade hebetest to 2.12.5

15.1 Fun with modules

If a kernel module will not load, although it has been compiled with DKMS specirically for the running kernel, it might be due to remnants of older modules in some weak-updates subdir under /lib/modules/

depmod -a

might give a hint: if there is a messages as ERROR: fstatat(4, ksocklnd.ko.xz): No such file or directory Removing dead links and old stuff might make the real modules loadable.

15.2 OSS

lxfstest01:

baseurl=http://linuxsoft.cern.ch/cern/centos/$releasever/os/$basearch/

yum clean all                                                             
ainsl /etc/yum.conf http_caching=none                                                    
yumdownloader centos-release-7-8.2003.0.el7.centos
rpm -iv --replacefiles --force ./centos-release-7-8.2003.0.el7.centos.x86_64.rpm
yum makecache          
yum check-update                                                                           
yum --security update # 19m29.124s  Runs DKMS
yum update            # 0m29.792s                 
[root@lxfstest03 ~]# yum install kernel-3.10.0-1127.8.2.el7.x86_64  # 6 min
[root@lxfstest01 ~]# time rpm --rebuilddb && real 0m59.404s
[root@lxfstest01 ~]# time yum remove -y zfs zfs-kmod spl spl-kmod libzfs2 libnvpair1 libuutil1 libzpool2 zfs-release  # real 8m15.083s

[root@lxfstest01 ~]# time yum install -y zfs spl zfs-dkms spl-dkms libnvpair1 libzpool2 libzfs2  # real 12m4.744s

[root@lxfstest01 ~]# time yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms  # real 10m20.240s
[root@lxfstest03 ~]# time yum install -y zfs spl zfs-dkms spl-dkms libnvpair1 libzpool2 libzfs2  # real 0m9.209s

[root@lxfstest03 ~]# time yum reinstall -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms real 6m45.206s
[root@lxfstest02 ~]# time yum install -y zfs spl zfs-dkms spl-dkms libnvpair1 libzpool2 libzfs2  # real 8m2.602s
[root@lxfstest02 yum.repos.d]# time yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms  # real 7m53.372s

15.3 MDS

root@lxmds17:~# yum clean all
root@lxmds17:~# rm -rf /var/cache/yum
root@lxmds17:~# ainsl /etc/yum.conf http_caching=none
root@lxmds17:~# yum check-update

root@lxmds17:~# time yum --security -y update  # real  30m16.032s
root@lxmds18:~# time yum --security -y update  # real  13m48.127s

root@lxmds17:~# yumdownloader centos-release-7-8.2003.0.el7.centos.x86_64                                                                                                                                                                   
root@lxmds17:~# rpm -iv --replacefiles --force ./centos-release-7-8.2003.0.el7.centos.x86_64.rpm                                                                                                                                            
root@lxmds17:~# time yum update -y    # real  2m3.565s
root@lxmds18:~# time yum update -y    # real 2m2.759s

root@lxmds18:~# cat /usr/lib/os-release                                                                                                                                                                                                     
root@lxmds18:~# cat /etc/modules-load.d/ib.conf                                                                                                                                                                                             
root@lxmds18:~# cat  /etc/sysconfig/network-scripts/ifcfg-ib0                                                                                                                                                                               
root@lxmds18:~# select-grub2-kernel.rb 0 
root@lxmds18:~# shutdown -r now                                                                                                                                                                                                             


root@lxmds17:~# yum install drbd-km-3.10.0_1127.13.1.el7.x86_64-8.4.11-1.x86_64                                                                                                                                                             
root@lxmds17:~# yum install -y e2fsprogs-1.45.6.wc1-0.el7.x86_64                                                                                                                                                                            
root@lxmds17:~# time yum install -y kmod-lustre kmod-lustre-osd-ldiskfs lustre lustre-osd-ldiskfs-mount  # real  9m3.183s
root@lxmds18:~# time yum install -y kmod-lustre kmod-lustre-osd-ldiskfs lustre lustre-osd-ldiskfs-mount  # real 11m4.864s

16 Upgrade duration

16.1 OSS

Action Duration Duration other server
Preparations 5 min 5 min
yum –security update 6 min 20 min
yum update 8 min 30 sec
yum remove zfs … 5 min 9 min
Intermediate steps 2 min 2 min
Reboot 5 min 3 h
yum install dkms … 3 min 3 min
Intermediate steps 1 min 1 min
yum install zfs … 8 min 12 min
yum remove lustre … 3 min 3 min
yum install lustre … 8 min 10 min
yum reinstall lustre …   7 min
  54 min 72 min + Reboot

16.2 MDS

Action Duration Duration other server
Preparations 5 min 5 min
yum –security -y update 30 min 14 min
Intermediate steps 2 min 2 min
yum update -y 2 min 2 min
Intermediate steps 4 min 4 min
Reboot 5 min 3 h
Intermediate steps 1 min 1 min
yum install lustre 9 min 11 min
yum remove MODFED4.5 4 min 6 min
Intermediate steps 2 min 2 min
  64 min 47 min + Reboot

17 lxfs319, lxfs320

[root@lxfs319 ~]# rpm -iv --replacefiles --force ./centos-release-7-8.2003.0.el7.centos.x86_64.rpm

[root@lxfs319 ~]# cat yummy.sh
#!/bin/bash

yum clean all
rm -rf /var/cache/yum 
ainsl /etc/yum.conf http_caching=none
yum makecache
yum check-update
yum --security update -y

[root@lxfs319 ~]# time ./yummy.sh
  real7m31.972s
  user5m54.647s
  sys1m59.958s

[root@lxfs319 ~]# time yum remove -y zfs  lustre-osd-zfs-mount  spl
real0m11.502s
user0m8.818s
sys0m1.322s

[root@lxfs319 ~]# time yum update -y
eal1m27.859s
user0m47.210s
sys0m21.155s

[root@lxfs319 ~]# time yum install -y zfs spl zfs-dkms spl-dkms libnvpair1 libzpool2 libzfs2
real5m28.842s
user6m54.384s
sys2m33.072s

[root@lxfs319 ~]# time yum remove -y kmod-lustre kmod-lustre-osd-zfs lustre lustre-osd-zfs-mount
real1m35.174s
user1m17.544s
sys0m32.936s

[root@lxfs319 ~]# time yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
real8m0.020s
user13m39.496s
sys3m35.254s
[root@lxfs320 ~]# time rpm -iv --replacefiles --force ./centos-release-7-8.2003.0.el7.centos.x86_64.rpm
 
[root@lxfs320 ~]# time yum remove -y zfs spl kmod-zfs kmod-spl
real5m9.319s
user3m48.750s
sys1m13.531s

[root@lxfs320 ~]# cat yummy.sh
#!/bin/bash

yum clean all
rm -rf /var/cache/yum 
ainsl /etc/yum.conf http_caching=none
yum makecache
yum check-update
yum --security update -y
yum update -y

[root@lxfs320 ~]# time ./yummy.sh
real7m8.906s
user3m45.165s
sys1m6.738s

[root@lxfs320 ~]# time ./yummy.sh
real7m8.906s
user3m45.165s
sys1m6.738s


[root@lxfs320 ~]# select-grub2-kernel.rb
[root@lxfs320 ~]# select-grub2-kernel.rb 0
[root@lxfs320 ~]# shutdown -r now
[root@lxfs320 ~]# uname -r
3.10.0-1127.19.1.el7.x86_64

[root@lxfs320 ~]# rm -f /etc/yum.repos.d/zfs*

[root@lxfs320 ~]# cat /etc/yum.repos.d/zfs-server.repo 

[zfs-server]
name = zfs-server
#baseurl = http://mirror.gsi.de/centos/lustre-repository/lustre-2.10.6/zfs-0.7.9/zfs-server
#baseurl = http://mirror.gsi.de/centos/lustre-repository/lustre-2.12.4/el7.7.1908/patchless-ldiskfs-server
baseurl = http://mirror.gsi.de/centos/lustre-repository/lustre-2.12.5/el7.8.2003/patchless-ldiskfs-server
enabled = 1
gpgcheck = 0

[root@lxfs320 ~]# yum install -y  https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

[root@lxfs320 ~]# time yum install -y dkms kernel-devel kernel-header-$(uname -r)
real1m46.603s
user0m31.912s
sys0m13.835s

[root@lxfs320 ~]# time yum install -y zfs spl zfs-dkms spl-dkms libnvpair1 libzpool2 libzfs2
real9m5.151s
user9m21.059s
sys3m34.682s

[root@lxfs320 ~]# time yum remove -y kmod-lustre kmod-lustre-osd-zfs lustre lustre-osd-zfs-mount
real1m37.045s
user1m16.784s
sys0m31.713s

[root@lxfs320 ~]# time yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
real8m46.766s
user14m5.697s
sys3m48.931s

18 lxfs317

Fix /etc/yum.repos.d/e2fsprogs.repo to

baseurl = http://mirror.gsi.de/centos/lustre-repository/e2fsprogs/1.45.6.wc1/el7

Fix /etc/yum.repos.d/lustre-server.repo to

baseurl = http://mirror.gsi.de/centos/lustre-repository/lustre-2.12.5/el7.8.2003/patchless-ldiskfs-server

[root@lxfs317 ~]# cat yummy.sh                                                                                                                                                                                                                
#!/bin/bash                                                                                                                                                                                                                                   
                                                                                                                                                                                                                                              
yum clean all                                                                                                                                                                                                                                 
rm -rf /var/cache/yum                                                                                                                                                                                                                         
ainsl /etc/yum.conf http_caching=none                                                                                                                                                                                                         
yum makecache                                                                                                                                                                                                                                 
yum check-update                                                                                                                                                                                                                              
yum --security update -y                                                                                                                                                                                                                      
yum update -y                                                                                                                                                                                                                                 

[root@lxfs317 ~]# time ./yummy.sh 
real26m8.312s
user20m32.912s
sys5m0.916s
[root@lxfs317 ~]# mkdir -p /root/rpmbuild/{BUILD,BUILDROOT,RPMS,SOURCES,SPECS,SRPMS}
[root@lxfs317 ~]# tar xzf drbd-8.4.11-1.tar.gz
[root@lxfs317 ~]# yum install -y kernel-devel-$(uname -r) kernel-headers-$(uname -r) rpm-build gcc make automake autoconf libxslt libxslt-devel flex
[root@lxfs317 ~]# cd drbd-8.4.11-1
[root@lxfs317 ~]# make km-rpm
[root@lxfs317 ~]# yum install rpmbuild/RPMS/x86_64/drbd-km-3.10.0_1127.19.1.el7.x86_64-8.4.11-1.x86_64.rpm
[root@lxfs317 ~]# modprobe -v drbd
[root@lxfs317 ~]# blkid | grep drbd

time yum install kmod-lustre (kmod-lustre-2.12.6-1.el7.x8664) real 6m53.982s user 5m9.830s sys 2m15.529s

19 lxfs318

[root@lxfs318 yum.repos.d]# cat e2fsprogs.repo
#
# DO NOT CHANGE THIS FILE MANUALLY!
#
# This file is managed by the Chef configuration management system
#

[e2fsprogs]
name = e2fsprogs
# baseurl = http://mirror.gsi.de/centos/lustre-repository/e2fsprogs/1.42.13.wc6/el7
# baseurl = http://mirror.gsi.de/centos/lustre-repository/e2fsprogs/1.44.5.wc1/el7
baseurl = http://mirror.gsi.de/centos/lustre-repository/e2fsprogs/1.45.6.wc1/el7
enabled = 1
gpgcheck = 0


[root@lxfs318 yum.repos.d]# cat lustre-server.repo
#
# DO NOT CHANGE THIS FILE MANUALLY!
#
# This file is managed by the Chef configuration management system
#

[lustre-server]
name = lustre-server
# baseurl = http://mirror.gsi.de/centos/lustre-repository/lustre-2.10.2/el7.4.1708/server
# baseurl = http://mirror.gsi.de/centos/lustre-repository/lustre-2.10.5/el7.5.1804/patchless-ldiskfs-server
# baseurl = http://mirror.gsi.de/centos/lustre-repository/lustre-2.12.4/el7.7.1908/patchless-ldiskfs-server
baseurl = http://mirror.gsi.de/centos/lustre-repository/lustre-2.12.5/el7.8.2003/patchless-ldiskfs-server
enabled = 1
gpgcheck = 0
#!/bin/bash

yum clean all
rm -rf /var/cache/yum 
ainsl /etc/yum.conf http_caching=none
yum makecache
yum check-update
yum --security update -y
yum update -y
[root@lxfs318 ~]# time ./yummy.sh
real24m48.654s
user19m5.325s
sys5m13.208s

19.1 Changing device names - DRBD

If DRBD is configured on a device name that might change, blkid can help:

[root@lxfs318 ~]# blkid  | grep drbd
/dev/sdcw: UUID="7cb98ee4012c3bcd" TYPE="drbd" 
/dev/sdek: UUID="7cb98ee4012c3bcd" TYPE="drbd" 
/dev/mapper/mpathct: UUID="7cb98ee4012c3bcd" TYPE="drbd" 

-> Change the device name in /etc/drbd.d/res to the correct device name.

20 lxfs485

  • Remove centos-release-7-5.1804.4.el7.cern.x86_64.rpm from mirror.gsi.de/centos/gsi-repository: makes a fresh installation with CentOS 7.8 (the mirror in kickstart) to write
# cat /etc/centos-release
CentOS Linux release 7.8.2003 (Core)
  • Add joe and chef-13.7.16-1.el7.x86_64 to kickstart
  • Download
clustershell-1.8.3-1.el7.noarch.rpm
colordiff-1.0.19-1.el7.noarch.rpm
dkms-2.8.4-1.el7.noarch.rpm
htop-2.2.0-3.el7.x86_64.rpm
ipmiutil-3.1.2-3.el7.x86_64.rpm
nagios-plugins-2.3.3-2.el7.x86_64.rpm
nagios-plugins-perl-2.3.3-2.el7.x86_64.rpm
python2-clustershell-1.8.3-1.el7.noarch.rpm

on a server with epel enabled and upload all packges to mirror.gsi.de/centos/gsi-repository. Afterwards, chef-client will install without epel enabled.

20.1 Hard disks

  • Load multipath module modprobe -v dm_multipath and start it systemctl start multipathd
  • Run the usual three steps
update-sas-oss-disk-map
udevadm trigger --action=add
udevadm settle
  • Check /dev/disk/by-location
  • Enable gsi-mirror
emacs -nw /etc/yum.repos.d/CentOS-Base.repo
baseurl=http://mirror.gsi.de/centos/$releasever/os/$basearch/

yum clean all
ainsl /etc/yum.conf http_caching=none
yum makecache
  • The system gets installed with kernel 3.10.0-1127.el7.x86_64
    • On the gsi-mirror, the fitting headers and devels are found:
yum install kernel-headers-3.10.0-1127.el7.x86_64 kernel-devel-3.10.0-1127.el7.x86_64 dkms
  • Now install ZFS
yum install zfs spl zfs-dkms spl-dkms libnvpair1 libzpool2 libzfs2
  • Create zpools with format_ost_hebe.sh.

21 Caveat with lustre-zfs-dkms

The new OSS have been installed with kernel 3.10.0-1127.el7.x86_64.

  • If ZFS is installed as above, under kernel 3.10.0-1127.el7.x86_64 / with kernel-devel-3.10.0-1127.el7.x86_64, then the spl and zfs objects created by dkms will be found in

/var/lib/dkms/[spl,zfs]/0.7.13/3.10.0-1127.el7.x86_64.

  • lustre-zfs-dkms needs these objects. For example on lxfs460, the config.log is still there and reads at the beginning
./configure --prefix=/usr --enable-modules --disable-iokit --disable-snmp --disable-doc --disable-utils --disable-tests --disable-maintainer-mode --with-linux=/lib/modules/3.10.0-1127.19.1.el7.x86_64/build --with-linux-obj=/lib/modules/3.10.0-1127.19.1.el7.x86_64/build --disable-gss --enable-server --disable-ldiskfs --with-linux=/lib/modules/3.10.0-1127.19.1.el7.x86_64/build --with-linux-obj=/lib/modules/3.10.0-1127.19.1.el7.x86_64/build --with-spl=/usr/src/spl-0.7.13 --with-spl-obj=/var/lib/dkms/spl/0.7.13/3.10.0-1127.19.1.el7.x86_64/x86_64 --with-zfs=/usr/src/zfs-0.7.13 --with-zfs-obj=/var/lib/dkms/zfs/0.7.13/3.10.0-1127.19.1.el7.x86_64/x86_64 --disable-manpages --disable-mpitests

  • On lxfs466, the paths /var/lib/dkms/spl/0.7.13/3.10.0-1127.19.1.el7.x86_64 and /var/lib/dkms/zfs/0.7.13/3.10.0-1127.19.1.el7.x86_64 do not exist!
  • Solution: create these paths as symbolic links, remove and install lustre-zfs-dkms - works.

22 [2021-03-10 Wed] Try hebetest- upgrade to 2.12.6

The packages for 2.12.6 are made for CentOS 7.9, so upgrade at least the kernel.

=lxfstest02=

2021-03-10 13:37:53 yum install kernel-3.10.0-1160.2.1.el7.x86_64
2021-03-10 13:41:46 shutdown -r now
2021-03-10 13:46:47 time yum install -y dkms kernel-devel kernel-header-$(uname -r)
2021-03-10 13:48:48 yum remove kernel-devel-3.10.0-1160.15.2.el7
2021-03-10 13:49:12 yum install kernel-devel-3.10.0-1160.2.1.el7
2021-03-10 13:50:07 yum install ./kernel-headers-3.10.0-1160.2.1.el7.x86_64.rpm
2021-03-10 13:52:42 jmacs /etc/yum.repos.d/zfs-server.repo
2021-03-10 13:55:10 yum clean all
2021-03-10 13:55:13 yum makecache
2021-03-10 13:56:38 yum --nogpgcheck --enablerepo=zfs-server install lustre-dkms lustre-osd-zfs-mount lustre lustre-resource-agents zfs

Fails!

2021-03-10 14:02:51 less /var/lib/dkms/lustre-zfs/2.12.6/build/make.log
2021-03-10 14:24:40 cd /lib/modules
2021-03-10 14:24:51 find . -name lustre*
2021-03-10 14:25:17 cd /lib/modules/./3.10.0-1160.2.1.el7.x86_64/weak-updates/
2021-03-10 14:25:37 cd ../../3.10.0-1127.19.1.el7.x86_64/weak-updates
2021-03-10 14:25:40 rm -f *
2021-03-10 14:25:45 cd /lib/modules/./3.10.0-1160.2.1.el7.x86_64/weak-updates/
2021-03-10 14:26:23 rm -f fid.ko.xz fld.ko.xz ksocklnd.ko.xz lfsck.ko.xz libcfs.ko.xz llog_test.ko.xz lmv.ko.xz lnet.ko.xz lnet_selftest.ko.xz lod.ko.xz lov.ko.xz lquota.ko.xz lustre.ko.xz mdc.ko.xz mdd.ko.xz mdt.ko.xz mgc.ko.xz mgs.ko.xz obdclass.ko.xz obdecho.ko.xz ofd.ko.xz osc.ko.xz osd_zfs.ko.xz osp.ko.xz ost.ko.xz ptlrpc.ko.xz
2021-03-10 14:26:52 yum --nogpgcheck --enablerepo=zfs-server reinstall lustre-dkms lustre-osd-zfs-mount lustre
2021-03-10 14:27:18 yum remove lustre-dkms lustre-osd-zfs-mount lustre
2021-03-10 14:28:42 yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
2021-03-10 14:29:55 yum remove lustre-dkms lustre-osd-zfs-mount lustre
2021-03-10 14:30:11 shutdown -r now
2021-03-10 14:36:30 zpool import -d /dev/disk/by-location/
2021-03-10 14:36:43 zpool import -d /dev/disk/by-location/ osspool0
2021-03-10 14:37:18 zpool list
2021-03-10 14:37:27 modinfo lustre
2862  2021-03-10 14:37:57 yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 2863  2021-03-10 14:38:05 cd /etc/yum.repos.d
 2864  2021-03-10 14:38:06 ls
 2865  2021-03-10 14:38:08 jmacs zfs-server.repo
 2866  2021-03-10 14:38:16 yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 2867  2021-03-10 14:39:34 cd /var/lib/dkms/lustre-zfs/2.12.6/build
 2868  2021-03-10 14:39:35 ls
 2869  2021-03-10 14:39:41 less README 
 2870  2021-03-10 14:40:09 ./configure
 2871  2021-03-10 14:45:25 yum reinstall  lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 2872  2021-03-10 14:45:47 make
 2873  2021-03-10 14:45:52 ./configure
 2874  2021-03-10 14:45:55 pwd
 2875  2021-03-10 14:45:56 ls
 2876  2021-03-10 14:46:02 cd
 2877  2021-03-10 14:46:11 yum remove  lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 2878  2021-03-10 14:46:24 yum reinstall  lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 2879  2021-03-10 14:46:30 yum install  lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 2880  2021-03-10 14:49:57 depmod -a
 2881  2021-03-10 14:50:15 ls /lib/modules
 2882  2021-03-10 14:50:32 uname a
 2883  2021-03-10 14:50:33 uname -a
 2884  2021-03-10 14:50:55 less /var/lib/dkms/lustre-zfs/2.12.6/build/make.log
 2885  2021-03-10 14:50:59 less /var/lib/dkms/lustre-zfs/2.12.6/build/
 2886  2021-03-10 14:51:04 cd /var/lib/dkms/lustre-zfs/2.12.6/build/
 2887  2021-03-10 14:51:04 ls
 2888  2021-03-10 14:51:21 kess lustre-dkms_post-build.sh
 2889  2021-03-10 14:51:24 less lustre-dkms_post-build.sh
 2890  2021-03-10 14:51:44 less lustre-dkms_pre-build.sh
 2891  2021-03-10 14:53:00 ./lustre-dkms_pre-build.sh
 2892  2021-03-10 14:57:26 make
 2893  2021-03-10 15:01:15 make rpm
 2894  2021-03-10 15:01:25 find . -name *.ko*
 2895  2021-03-10 15:01:38 dkms install lustre
 2896  2021-03-10 15:02:39 ls
 2897  2021-03-10 15:03:36 less dkms.conf 
 2898  2021-03-10 15:05:36 cd
 2899  2021-03-10 15:05:36 ls
 2900  2021-03-10 15:05:50 scp kernel-headers-3.10.0-1160.2.1.el7.x86_64.rpm lxfstest01:
 2901  2021-03-10 15:07:33 dmks autoinstall
 2902  2021-03-10 15:07:39 dkms autoinstall
 2903  2021-03-10 15:08:27 dkms autoinstall -c /var/lib/dkms/lustre-zfs/2.12.6/source/dkms.conf
 2904  2021-03-10 15:09:16 ls -la /var/lib/dkms/lustre-zfs/2.12.6/source/dkms.conf
 2905  2021-03-10 15:09:18 ls -la /var/lib/dkms/lustre-zfs/2.12.6/source/
 2906  2021-03-10 15:09:21 ls -la /var/lib/dkms/lustre-zfs/2.12.6/
 2907  2021-03-10 15:09:38 dkms  -c /var/lib/dkms/lustre-zfs/2.12.6/source/dkms.conf autoinstall
 2908  2021-03-10 15:09:55 cd /var/lib/dkms/
 2909  2021-03-10 15:09:56 ls
 2910  2021-03-10 15:10:01 cd lustre-zfs/
 2911  2021-03-10 15:10:01 ls
 2912  2021-03-10 15:10:31 mv 2.12.5 ~/var_lib_dkms_lustre-zfs_2.12.5
 2913  2021-03-10 15:10:34 dkms  -c /var/lib/dkms/lustre-zfs/2.12.6/source/dkms.conf autoinstall
 2914  2021-03-10 15:11:23 less /var/lib/dkms/lustre-zfs/2.12.6/build/make.log
 2915  2021-03-10 15:12:07 ls
 2916  2021-03-10 15:12:09 rm -f kernel-3.10.0-1127.13.1.el7.x86_64-x86_64 
 2917  2021-03-10 15:12:28 ls 2.12.6/
 2918  2021-03-10 15:13:54 ls
 2919  2021-03-10 15:13:56 cd ..
 2920  2021-03-10 15:13:56 ls
 2921  2021-03-10 15:14:01 yum remove  lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 2922  2021-03-10 15:14:10 ls
 2923  2021-03-10 15:14:20 yum install  lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 2924  2021-03-10 15:14:42 ls
 2925  2021-03-10 15:14:44 ls lustre-zfs/
 2926  2021-03-10 15:14:58 ls -l /usr/src/kernels/
 2927  2021-03-10 15:15:14 yum search --show-duplicates kernel-header
 2928  2021-03-10 15:15:26 yum info kernel-headers-3.10.0-1160.2.1.el7.x86_64
 2929  2021-03-10 15:15:37 ls
 2930  2021-03-10 15:15:40 ls lustre-zfs/
 2931  2021-03-10 15:16:30 cd
 2932  2021-03-10 15:16:35 yum remove  lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 2933  2021-03-10 15:16:43 shutdown -r now
 2934  2021-03-10 15:21:29 cd /lib/mod
 2935  2021-03-10 15:21:30 cd /lib/modules
 2936  2021-03-10 15:21:31 ls
 2937  2021-03-10 15:21:38 find . -name *lustre*
 2938  2021-03-10 15:22:00 ls var/lib/dkm
 2939  2021-03-10 15:22:00 ls var/lib/dkms
 2940  2021-03-10 15:22:03 ls var/lib/
 2941  2021-03-10 15:22:06 ls /var/lib/dkms/
 2942  2021-03-10 15:22:20 zpool list
 2943  2021-03-10 15:23:44 time yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 2944  2021-03-10 15:25:39 time yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 2945  2021-03-10 15:25:51 time yum reinstall -y  lustre-zfs-dkms
 2946  2021-03-10 15:26:10 cd /var/lib/dkms/
 2947  2021-03-10 15:26:10 ls
 2948  2021-03-10 15:26:12 cd lustre-zfs/
 2949  2021-03-10 15:26:12 ls
 2950  2021-03-10 15:26:14 cd 2.12.6/
 2951  2021-03-10 15:26:15 ls
 2952  2021-03-10 15:26:17 cd build/
 2953  2021-03-10 15:26:17 ls
 2954  2021-03-10 15:26:24 ./lustre-dkms_pre-build.sh 
 2955  2021-03-10 15:36:41 yum searc kmod-lustre
 2956  2021-03-10 15:36:46 yum search kmod-lustre
 2957  2021-03-10 15:40:55 yum info --show-duplicates kmod-lustre
 2958  2021-03-10 15:52:15 lustre-zfs-dkms
 2959  2021-03-10 15:52:48 yum info lustre-osd-zfs-mount
 2960  2021-03-10 15:52:51 cd
 2961  2021-03-10 15:52:56 yum info lustre
 2962  2021-03-10 15:53:06 yum info lustre-zfs-dkms
 2963  2021-03-10 15:53:12 yum remove lustre-zfs-dkms
 2964  2021-03-10 15:53:45 cd /lib/modules
 2965  2021-03-10 15:53:47 find . -type l ! -exec test -e {} \; -print
 2966  2021-03-10 15:54:38 yum install -y kmod-lustre kmod-lustre-osd-zfs
 2967  2021-03-10 15:57:57 modinfo lustre
 2968  2021-03-10 15:58:00 depmod -a
 2969  2021-03-10 15:58:08 shutdown -r now
 2970  2021-03-10 16:14:03 uname -a
 2971  2021-03-10 16:14:07 zpool list
 2972  2021-03-10 16:14:15 ls /dev/disk/by-location/
 2972  2021-03-10 16:14:15 ls /dev/disk/by-location/
 2973  2021-03-10 16:14:23 zpool import -d /dev/disk/by-location/
 2974  2021-03-10 16:17:44 zpool import -d /dev/disk/by-location/ osspool0
 2975  2021-03-10 16:17:48 zpool import -d /dev/disk/by-location/ osspool1
 2976  2021-03-10 16:17:52 zpool import -d /dev/disk/by-location/ osspool2
 2977  2021-03-10 16:17:56 zpool import -d /dev/disk/by-location/ osspool3
 2978  2021-03-10 16:17:59 zpool import -d /dev/disk/by-location/ osspool4
 2979  2021-03-10 16:18:03 zpool import -d /dev/disk/by-location/ osspool5
 2980  2021-03-10 16:18:06 zpool import -d /dev/disk/by-location/ osspool6
 2981  2021-03-10 16:24:20 zpool list
 2982  2021-03-10 16:24:24 uname -a
 2983  2021-03-10 16:24:28 modprobe -v lnet
 2984  2021-03-10 16:24:32 modprobe -v lustre
 2985  2021-03-10 22:06:36 exit
 2986  2021-03-10 22:08:52 lsmod
 2987  2021-03-10 22:08:58 zpool list
 2988  2021-03-10 22:09:09 mount -t lustre osspool0/ost0 /srv/OST0
 2989  2021-03-10 22:09:33 which mount.lustre
 2990  2021-03-10 22:09:44 modinfo lustre
 2991  2021-03-10 22:09:53 yum search lustre
 2992  2021-03-10 22:10:04 yum info lustre
 2993  2021-03-10 22:10:13 yum install -y lustre
 2994  2021-03-10 22:10:24 which mount.lustre
 2995  2021-03-10 22:10:29 mount -t lustre osspool0/ost0 /srv/OST0
  • Somehow, the lustre-zfs-dkms package does not install/compile
  • => Use the kmod packages instead, the running kernel fits these packages.

lxfstest03

3432  2021-03-10 12:56:39 time yum install -y kernel-3.10.0-1160.2.1.el7.x86_64
3433  2021-03-10 13:03:41 shutdown -r now
 3434  2021-03-10 13:09:50 ibstat
 3435  2021-03-10 13:09:55 zpool list
 3436  2021-03-10 13:10:09 zpool list
 3437  2021-03-10 13:10:20 ls /dev/disk/by-location/
 3438  2021-03-10 13:10:34 zpool import -d /dev/disk/by-location/
 3439  2021-03-10 13:10:42 zpool import -d /dev/disk/by-location/ osspool0
 3440  2021-03-10 13:10:49 zpool import -d /dev/disk/by-location/ osspool3
 3441  2021-03-10 13:10:54 zpool import -d /dev/disk/by-location/ osspool4
 3442  2021-03-10 13:10:59 zpool list
 3443  2021-03-10 13:11:03 modprobe -v lnet
 3444  2021-03-10 13:11:19 time yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 3445  2021-03-10 13:11:45 time yum reinstall -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 3446  2021-03-10 13:13:57 modprobe -v lnet
 3447  2021-03-10 13:14:07 uname -a
 3448  2021-03-10 13:15:03 cd /lib/modules
 3449  2021-03-10 13:15:03 ls
 3450  2021-03-10 13:15:32  cd 3.10.0-1127.19.1.el7.x86_64
 3451  2021-03-10 13:15:33 ls
 3452  2021-03-10 13:15:39 ls weak-updates/
 3453  2021-03-10 13:15:43 ls -l weak-updates/
 3454  2021-03-10 13:16:11 ls extra/
 3455  2021-03-10 13:16:34 time yum remove -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 3456  2021-03-10 13:17:01 time yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 3457  2021-03-10 13:17:25 time yum install -y dkms kernel-devel kernel-header-$(uname -r) 
 3458  2021-03-10 13:21:16 time yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 3459  2021-03-10 13:21:21 time yum remove -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 3460  2021-03-10 13:21:25 time yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 3461  2021-03-10 13:22:28 yum search --show-duplicates kernel-header
 3462  2021-03-10 13:22:39 yum install kernel-headers-3.10.0-1160.2.1.el7.x86_64
 3463  2021-03-10 13:22:51 time yum remove -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 3464  2021-03-10 13:22:57 time yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 3465  2021-03-10 13:23:26 cd ..
 3466  2021-03-10 13:23:27 ls
 3467  2021-03-10 13:23:31 cd 3.10.0-1160.2.1.el7.x86_64
 3468  2021-03-10 13:23:31 ls
 3469  2021-03-10 13:23:33 ls -la
 3470  2021-03-10 13:23:40 ls /usr/src/
 3471  2021-03-10 13:23:43 ls /usr/src/kernels/
 3472  2021-03-10 13:24:45 yum info kernel-headers-3.10.0-1160.2.1.el7.x86_64 
 3473  2021-03-10 13:26:28 repoquery -l kernel-headers-3.10.0-1160.2.1.el7.x86_64
 3474  2021-03-10 13:26:56 ls -la /usr/include/video
 3475  2021-03-10 13:27:09 cd ..
 3476  2021-03-10 13:27:09 ls
 3477  2021-03-10 13:27:15 cd 3.10.0-1127.19.1.el7.x86_64
 3478  2021-03-10 13:27:16 ls
 3479  2021-03-10 13:27:17 ls -l
 3480  2021-03-10 13:27:27 cd ../3.10.0-1127.el7.x86_64
 3481  2021-03-10 13:27:28 ls -l
 3482  2021-03-10 13:27:34 cd ../3.10.0-1127.8.2.el7.x86_64
 3483  2021-03-10 13:27:37 ls -l
 3484  2021-03-10 13:27:40 cd ../3.10.0-1127.13.1.el7.x86_64
 3485  2021-03-10 13:27:42 ls
 3486  2021-03-10 13:27:58 cd /usr/src/kernels/
 3487  2021-03-10 13:27:58 ls
 3488  2021-03-10 13:28:18 cd /lib/modules/3.10.0-1160.2.1.el7.x86_64
 3489  2021-03-10 13:28:20 ls -l
 3490  2021-03-10 13:28:24 rm -f build
 3491  2021-03-10 13:28:35 ln -s /usr/src/kernels/3.10.0-1160.15.2.el7.x86_64 build
 3492  2021-03-10 13:28:37 ls -al
 3493  2021-03-10 13:28:43 time yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 3494  2021-03-10 13:28:51 time yum remove -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 3495  2021-03-10 13:28:55 time yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 3496  2021-03-10 13:30:54 cd
 3497  2021-03-10 13:31:07 yumdownloader kernel-headers-3.10.0-1160.2.1.el7.x86_64
 3498  2021-03-10 13:31:23 ls
 3499  2021-03-10 13:31:40 cd /lib/modules
 3500  2021-03-10 13:31:40 ls
 3501  2021-03-10 13:31:43 cd 3.10.0-1160.2.1.el7.x86_64
 3502  2021-03-10 13:31:44 ls
 3503  2021-03-10 13:31:49 ls -la
 3504  2021-03-10 13:31:51 rm -f build/
 3505  2021-03-10 13:31:57 ls -la
 3506  2021-03-10 13:32:02 rm -f build
 3507  2021-03-10 13:32:25 ln -s /usr/src/kernels/3.10.0-1160.2.1.el7.x86_64 build
 3508  2021-03-10 13:32:26 ls -la
 3509  2021-03-10 13:32:28 cd
 3510  2021-03-10 13:32:28 ls
3511  2021-03-10 13:32:35 yum install ./kernel-headers-3.10.0-1160.2.1.el7.x86_64.rpm
 3512  2021-03-10 13:32:50 yum remove kernel-headers-3.10.0-1160.2.1.el7.x86_64
 3513  2021-03-10 13:33:10 yum reinstall ./kernel-headers-3.10.0-1160.2.1.el7.x86_64.rpm 
 3514  2021-03-10 13:33:24 ls /usr/src/kernels/
 3515  2021-03-10 13:33:58 yum whatprovides /usr/src/kernels/3.10.0-1160.15.2.el7.x86_64
 3516  2021-03-10 13:34:12 ls /usr/src/
 3517  2021-03-10 13:34:16 ls /usr/src/kernels/
 3518  2021-03-10 13:34:31 yum remove kernel-devel-3.10.0-1160.15.2.el7.x86_64
 3519  2021-03-10 13:34:39 ls /usr/src/kernels/
 3520  2021-03-10 13:34:52 yum search --show-duplicates kernel-devel
 3521  2021-03-10 13:35:00 yum install kernel-devel-3.10.0-1160.2.1.el7.x86_64
 3522  2021-03-10 13:35:41 ls /usr/src/kernels/
 3523  2021-03-10 13:35:54 ls /lib/modules/3.10.0-1160.2.1.el7.x86_64/
 3524  2021-03-10 13:36:02 time yum remove -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 3525  2021-03-10 13:36:09 time yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 3526  2021-03-10 13:36:43 less /var/lib/dkms/lustre-zfs/2.12.6/build/make.log
 3527  2021-03-10 13:39:22 time yum install -y zfs spl zfs-dkms spl-dkms libnvpair1 libzpool2 libzfs2
 3528  2021-03-10 13:40:01 zpool list
 3529  2021-03-10 13:40:07 modinfo zfs
 3530  2021-03-10 13:40:15 modinfo lnet
 3531  2021-03-10 13:40:17 modinfo lustre
 3532  2021-03-10 13:40:20 uname -a
 3533  2021-03-10 13:40:26 cd /lib/modules
 3534  2021-03-10 13:40:30 find . -name lustre*
 3535  2021-03-10 13:43:01 time yum remove -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 3536  2021-03-10 13:43:20 shutdown -r now
 3537  2021-03-10 13:48:02 ls
 3538  2021-03-10 13:48:13 scp kernel-headers-3.10.0-1160.2.1.el7.x86_64.rpm lxfstest02:
 3539  2021-03-10 14:08:41 cd /lib/modules
 3540  2021-03-10 14:08:42 ls
 3541  2021-03-10 14:08:51 find . -name *lustre*
 3542  2021-03-10 14:08:58 ls -al ./3.10.0-1127.el7.x86_64/extra/lustre.ko.xz
 3543  2021-03-10 14:09:03 ls -la ./3.10.0-1127.13.1.el7.x86_64/extra/lustre.ko.xz
 3544  2021-03-10 14:09:07 ls -la ./3.10.0-1127.19.1.el7.x86_64/weak-updates/lustre.ko.xz
 3545  2021-03-10 14:09:25 cd 3.10.0-1127.el7.x86_64/extra/
 3546  2021-03-10 14:09:26 ls
 3547  2021-03-10 14:09:30 ls -la
 3548  2021-03-10 14:10:09 rm -f 3.10.0-1127.el7.x86_64 fld.ko.xz ko2iblnd.ko.xz ksocklnd.ko.xz lfsck.ko.xz libcfs.ko.xz llog_test.ko.xz lmv.ko.xz lnet.ko.xz lnet_selftest.ko.xz lod.ko.xz lov.ko.xz lquota.ko.xz lustre.ko.xz mdc.ko.xz mdd.ko.xz mdt.ko.xz mgc.ko.xz mgs.ko.xz obdclass.ko.xz obdecho.ko.xz ofd.ko.xz osc.ko.xz osd_zfs.ko.xz osp.ko.xz ost.ko.xz ptlrpc_gss.ko.xz ptlrpc.ko.xz
 3549  2021-03-10 14:10:11 ls -la
 3550  2021-03-10 14:10:14 cd ../..
 3551  2021-03-10 14:10:21 cd 3.10.0-1127.13.1.el7.x86_64/extra
 3552  2021-03-10 14:10:22 ls -la
 3553  2021-03-10 14:10:24 rm -f 3.10.0-1127.el7.x86_64 fld.ko.xz ko2iblnd.ko.xz ksocklnd.ko.xz lfsck.ko.xz libcfs.ko.xz llog_test.ko.xz lmv.ko.xz lnet.ko.xz lnet_selftest.ko.xz lod.ko.xz lov.ko.xz lquota.ko.xz lustre.ko.xz mdc.ko.xz mdd.ko.xz mdt.ko.xz mgc.ko.xz mgs.ko.xz obdclass.ko.xz obdecho.ko.xz ofd.ko.xz osc.ko.xz osd_zfs.ko.xz osp.ko.xz ost.ko.xz ptlrpc_gss.ko.xz ptlrpc.ko.xz
 3554  2021-03-10 14:10:26 ls -la
 3555  2021-03-10 14:10:30 rm -f fid.ko.xz
 3556  2021-03-10 14:10:33 cd ../..
 3557  2021-03-10 14:10:42 cd ./3.10.0-1127.19.1.el7.x86_64/weak-updates
 3558  2021-03-10 14:10:43 ls -al
 3559  2021-03-10 14:10:46 rm -f 3.10.0-1127.el7.x86_64 fld.ko.xz ko2iblnd.ko.xz ksocklnd.ko.xz lfsck.ko.xz libcfs.ko.xz llog_test.ko.xz lmv.ko.xz lnet.ko.xz lnet_selftest.ko.xz lod.ko.xz lov.ko.xz lquota.ko.xz lustre.ko.xz mdc.ko.xz mdd.ko.xz mdt.ko.xz mgc.ko.xz mgs.ko.xz obdclass.ko.xz obdecho.ko.xz ofd.ko.xz osc.ko.xz osd_zfs.ko.xz osp.ko.xz ost.ko.xz ptlrpc_gss.ko.xz ptlrpc.ko.xz
 3560  2021-03-10 14:10:48 ls -la
 3561  2021-03-10 14:10:52 rm -f fid.ko.xz
 3562  2021-03-10 14:11:02 modinfo lustre
 3563  2021-03-10 14:11:31 depmod -a
 3564  2021-03-10 14:11:38 modinfo lustre
 3565  2021-03-10 14:11:40 modinfo zfs
 3566  2021-03-10 14:12:08 ime yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 3567  2021-03-10 14:12:12 yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 3568  2021-03-10 14:19:41 ls -la /lib/modules/3.10.0-1160.2.1.el7.x86_64/extra/
 3569  2021-03-10 14:19:49 depmod ßa
 3570  2021-03-10 14:19:51 depmod -a
 3571  2021-03-10 14:19:59 modinfo lustre
 3572  2021-03-10 14:20:10 modprobe -v lnet
 3573  2021-03-10 14:20:13 modprobe -v lustre
 3574  2021-03-10 14:23:56 modprobe -v lnet
 3575  2021-03-10 14:24:01 modprobe -v lustre
 3576  2021-03-10 14:24:05 lustre_rmmod 
 3577  2021-03-10 14:24:09 cd
 3578  2021-03-10 14:24:11 lustre_rmmod 
 3579  2021-03-10 14:24:14 modprobe -v lnet
 3580  2021-03-10 14:24:25 modprobe -v lustre
 3581  2021-03-10 14:48:51 yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
 3582  2021-03-10 14:49:07 ls /etc/dkms
 3583  2021-03-10 14:49:22 ls /etc/dkms/template-dkms-mkrpm.spec
 3584  2021-03-10 14:49:26 less /etc/dkms/template-dkms-mkrpm.spec
 3585  2021-03-10 15:11:40 ls /var/lib/dkms/
 3586  2021-03-10 15:11:46 ls /var/lib/dkms/lustre-zfs/
 3587  2021-03-10 15:11:53 ls --la /var/lib/dkms/lustre-zfs/
 3588  2021-03-10 15:11:55 ls -la /var/lib/dkms/lustre-zfs/
 3589  2021-03-10 15:12:38 ls 2.12.6
 3590  2021-03-10 15:12:40 ls
 3591  2021-03-10 15:12:45 cd /var/lib/dkms/lustre-zfs/
 3592  2021-03-10 15:12:45 ls
 3593  2021-03-10 15:12:48 ls -al
 3594  2021-03-10 15:12:51 cd 2.12.6/
 3595  2021-03-10 15:12:52 ls
 3596  2021-03-10 15:12:55 ls -la
 3597  2021-03-10 15:12:59 cd 3.10.0-1160.2.1.el7.x86_64/
 3598  2021-03-10 15:13:00 ls
 3599  2021-03-10 15:13:01 cd x86_64/
3600  2021-03-10 15:13:02 ls
 3601  2021-03-10 15:13:06 cd log/
 3602  2021-03-10 15:13:06 ls
 3603  2021-03-10 15:13:11 less config.log 
 3604  2021-03-10 15:13:29 less make.log 
 3605  2021-03-10 15:13:38 ls
 3606  2021-03-10 15:13:39 cd ..
 3607  2021-03-10 15:13:39 ls
 3608  2021-03-10 15:13:41 cd ..
 3609  2021-03-10 15:13:42 ls
 3610  2021-03-10 15:13:45 cd ..
 3611  2021-03-10 15:13:46 ls -la
 3612  2021-03-10 15:21:55 pwd
 3613  2021-03-10 15:22:33 ls
 3614  2021-03-10 15:22:35 ls ..
 3615  2021-03-10 15:22:37 cd ..
 3616  2021-03-10 15:22:38 ls
 3617  2021-03-10 15:22:39 cd ..
 3618  2021-03-10 15:22:39 ls
 3619  2021-03-10 18:09:21 host 10.20.1.183
 3620  2021-03-10 18:09:39 host 10.20.4.122
 3621  2021-03-10 22:12:40 cd
 3622  2021-03-10 22:12:41 lsmod
 3623  2021-03-10 22:12:47 zpool list
 3624  2021-03-10 22:12:58 zpool import -d /dev/disk/by-location/
 3625  2021-03-10 22:13:06 zpool import -d /dev/disk/by-location/ osspool2
 3626  2021-03-10 22:13:10 zpool import -d /dev/disk/by-location/ osspool3
 3627  2021-03-10 22:13:13 zpool import -d /dev/disk/by-location/ osspool4
 3628  2021-03-10 22:13:19 zpool list
 3629  2021-03-10 22:13:24 which mount.lustre
 3630  2021-03-10 22:13:33 mount -t lustre osspool0/ost0 /srv/OST0
  • On lxfstest03, the ZFS modules were installed after installation/booting into new kernel
3527  2021-03-10 13:39:22 time yum install -y zfs spl zfs-dkms spl-dkms libnvpair1 libzpool2 libzfs2

  • Both on lxfstest02 and lxfstest03, the package zfs-dkms is installed.
  • The kmod package exists
[root@lxfstest03 ~]# yum search --show-duplicates zfs
...
kmod-zfs-3.10.0-1160.2.1.el7.x86_64-0.7.13-1.el7.x86_64 : zfs kernel module(s) for 3.10.0-1160.2.1.el7.x86_64
...
  • But it is not installed
[root@lxfstest03 ~]# yum info --show-duplicates kmod-zfs-3.10.0-1160.2.1.el7.x86_64-0.7.13-1.el7.x86_64
Loaded plugins: fastestmirror, versionlock
Loading mirror speeds from cached hostfile
Available Packages
Name        : kmod-zfs-3.10.0-1160.2.1.el7.x86_64
Arch        : x86_64
Version     : 0.7.13
Release     : 1.el7
Size        : 854 k
Repo        : zfs-server
Summary     : zfs kernel module(s) for 3.10.0-1160.2.1.el7.x86_64
URL         : http://zfsonlinux.org/
License     : CDDL
Description : This package provides the zfs kernel modules built for the Linux
            : kernel 3.10.0-1160.2.1.el7.x86_64 for the x86_64 family of processors.

Hence, the trouble with dkms during upgrade to 2.12.6 was with the lustre-dkms packages, not with ZFS itself.

23 [2021-10-06 Wed] hebetest Reinstallation, 2.12.5

To preprare for a Hebe upgrade to 2.12.7, hebetest is brought back to hebe-version 2.12.5

23.1 Reinstallation of OSS (lxfstest*)

  • The system disk is not the usual hardware raid-1 on all servers.
  • Comment out all explicit occurences of /dev/sda in the kickstart file (lxmgmt5:/srv/http/centos/kickstart/ibcentos78.cfg)
    • The installation stops and asks for a target device (option 5). Among the many similar devices proposed, the system disk can be found with some patience.
  • After installation of CentOS, remove the chef client and node objects, run chef-client on the server, add role[hebetestoss] to its runlist, run chef-client twice.

23.1.1 yum sources

  • Get the proper yum sources by rsync -aPv lxfs530:/etc/yum.repos.d/
  • Install the kernel that is running on Hebe: 3.10.0-1127.19.1 (is from updates, not base repo)
  • Boot the kernel, get fitting kernel-headers, kernel-devel and dkms
  • Install ZFS using the dkms-packages
  • Check the disks and the old zpools (should have survived the installation)
  • Install Lustre using the dkms-packges
15  yum clean all
16  yum makecache
17  yum search --show-duplicates kernel
18  yum install kernel-3.10.0-1127.19.1.el7.x86_64 gsi-scripts-common ruby
19  select-grub2-kernel.rb 
20  select-grub2-kernel.rb  0
21  shutdown -r now
22  uname -a
23  yum install kernel-devel-3.10.0-1127.19.1.el7.x86_64
24  yum install kernel-headers-3.10.0-1127.19.1.el7.x86_64
25  yum install dkms
26  ls /lib/modules
27  ls -l /lib/modules/3.10.0-1127.19.1.el7.x86_64/
28  yum install -y zfs spl zfs-dkms spl-dkms libnvpair1 libzpool2 libzfs2
29  modinfo zfs
30  update-sas-oss-disk-map 
31  udevadm trigger --action=add
32  udevadm settle
33  ls /dev/disk/by-location/
34  zpool import -d /dev/disk/by-location/
35  less /etc/yum.repos.d/zfs-server.repo 
36  yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms
37  modinfo lustre

23.2 Reinstallation of MDS (lxmds17/18)

yum install kernel-3.10.0-1127.19.1.el7.x86_64
yum install gsi-scripts-common ruby
select-grub2-kernel.rb

  • Reboot

= For chef, create the sssd dir

mkdir /etc/sssd
chef-client

  • Get Lustre
yum install kmod-lustre kmod-lustre-osd-ldiskfs lustre lustre-osd-ldiskfs-mount

  • Get DRBD: files from drbd-utils cannot overwrite files from drbd-utils (OMG!)
yumdownloader drbd-utils
rpm -iv --replacefiles drbd-utils-8.9.11-1.el7.centos.x86_64.rpm
yum install drbd-km-3.10.0_1127.19.1.el7.x86_64.x86_64

24 [2021-10-13 Wed] hebetest Upgrade to 2.12.7

24.1 First attempt

Edit /etc/yum.repos.d/Centos-Base.repo to read

baseurl=http://mirror.gsi.de/centos/7.9.2009/os/$basearch/
enabled=1

and

baseurl=http://mirror.gsi.de/centos/7.9.2009/updates/$basearch/
enabled=0

yum search --show-duplicates centos-release should now show a package for CentOS 7.9

yum install centos-release-7-9.2009.1.el7.centos.x86_64

This updates /etc/centos-release.

Update chef-role hebe_test_oss: it writes only /etc/yum.repos.d/zfs-server.repo. Insert

baseurl = http://mirror.gsi.de/centos/lustre-repository/lustre-2.12.7/el7.9.2009/patchless-ldiskfs-server

Run chef-client

Run yum makecache, yum check-update, yum --security update (doesn't do anything). The upgrade itself takes quite a while:

[lxfstest01 ~] time yum update   # 35 min
[lxfstest02 ~] time yum update   # 27 min
[lxfstest03 ~] time yum update   # 22 min
[lxmds18 ~] time yum update      #  7 min

Edit /etc/yum.repos.d/Centos-Base.repo to read

baseurl=http://mirror.gsi.de/centos/7.9.2009/updates/$basearch/
enabled=1

Now, newer kernel become visible (yum search --show-duplicates kernel). Install 1160.25.1, which is used by the patched Lustre 2.12.7 version.

yum install kernel-3.10.0-1160.25.1.el7.x86_64

yum complains that the headers for this kernel cannot be found: no dkms -> Install

yum install kernel-headers-3.10.0-1160.25.1.el7.x86_64 kernel-devel-3.10.0-1160.25.1.el7.x86_64

This does not trigger any dkms actions. -> Reinstall the kernel

yum reinstall kernel-3.10.0-1160.25.1.el7.x86_64

Takes forever and results in an attempt to compile the Lustre modules, with

depmod: WARNING: /lib/modules/3.10.0-1127.el7.x86_64/weak-updates/osd_zfs.ko.xz needs unknown symbol libcfs_vfree_atomic
depmod: WARNING: /lib/modules/3.10.0-1127.el7.x86_64/weak-updates/lfsck.ko.xz needs unknown symbol libcfs_vfree_atomic
depmod: WARNING: /lib/modules/3.10.0-1127.el7.x86_64/weak-updates/ptlrpc.ko.xz needs unknown symbol libcfs_vfree_atomic
depmod: WARNING: /lib/modules/3.10.0-1127.el7.x86_64/weak-updates/mdt.ko.xz needs unknown symbol libcfs_vfree_atomic
depmod: WARNING: /lib/modules/3.10.0-1127.el7.x86_64/weak-updates/lod.ko.xz needs unknown symbol libcfs_vfree_atomic
depmod: WARNING: /lib/modules/3.10.0-1127.el7.x86_64/weak-updates/lov.ko.xz needs unknown symbol libcfs_vfree_atomic
depmod: WARNING: /lib/modules/3.10.0-1127.el7.x86_64/weak-updates/obdecho.ko.xz needs unknown symbol libcfs_vfree_atomic
depmod: WARNING: /lib/modules/3.10.0-1127.el7.x86_64/weak-updates/lustre.ko.xz needs unknown symbol libcfs_vfree_atomic
depmod: WARNING: /lib/modules/3.10.0-1127.el7.x86_64/weak-updates/obdclass.ko.xz needs unknown symbol libcfs_vfree_atomic
depmod: WARNING: /lib/modules/3.10.0-1127.el7.x86_64/weak-updates/mdc.ko.xz needs unknown symbol libcfs_vfree_atomic
depmod: WARNING: /lib/modules/3.10.0-1127.el7.x86_64/weak-updates/osp.ko.xz needs unknown symbol libcfs_vfree_atomic
depmod: WARNING: /lib/modules/3.10.0-1127.el7.x86_64/weak-updates/lmv.ko.xz needs unknown symbol libcfs_vfree_atomic

modinfo lustre shows already version 2.12.7 - dkms compilation has pulled in the Lustre 2.12.7 packages and compiled it.

  • The warnings above refer to the running kernel 1127, which belongs to the CentOS 7.8 installation.
  • Perhaps the compiled modules will work with the new kernel?

Reboot.

After booting kernel 3.10.0-1160.25.1, lnet and lustre modules can be loaded, and the OST can be mounted.

24.1.1 Upgrade on lxfstest02/03, lxmds18

Install all 3 kernel packages at once:

lxfstest02 yum.repos.d]# time yum install kernel-3.10.0-1160.25.1.el7.x86_64 kernel-headers-3.10.0-1160.25.1.el7.x86_64 kernel-devel-3.10.0-1160.25.1.el7.x86_64
real	24m8.682s

[root@lxfstest03 yum.repos.d]# time yum install kernel-3.10.0-1160.25.1.el7.x86_64 kernel-headers-3.10.0-1160.25.1.el7.x86_64 kernel-devel-3.10.0-1160.25.1.el7.x86_64
real	20m2.775s

[root@lxmds18 yum.repos.d]# time yum install kernel-3.10.0-1160.25.1.el7.x86_64 kernel-headers-3.10.0-1160.25.1.el7.x86_64 kernel-devel-3.10.0-1160.25.1.el7.x86_64
real	2m43.335s

Reboot.

In all three cases, after reboot only lustre 2.12.5 modules were present.

-> Install the packages with yum

[root@lxfstest02 yum.repos.d]# time yum install -y lustre-2.12.7-1.el7.x86_64 lustre-osd-zfs-mount-2.12.7-1.el7.x86_64 lustre-zfs-dkms-2.12.7-1.el7.noarch  # 16 min
[root@lxfstest03 yum.repos.d]# time yum install -y lustre-2.12.7-1.el7.x86_64 lustre-osd-zfs-mount-2.12.7-1.el7.x86_64 lustre-zfs-dkms-2.12.7-1.el7.noarch  # 13 min
[root@lxmds18 ~]# time yum install -y kmod-lustre-2.12.7-1.el7.x86_64 kmod-lustre-osd-ldiskfs-2.12.7-1.el7.x86_64 lustre-2.12.7-1.el7.x86_64  # 14 min

Modules fail to load!

obdclass: Unknown symbol libcfs_vfree_atomic (err 0)

  • This error is shown as a warning at the end of the package installation (output of depmod).
  • The module files are located in /lib/modules/3.10.0-1160.25.1.el7.x86_64/extra
  • There are no old module files or broken sym links anywhere in /lib/modules/

24.1.2 Upgrade on lxmds17

Create DRBD modules on lxmds18:

[root@lxmds18 ~]# tar xzf drbd-8.4.11-1.tar.gz
[root@lxmds18 ~]# yum -y install gcc make automake autoconf libxslt libxslt-devel flex rpm-build
[root@lxmds18 ~]# mkdir -p /root/rpmbuild/{BUILD,BUILDROOT,RPMS,SOURCES,SPECS,SRPMS}
[root@lxmds18 ~]# cd drbd-8.4.11-1
[root@lxmds18 ~]# make km-rpm
[root@lxmds18 ~]# cd ~/rpmbuild/RPMS/x86_64
[root@lxmds18 ~]# yum install ./drbd-km-3.10.0_1160.25.1.el7.x86_64-8.4.11-1.x86_64.rpm
[root@lxmds18 ~]# modprobe -v drbd
[root@lxmds17 ~]# time yum -y update  # 13 min
[root@lxmds17 ~]# yum install -y kernel-3.10.0-1160.25.1.el7.x86_64 kernel-headers-3.10.0-1160.25.1.el7.x86_64 kernel-devel-3.10.0-1160.25.1.el7.x86_64

After reboot, the Lustre modules (built when installing kernel 1160.25.1) can be loaded.

Install the DRBD modules built on lxmds18:

yum install ./drbd-km-3.10.0_1160.25.1.el7.x86_64-8.4.11-1.x86_64.rpm

Getting the Infortrend partition on board needs reload of qla2xxx, echo "1" > /sys/class/fc_host/host13/issue_lip. DRBD is started, Lustre mounts.

24.2 2. attempt

24.2.1 works on lxfstest03:

  • enable base repo 7.9
  • install centos-release-7.9
  • enable Lustre repo 2.12.7
  • yum update

-> installs 2.12.7 ("Building for 3.10.0-1127.19.1.el7.x8664")

depmod: WARNING: /lib/modules/3.10.0-1127.19.1.el7.x86_64/extra/osd_zfs.ko.xz needs unknown symbol libcfs_vfree_atomic

-> "dkms: running auto installation service for kernel 3.10.0-1160.el7.x8664"

depmod: WARNING: /lib/modules/3.10.0-1127.19.1.el7.x86_64/extra/obdclass.ko.xz needs unknown symbol libcfs_vfree_atomic
depmod: WARNING: /lib/modules/3.10.0-1127.el7.x86_64/weak-updates/lustre.ko.xz needs unknown symbol libcfs_vfree_atomic

  • Reboot into kernel 3.10.0-1160.el7.x8664
  • Enable updates repo 7.9
  • yum update

-> installs kernel 3.10.0-1160.45.1.el7

dkms: running auto installation service for kernel 3.10.0-1160.45.1.el7.x86_64

  • Reboot into 3.10.0-1160.45.1

24.2.2 does not work on lxfstest01:

  • enable base + updates repo 7.9
yum install centos-release-7-9.2009.1.el7.centos.x86_64

  • yum update

-> installs kernel 3.10.0-1160.45.1.el7 -> dkms installs 2.12.5

  • Reboot into 3.10.0-1160.45.1.el7.x8664
  • enable Lustre repo 2.12.7
  • yum update

-> updates Lustre packages to 2.12.7

depmod: WARNING: /lib/modules/3.10.0-1160.45.1.el7.x86_64/extra/osd_zfs.ko.xz needs unknown symbol libcfs_vfree_atomic

-> Repeat entire procedure as for lxfstest03: works

24.2.3 works on lxfstest02:

  • enable base repo 7.9
  • install centos-release-7.9
  • yum update

-> installs 2.12.5

dkms: running auto installation service for kernel 3.10.0-1160.el7.x86_64
Installing to /lib/modules/3.10.0-1160.el7.x86_64/extra/

  • modinfo lustre:
vermagic:       3.10.0-1127.19.1.el7.x86_64 SMP mod_unload modversions 

  • Reboot into 3.10.0-1160.el7.x8664
  • enable updates repo 7.9
  • enable Lustre repo 2.12.7
  • yum update

-> installs kernel 3.10.0-1160.45.1.el7 -> installs Lustre 2.12.7

Installing to /lib/modules/3.10.0-1160.el7.x86_64/extra/
depmod: WARNING: /lib/modules/3.10.0-1160.el7.x86_64/extra/osd_zfs.ko.xz needs unknown symbol libcfs_vfree_atomic

  • dkms cleanup: Deleting module version: 2.12.5
dkms: running auto installation service for kernel 3.10.0-1160.45.1.el7.x86_64
Installing to /lib/modules/3.10.0-1160.45.1.el7.x86_64/extra/
depmod: WARNING: /lib/modules/3.10.0-1160.el7.x86_64/extra/osp.ko.xz needs unknown symbol libcfs_vfree_atomic

  • modinfo lustre:
vermagic:       3.10.0-1160.el7.x86_64 SMP mod_unload modversions

  • Reboot into 3.10.0-1160.45.1.el7.x8664

24.2.4 works on lxmds17:

  • enable base + updates repo 7.9
  • enable Lustre repo 2.12.7
  • yum update
  • boot into 3.10.0-1160.45.1.el7.x8664

24.2.5 does not work on lxmds18:

  • enable base + updates repo 7.9
  • yum update
  • boot into 3.10.0-1160.45.1.el7.x8664
  • enable Lustre repo 2.12.7
  • yum update

-> installs kmod-lustre.x8664 0:2.12.7-1.el7 kmod-lustre-osd-ldiskfs.x8664 0:2.12.7-1.el7 lustre.x8664 0:2.12.7-1.el7 lustre-osd-ldiskfs-mount.x8664 0:2.12.7-1.el7

  • modules are placed into /lib/modules/3.10.0-1160.25.1.el7.x86_64/extra
  • in /lib/modules/3.10.0-1160.45.1.el7.x86_64/weak-updates, the modules appear as symlinks on lxmds17 but not on lxmds18
[root@lxmds18 ~]# cd /lib/modules/3.10.0-1160.45.1.el7.x86_64/weak-updates
[root@lxmds18 ~]# rsync -aPv lxmds17:/lib/modules/3.10.0-1160.45.1.el7.x86_64/weak-updates/ .

  • works!

25 [2022-02-08 Tue] Probe-Neuinstallation lxfs407 mit CentOS 7.9, Lustre 2.12.8

[root@lxfs407 chef]# chef-client

  • Add role hebe_test_oss
[root@lxfs407 chef]# chef-client

  • Insert GSI mirror into lxfs407:/etc/yum.repos.d/CenOS-Base.repo, e.g.
baseurl=http://mirror.gsi.de/centos/7.9.2009/os/$basearch/
[root@lxfs407 ]# yum clean all
[root@lxfs407 ]# yum makecache
[root@lxfs407 ]# yum  update

  • `yum update` installs kernel.x86_64 0:3.10.0-1160.53.1.el7
  • Reboot
  • uname -r shows kernel 3.10.0-1160.53.1.el7.x86_64 = good.
[root@lxfs407 ~]# yum install kernel-devel-3.10.0-1160.53.1.el7.x86_64 kernel-headers-3.10.0-1160.53.1.el7.x86_64 
[root@lxfs407 ~]# yum install dkms

  • This installs dkms-2.8.4-1.el7.noarch from gsi-repo !
[root@lxfs407 ~]# yum install -y zfs spl zfs-dkms spl-dkms libnvpair1 libzpool2 libzfs2

  • Output says among other things:
...
DKMS: install completed.
  Installing : zfs-dkms-0.7.13-1.el7.noarch
Loading new zfs-0.7.13 DKMS files...
Building for 3.10.0-1160.53.1.el7.x86_64
Building initial module for 3.10.0-1160.53.1.el7.x86_64
Done.
...
zfs.ko.xz:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/3.10.0-1160.53.1.el7.x86_64/extra/
...
  • Good! Module is put into /lib/modules/ path of the running kernel!
  • Check the module:
[root@lxfs407 ~]# modinfo zfs
filename:       /lib/modules/3.10.0-1160.53.1.el7.x86_64/extra/zfs.ko.xz
version:        0.7.13-1
...
  • Fileserver-Stuff:
[root@lxfs407 ~]# modprobe -v dm_multipath
[root@lxfs407 ~]# systemctl restart multipathd
[root@lxfs407 ~]# update-sas-oss-disk-map
[root@lxfs407 ~]# udevadm trigger --action=add
[root@lxfs407 ~]# udevadm settle
[root@lxfs407 ~]# ls /dev/disk/by-location/
[root@lxfs407 ~]# modprobe -v zfs
[root@lxfs407 ~]# zpool import -d /dev/disk/by-location/
  • -> The old zpools are still there, good.
  • Install Lustre
[root@lxfs407 ~]# yum install -y lustre  lustre-osd-zfs-mount lustre-zfs-dkms

  • Output says among other things:
Loading new lustre-zfs-2.12.8_6_g5457c37 DKMS files...
Building for 3.10.0-1160.53.1.el7.x86_64
Building initial module for 3.10.0-1160.53.1.el7.x86_64
configure: WARNING:

Disabling ldiskfs support because complete ext4 source does not exist.

If you are building using kernel-devel packages and require ldiskfs
server support then ensure that the matching kernel-debuginfo-common
and kernel-debuginfo-common-<arch> packages are installed.

configure: WARNING:

No openssk-devel headers found, unable to build l_getsepol and SELinux status checking

configure: WARNING:

No selinux package found, unable to build selinux enabled tools

Done.

...
osd_zfs.ko.xz:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/3.10.0-1160.53.1.el7.x86_64/extra/
Adding any weak-modules

depmod....

DKMS: install completed.
  Installing : lustre-2.12.8_6_g5457c37-1.el7.x86_64
warning: /etc/modprobe.d/ko2iblnd.conf created as /etc/modprobe.d/ko2iblnd.conf.rpmnew
  Verifying  : lustre-zfs-dkms-2.12.8_6_g5457c37-1.el7.noarch
  Verifying  : libyaml-devel-0.1.4-11.el7_0.x86_64           
  Verifying  : expect-5.45-14.el7_1.x86_64                   
  Verifying  : lustre-osd-zfs-mount-2.12.8_6_g5457c37-1.el7.x86_64
  Verifying  : lustre-2.12.8_6_g5457c37-1.el7.x86_64              
  • Check the module:
[root@lxfs407 ~]# modinfo lustre
filename:       /lib/modules/3.10.0-1160.53.1.el7.x86_64/extra/lustre.ko.xz
license:        GPL
version:        2.12.8_6_g5457c37
...
  • Load modules
[root@lxfs407 ~]# modprobe -v lnet
insmod /lib/modules/3.10.0-1160.53.1.el7.x86_64/extra/libcfs.ko.xz 
insmod /lib/modules/3.10.0-1160.53.1.el7.x86_64/extra/lnet.ko.xz 
[root@lxfs407 ~]# modprobe -v lustre
insmod /lib/modules/3.10.0-1160.53.1.el7.x86_64/extra/obdclass.ko.xz 
insmod /lib/modules/3.10.0-1160.53.1.el7.x86_64/extra/ptlrpc.ko.xz 
insmod /lib/modules/3.10.0-1160.53.1.el7.x86_64/extra/fld.ko.xz 
insmod /lib/modules/3.10.0-1160.53.1.el7.x86_64/extra/fid.ko.xz 
insmod /lib/modules/3.10.0-1160.53.1.el7.x86_64/extra/lov.ko.xz 
insmod /lib/modules/3.10.0-1160.53.1.el7.x86_64/extra/osc.ko.xz 
insmod /lib/modules/3.10.0-1160.53.1.el7.x86_64/extra/mdc.ko.xz 
insmod /lib/modules/3.10.0-1160.53.1.el7.x86_64/extra/lmv.ko.xz 
insmod /lib/modules/3.10.0-1160.53.1.el7.x86_64/extra/lustre.ko.xz 

26 [2023-06-01 Thu] Installation neuer OSS (lxfs544 ff.) mit CentOS 7.8, Lustre 2.12

Die lxfs544 ff. booten per EFI -> extra Geschichte.

26.1 Mellanox tools

Die fertige Installation bootet in den Installationskernel 3.10.0-1127.el7. Waehrend der Installation sind auch schon die Pakete mft und kernel-mft-4.21.0-3.10.0_1127.el7 installiert worden, um am Ende der Installation set KEEP_LINK_UP_ON_BOOT_P1=0 zu setzen - das scheint nicht immer zu funktionieren.

Nachdem der Zielkernel 3.10.0-1127.19.1.el7.x86_64 installiert und gebootet ist, sollte das Modul fuer den Installationskernel eventuell nicht mehr passen.

  • Tatsaechlich versucht `mst start`, die Module mst_pci und mst_pciconf zu laden. Das scheitert an den dabei mitgegebenen Parametern.
  • Wenn man stattdessen manuell modprobe mst_pci und modprobe mst_pciconf ausfuehrt, werden beide Module geladen, und danach funktioniert auch mst start.
  • Auch ohne die PCI-Module lassen sich die Mellanox-Tools benutzen!
    • Wenn mst start wie beschrieben fehlschlaegt, gibt mst status als Device die PCI-Adresse aus, e.g. af:00.0. Diese kann man aber auch an mlxconfig geben: mlxconfig -d af:00.0 q liefert den erwarteten Output.

26.2 Chef, Kernel, sas-oss-udev, zfs

Die Server bekommen die Rolle lustre_hebe_oss. Diese aendert u.a. die /etc/yum.repos.d/CentOS-Base.repo so, dass der GSI-Mirror genutzt wird.

  • Dort findet sich der Kernel, der bisher von den Hebe-OSS verwendet wird.
  • > =yum install kernel-3.10.0-1127.19.1.el7.x86_64, Reboot

26.2.1 zfs

Fuer die zfs-Installation braucht es neben der /etc/yum.repos.d/zfs-server.repo

yum install kernel-devel-`uname -r` kernel-headers-`uname -r` dkms
yum install zfs spl zfs-dkms spl-dkms libnvpair1 libzpool2 libzfs2

26.2.2 sas-oss-udev

Chef installiert sas-oss-udev in Version 1.0.0-8, mit folgenden Aenderungen:

  • lspci gibt die SAS-Controller jetzt als Serial Attached SCSI controller: Broadcom / LSI Fusion-MPT 12GSAS/PCIe Secure SAS38xx an.
  • Im von update-sas-oss-disk-map gefragten Output (lspci -D -mm -n -d <vendor>:<ID>) ist die ID des LSI Fusion-MPT 12GSAS jetzt 00e6, es muss also nach lspci -D -mm -n -d 1000:00e6 gesucht werden.
  • The pci_subsys_device_id are now 4060 (server) and 4080 (enclosure), added to the case statement.
  • The lengthy find expression that outputs the sg_device looks for the model name of the SAS expanders. One of the two expanders responsible for the server-back is now called SC826-P, included in the egrep.

Author: Thomas Roth

Created: 2023-06-01 Thu 17:16

Validate