[LU-5834] Lustre installation fails if lustre client already install Created: 31/Oct/14 Updated: 13/Jul/17 Resolved: 01/May/17 |
|
| Status: | Resolved |
| Project: | Lustre |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | Lustre 2.10.0 |
| Type: | Bug | Priority: | Minor |
| Reporter: | Mathieu Drapeau (Inactive) | Assignee: | Andreas Dilger |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Issue Links: |
|
||||||||
| Severity: | 3 | ||||||||
| Rank (Obsolete): | 16357 | ||||||||
| Description |
|
When installing lustre server RPMs on a host that previously had lustre client RPMs, the installation of the lustre server RPMs should remove all lustre-client RPM components before proceeding. ============================================================================================================================================================================================================== Package Arch Version Repository Size ============================================================================================================================================================================================================== Installing: dkms noarch 2.2.0.3-28.git.7c3e7c5.el6 /dkms-2.2.0.3-28.git.7c3e7c5.el6.noarch 222 k libnvpair1 x86_64 0.6.3-1.1.el6 /libnvpair1-0.6.3-1.1.el6.x86_64 231 k libuutil1 x86_64 0.6.3-1.1.el6 /libuutil1-0.6.3-1.1.el6.x86_64 223 k libzfs2 x86_64 0.6.3-1.1.el6 /libzfs2-0.6.3-1.1.el6.x86_64 829 k libzpool2 x86_64 0.6.3-1.1.el6 /libzpool2-0.6.3-1.1.el6.x86_64 3.7 M lustre x86_64 2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3 /lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 14 M lustre-dkms noarch 2.5.25-1.el6 /lustre-dkms-2.5.25-1.el6.noarch 29 M lustre-osd-zfs x86_64 2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3 /lustre-osd-zfs-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 484 k spl x86_64 0.6.3-1.1.el6 /spl-0.6.3-1.1.el6.x86_64 48 k spl-dkms noarch 0.6.3-1.1.el6 /spl-dkms-0.6.3-1.1.el6.noarch 2.8 M zfs x86_64 0.6.3-1.1.el6 /zfs-0.6.3-1.1.el6.x86_64 765 k zfs-dkms noarch 0.6.3-1.1.el6 /zfs-dkms-0.6.3-1.1.el6.noarch 11 M zfs-dracut x86_64 0.6.3-1.1.el6 /zfs-dracut-0.6.3-1.1.el6.x86_64 13 k Transaction Summary ============================================================================================================================================================================================================== Install 13 Package(s) Total size: 63 M Installed size: 63 M Downloading Packages: Running rpm_check_debug Running Transaction Test Transaction Check Error: file /sbin/mount.lustre from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/bin/lfs from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/bin/req_layout from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/lib64/libcfsutil.a from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/lib64/liblustre.a from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/lib64/liblustre.so from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/lib64/liblustreapi.a from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/lib64/liblustreapi.so from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/lib64/libptlctl.a from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/lib64/lustre/snmp/lustresnmp.so from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/sbin/debugctl from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/sbin/l_getidentity from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/sbin/lctl from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/sbin/lhsmtool_posix from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/sbin/ll_decode_filter_fid from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/sbin/ll_recover_lost_found_objs from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/sbin/llog_reader from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/sbin/llverdev from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/sbin/llverfs from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/sbin/loadgen from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/sbin/lr_reader from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/sbin/lshowmount from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/sbin/lst from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/sbin/lstclient from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/sbin/ltrack_stats from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/sbin/lustre_rsync from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/sbin/ptlctl from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/sbin/routerstat from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/sbin/wirecheck from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 file /usr/sbin/wiretest from install of lustre-2.5.25-2.6.32_431.29.2.el6_lustre.ga637590.x86_64_g1acbec3.x86_64 conflicts with file from package lustre-client-2.5.26-2.6.32_431.29.2.el6.x86_64.x86_64 Error Summary ------------- |
| Comments |
| Comment by Gerrit Updater [ 13/May/16 ] |
|
Andreas Dilger (andreas.dilger@intel.com) uploaded a new patch: http://review.whamcloud.com/20162 |
| Comment by Gerrit Updater [ 01/May/17 ] |
|
Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/20162/ |
| Comment by Peter Jones [ 01/May/17 ] |
|
Landed for 2.10 |
| Comment by Brian Murrell (Inactive) [ 13/Jul/17 ] |
|
While it's ironic that it was a member of the HYD team that originally requested this change, I wonder if it's really the behaviour we (the royal we, not the HYD we) desire. It seems like a good idea on the face of it, but it has undesirable side-effects in certain use cases. If one has both the server and client repositories configured and enabled on a node and one tries to install lustre-client one gets this behaviour: # yum install -y --exclude kernel-debug lustre-client kmod-lustre-client-2.10.0_RC1 Loaded plugins: fastestmirror Package lustre-client is obsoleted by lustre-dkms, trying to install lustre-dkms-2.10.0-1.el7.noarch instead Resolving Dependencies --> Running transaction check ---> Package kmod-lustre-client.x86_64 0:2.10.0_RC1-1.01.el7.centos will be installed ---> Package lustre-dkms.noarch 0:2.10.0-1.el7 will be installed --> Processing Dependency: zfs-dkms >= 0.6.1 for package: lustre-dkms-2.10.0-1.el7.noarch --> Processing Dependency: spl-dkms >= 0.6.1 for package: lustre-dkms-2.10.0-1.el7.noarch --> Processing Dependency: dkms >= 2.2.0.3-28.git.7c3e7c5 for package: lustre-dkms-2.10.0-1.el7.noarch --> Processing Dependency: lustre-osd-zfs-mount for package: lustre-dkms-2.10.0-1.el7.noarch --> Processing Dependency: kernel-devel for package: lustre-dkms-2.10.0-1.el7.noarch --> Processing Dependency: gcc for package: lustre-dkms-2.10.0-1.el7.noarch --> Processing Dependency: /usr/bin/expect for package: lustre-dkms-2.10.0-1.el7.noarch --> Running transaction check ---> Package dkms.noarch 0:2.3-5.20170523git8c3065c.el7 will be installed ---> Package expect.x86_64 0:5.45-14.el7_1 will be installed --> Processing Dependency: libtcl8.5.so()(64bit) for package: expect-5.45-14.el7_1.x86_64 ---> Package gcc.x86_64 0:4.8.5-11.el7 will be installed --> Processing Dependency: cpp = 4.8.5-11.el7 for package: gcc-4.8.5-11.el7.x86_64 --> Processing Dependency: glibc-devel >= 2.2.90-12 for package: gcc-4.8.5-11.el7.x86_64 --> Processing Dependency: libmpfr.so.4()(64bit) for package: gcc-4.8.5-11.el7.x86_64 --> Processing Dependency: libmpc.so.3()(64bit) for package: gcc-4.8.5-11.el7.x86_64 ---> Package kernel-devel.x86_64 0:3.10.0-514.26.2.el7 will be installed ---> Package lustre-osd-zfs-mount.x86_64 0:2.10.0-1.el7 will be installed --> Processing Dependency: libzfs.so.2()(64bit) for package: lustre-osd-zfs-mount-2.10.0-1.el7.x86_64 ---> Package spl-dkms.noarch 0:0.6.5.9-1.el7 will be installed ---> Package zfs-dkms.noarch 0:0.6.5.9-1.el7 will be installed --> Running transaction check ---> Package cpp.x86_64 0:4.8.5-11.el7 will be installed ---> Package glibc-devel.x86_64 0:2.17-157.el7_3.4 will be installed --> Processing Dependency: glibc-headers = 2.17-157.el7_3.4 for package: glibc-devel-2.17-157.el7_3.4.x86_64 --> Processing Dependency: glibc = 2.17-157.el7_3.4 for package: glibc-devel-2.17-157.el7_3.4.x86_64 --> Processing Dependency: glibc-headers for package: glibc-devel-2.17-157.el7_3.4.x86_64 ---> Package libmpc.x86_64 0:1.0.1-3.el7 will be installed ---> Package libzfs2.x86_64 0:0.6.5.9-1.el7 will be installed --> Processing Dependency: libzpool.so.2()(64bit) for package: libzfs2-0.6.5.9-1.el7.x86_64 --> Processing Dependency: libuutil.so.1()(64bit) for package: libzfs2-0.6.5.9-1.el7.x86_64 --> Processing Dependency: libnvpair.so.1()(64bit) for package: libzfs2-0.6.5.9-1.el7.x86_64 ---> Package mpfr.x86_64 0:3.1.1-4.el7 will be installed ---> Package tcl.x86_64 1:8.5.13-8.el7 will be installed --> Running transaction check ---> Package glibc.x86_64 0:2.17-157.el7_3.1 will be updated --> Processing Dependency: glibc = 2.17-157.el7_3.1 for package: glibc-common-2.17-157.el7_3.1.x86_64 ---> Package glibc.x86_64 0:2.17-157.el7_3.4 will be an update ---> Package glibc-headers.x86_64 0:2.17-157.el7_3.4 will be installed --> Processing Dependency: kernel-headers >= 2.2.1 for package: glibc-headers-2.17-157.el7_3.4.x86_64 --> Processing Dependency: kernel-headers for package: glibc-headers-2.17-157.el7_3.4.x86_64 ---> Package libnvpair1.x86_64 0:0.6.5.9-1.el7 will be installed ---> Package libuutil1.x86_64 0:0.6.5.9-1.el7 will be installed ---> Package libzpool2.x86_64 0:0.6.5.9-1.el7 will be installed --> Running transaction check ---> Package glibc-common.x86_64 0:2.17-157.el7_3.1 will be updated ---> Package glibc-common.x86_64 0:2.17-157.el7_3.4 will be an update ---> Package kernel-headers.x86_64 0:3.10.0-514.26.2.el7 will be installed --> Finished Dependency Resolution Dependencies Resolved ============================================================================================================================================= Package Arch Version Repository Size ============================================================================================================================================= Installing: kmod-lustre-client x86_64 2.10.0_RC1-1.01.el7.centos managerforlustre-lustre-client 2.1 M lustre-dkms noarch 2.10.0-1.el7 lustre 13 M Installing for dependencies: cpp x86_64 4.8.5-11.el7 base 5.9 M dkms noarch 2.3-5.20170523git8c3065c.el7 epel 78 k expect x86_64 5.45-14.el7_1 base 262 k gcc x86_64 4.8.5-11.el7 base 16 M glibc-devel x86_64 2.17-157.el7_3.4 updates 1.1 M glibc-headers x86_64 2.17-157.el7_3.4 updates 669 k kernel-devel x86_64 3.10.0-514.26.2.el7 updates 13 M kernel-headers x86_64 3.10.0-514.26.2.el7 updates 4.8 M libmpc x86_64 1.0.1-3.el7 base 51 k libnvpair1 x86_64 0.6.5.9-1.el7 lustre 37 k libuutil1 x86_64 0.6.5.9-1.el7 lustre 42 k libzfs2 x86_64 0.6.5.9-1.el7 lustre 124 k libzpool2 x86_64 0.6.5.9-1.el7 lustre 424 k lustre-osd-zfs-mount x86_64 2.10.0-1.el7 lustre 10 k mpfr x86_64 3.1.1-4.el7 base 203 k spl-dkms noarch 0.6.5.9-1.el7 lustre 423 k tcl x86_64 1:8.5.13-8.el7 base 1.9 M zfs-dkms noarch 0.6.5.9-1.el7 lustre 1.9 M Updating for dependencies: glibc x86_64 2.17-157.el7_3.4 updates 3.6 M glibc-common x86_64 2.17-157.el7_3.4 updates 11 M Transaction Summary ============================================================================================================================================= Install 2 Packages (+18 Dependent packages) Upgrade ( 2 Dependent packages) This is clearly not what we want to happen. As you can see, the lustre-client package which is what we really wanted is obsoleted by lustre-dkms If we do a little bit of cajoling, we can get what we want: # yum install -y --exclude kernel-debug,lustre-dkms lustre-client kmod-lustre-client-2.10.0_RC1 Loaded plugins: fastestmirror Repository managerforlustre-lustre-client is listed more than once in the configuration Loading mirror speeds from cached hostfile * epel: mirror.cs.pitt.edu Package chroma-agent-management-3.1.1.0-4897.85.g9c482a2.jenkins__.el7.noarch already installed and latest version Package chroma-agent-3.1.1.0-4897.85.g9c482a2.jenkins__.el7.noarch already installed and latest version Resolving Dependencies --> Running transaction check ---> Package kmod-lustre-client.x86_64 0:2.10.0_RC1-1.01.el7.centos will be installed ---> Package lustre-client.x86_64 0:2.10.0_RC1-1.01.el7.centos will be installed --> Finished Dependency Resolution Dependencies Resolved ============================================================================================================================================= Package Arch Version Repository Size ============================================================================================================================================= Installing: kmod-lustre-client x86_64 2.10.0_RC1-1.01.el7.centos managerforlustre-lustre-client 2.1 M lustre-client x86_64 2.10.0_RC1-1.01.el7.centos managerforlustre-lustre-client 454 k Transaction Summary ============================================================================================================================================= Install 2 Packages But this really does not feel like the element of least surprise. A lesser surprise to me would be for the installation of the client to just fail with an error that it conflicts with the server such that the admin realises he needs to remove the server first and then install the client. I've opened |