Bug 1439925
| Summary: | RAID TAKEOVER: conversion attempts *from* linear should execute interim possibilities until segtype is achieved | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 7 | Reporter: | Corey Marthaler <cmarthal> |
| Component: | lvm2 | Assignee: | Heinz Mauelshagen <heinzm> |
| lvm2 sub component: | Mirroring and RAID | QA Contact: | cluster-qe <cluster-qe> |
| Status: | CLOSED ERRATA | Docs Contact: | |
| Severity: | low | ||
| Priority: | unspecified | CC: | agk, heinzm, jbrassow, mcsontos, msnitzer, prajnoha, rbednar, zkabelac |
| Version: | 7.4 | ||
| Target Milestone: | rc | ||
| Target Release: | --- | ||
| Hardware: | x86_64 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | lvm2-2.02.179-3.el7 | Doc Type: | If docs needed, set a value |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2018-10-30 11:02:16 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
nice to have in 7.4, but not ex/bl worthy. need to move to 7.5 lvm2 upstream commit bd7cdd0b09ba123b064937fddde08daacbed7dab Fix verified in the latest rpms. Linear segtypes can be eventually converted through interim steps to all the major raid types (mirror, raid1, raid4, raid5, raid6, raid10).
3.10.0-931.el7.x86_64
lvm2-2.02.180-2.el7 BUILT: Wed Aug 1 11:22:48 CDT 2018
lvm2-libs-2.02.180-2.el7 BUILT: Wed Aug 1 11:22:48 CDT 2018
lvm2-cluster-2.02.180-2.el7 BUILT: Wed Aug 1 11:22:48 CDT 2018
device-mapper-1.02.149-2.el7 BUILT: Wed Aug 1 11:22:48 CDT 2018
device-mapper-libs-1.02.149-2.el7 BUILT: Wed Aug 1 11:22:48 CDT 2018
device-mapper-event-1.02.149-2.el7 BUILT: Wed Aug 1 11:22:48 CDT 2018
device-mapper-event-libs-1.02.149-2.el7 BUILT: Wed Aug 1 11:22:48 CDT 2018
device-mapper-persistent-data-0.7.3-3.el7 BUILT: Tue Nov 14 05:07:18 CST 2017
[root@host-093 ~]# for i in $(seq 1 6); do lvcreate -L 100M --type linear VG; done
Logical volume "lvol0" created.
Logical volume "lvol1" created.
Logical volume "lvol2" created.
Logical volume "lvol3" created.
Logical volume "lvol4" created.
Logical volume "lvol5" created.
# raid1
[root@host-093 ~]# lvconvert --yes --type raid1 VG/lvol0
Logical volume VG/lvol0 successfully converted.
# mirror
[root@host-093 ~]# lvconvert --yes --type mirror -m1 VG/lvol1
Logical volume VG/lvol1 being converted.
VG/lvol1: Converted: 8.00%
VG/lvol1: Converted: 100.00%
# raid4
[root@host-093 ~]# lvconvert --yes --type raid4 VG/lvol2
Using default stripesize 64.00 KiB.
Replaced LV type raid4 with possible type raid1.
Repeat this command to convert to raid4 after an interim conversion has finished.
Logical volume VG/lvol2 successfully converted.
[root@host-093 ~]# lvconvert --yes --type raid4 VG/lvol2
Using default stripesize 64.00 KiB.
--stripes not allowed for LV VG/lvol2 when converting from raid1 to raid4.
Logical volume VG/lvol2 successfully converted.
# raid5
[root@host-093 ~]# lvconvert --yes --type raid5 VG/lvol3
Using default stripesize 64.00 KiB.
Replaced LV type raid5 (same as raid5_ls) with possible type raid1.
Repeat this command to convert to raid5 after an interim conversion has finished.
Logical volume VG/lvol3 successfully converted.
[root@host-093 ~]# lvconvert --yes --type raid5 VG/lvol3
Using default stripesize 64.00 KiB.
--stripes not allowed for LV VG/lvol3 when converting from raid1 to raid5.
Logical volume VG/lvol3 successfully converted.
# raid6
[root@host-093 ~]# lvconvert --yes --type raid6 VG/lvol4
Using default stripesize 64.00 KiB.
Replaced LV type raid6 (same as raid6_zr) with possible type raid1.
Repeat this command to convert to raid6 after an interim conversion has finished.
Logical volume VG/lvol4 successfully converted.
[root@host-093 ~]# lvconvert --yes --type raid6 VG/lvol4
Using default stripesize 64.00 KiB.
Replaced LV type raid6 (same as raid6_zr) with possible type raid5_ls.
Repeat this command to convert to raid6 after an interim conversion has finished.
--stripes not allowed for LV VG/lvol4 when converting from raid1 to raid5_ls.
Logical volume VG/lvol4 successfully converted.
[root@host-093 ~]# lvconvert --yes --type raid6 VG/lvol4
Using default stripesize 64.00 KiB.
Convert raid5_ls LV VG/lvol4 to minimum 4 stripes first (i.e. --stripes 3).
Converting VG/lvol4 from raid5_ls (same as raid5) is directly possible to the following layouts:
raid5_n
raid5_la
raid5_ra
raid5_rs
raid6_ls_6
raid1
[root@host-093 ~]# lvconvert --yes --type raid6 --stripes 3 VG/lvol4
Using default stripesize 64.00 KiB.
Converting raid5_ls LV VG/lvol4 to 3 stripes first.
Replaced LV type raid6 (same as raid6_zr) with possible type raid5_ls.
Repeat this command to convert to raid6 after an interim conversion has finished.
WARNING: Adding stripes to active logical volume VG/lvol4 will grow it from 25 to 75 extents!
Run "lvresize -l25 VG/lvol4" to shrink it or use the additional capacity.
Logical volume VG/lvol4 successfully converted.
[root@host-093 ~]# lvconvert --yes --type raid6 VG/lvol4
Using default stripesize 64.00 KiB.
Replaced LV type raid6 (same as raid6_zr) with possible type raid6_ls_6.
Repeat this command to convert to raid6 after an interim conversion has finished.
Logical volume VG/lvol4 successfully converted.
[root@host-093 ~]# lvconvert --yes --type raid6 VG/lvol4
Using default stripesize 64.00 KiB.
Converting raid6_ls_6 LV VG/lvol4 to raid6 (same as raid6_zr).
Logical volume VG/lvol4 successfully converted.
# raid10
[root@host-093 ~]# lvconvert --yes --type raid10 VG/lvol5
Using default stripesize 64.00 KiB.
Replaced LV type raid10 (same as raid10_near) with possible type raid1.
Repeat this command to convert to raid10 after an interim conversion has finished.
Logical volume VG/lvol5 successfully converted.
[root@host-093 ~]# lvconvert --yes --type raid10 VG/lvol5
Using default stripesize 64.00 KiB.
Replaced LV type raid10 (same as raid10_near) with possible type raid5_n.
Repeat this command to convert to raid10 after an interim conversion has finished.
--stripes not allowed for LV VG/lvol5 when converting from raid1 to raid5_n.
Logical volume VG/lvol5 successfully converted.
[root@host-093 ~]# lvconvert --yes --type raid10 VG/lvol5
Using default stripesize 64.00 KiB.
Convert raid5_n LV VG/lvol5 to minimum 3 stripes first (i.e. --stripes 2).
Converting VG/lvol5 from raid5_n is directly possible to the following layouts:
striped
raid0
raid0_meta
raid4
raid6_n_6
raid5_la
raid5_ls
raid5_ra
raid5_rs
raid1
[root@host-093 ~]# lvconvert --yes --type raid10 --stripes 2 VG/lvol5
Using default stripesize 64.00 KiB.
Converting raid5_n LV VG/lvol5 to 2 stripes first.
Replaced LV type raid10 (same as raid10_near) with possible type raid5_n.
Repeat this command to convert to raid10 after an interim conversion has finished.
WARNING: Adding stripes to active logical volume VG/lvol5 will grow it from 25 to 50 extents!
Run "lvresize -l25 VG/lvol5" to shrink it or use the additional capacity.
Logical volume VG/lvol5 successfully converted.
[root@host-093 ~]# lvconvert --yes --type raid10 VG/lvol5
Using default stripesize 64.00 KiB.
Replaced LV type raid10 (same as raid10_near) with possible type raid0_meta.
Repeat this command to convert to raid10 after an interim conversion has finished.
Logical volume VG/lvol5 successfully converted.
[root@host-093 ~]# lvconvert --yes --type raid10 VG/lvol5
Using default stripesize 64.00 KiB.
Logical volume VG/lvol5 successfully converted.
[root@host-093 ~]# lvs -a -o +devices,segtype
LV VG Attr LSize Log Cpy%Sync Convert Devices Type
lvol0 VG rwi-a-r--- 100.00m 100.00 lvol0_rimage_0(0),lvol0_rimage_1(0) raid1
[lvol0_rimage_0] VG iwi-aor--- 100.00m /dev/sda1(0) linear
[lvol0_rimage_1] VG iwi-aor--- 100.00m /dev/sdb1(1) linear
[lvol0_rmeta_0] VG ewi-aor--- 4.00m /dev/sda1(200) linear
[lvol0_rmeta_1] VG ewi-aor--- 4.00m /dev/sdb1(0) linear
lvol1 VG mwi-a-m--- 100.00m [lvol1_mlog] 100.00 lvol1_mimage_0(0),lvol1_mimage_1(0) mirror
[lvol1_mimage_0] VG iwi-aom--- 100.00m /dev/sda1(25) linear
[lvol1_mimage_1] VG iwi-aom--- 100.00m /dev/sdb1(26) linear
[lvol1_mlog] VG lwi-aom--- 4.00m /dev/sdh1(0) linear
lvol2 VG rwi-a-r--- 100.00m 100.00 lvol2_rimage_0(0),lvol2_rimage_1(0) raid4
[lvol2_rimage_0] VG iwi-aor--- 100.00m /dev/sda1(50) linear
[lvol2_rimage_1] VG iwi-aor--- 100.00m /dev/sdb1(52) linear
[lvol2_rmeta_0] VG ewi-aor--- 4.00m /dev/sda1(201) linear
[lvol2_rmeta_1] VG ewi-aor--- 4.00m /dev/sdb1(51) linear
lvol3 VG rwi-a-r--- 100.00m 100.00 lvol3_rimage_0(0),lvol3_rimage_1(0) raid5
[lvol3_rimage_0] VG iwi-aor--- 100.00m /dev/sda1(75) linear
[lvol3_rimage_1] VG iwi-aor--- 100.00m /dev/sdb1(78) linear
[lvol3_rmeta_0] VG ewi-aor--- 4.00m /dev/sda1(202) linear
[lvol3_rmeta_1] VG ewi-aor--- 4.00m /dev/sdb1(77) linear
lvol4 VG rwi-a-r--- 300.00m 100.00 lvol4_rimage_0(0),lvol4_rimage_1(0),lvol4_rimage_2(0),lvol4_rimage_3(0),lvol4_rimage_4(0) raid6
[lvol4_rimage_0] VG iwi-aor--- 104.00m /dev/sda1(204) linear
[lvol4_rimage_0] VG iwi-aor--- 104.00m /dev/sda1(100) linear
[lvol4_rimage_1] VG iwi-aor--- 104.00m /dev/sdb1(129) linear
[lvol4_rimage_1] VG iwi-aor--- 104.00m /dev/sdb1(104) linear
[lvol4_rimage_2] VG iwi-aor--- 104.00m /dev/sdc1(26) linear
[lvol4_rimage_2] VG iwi-aor--- 104.00m /dev/sdc1(1) linear
[lvol4_rimage_3] VG iwi-aor--- 104.00m /dev/sdd1(26) linear
[lvol4_rimage_3] VG iwi-aor--- 104.00m /dev/sdd1(1) linear
[lvol4_rimage_4] VG iwi-aor--- 104.00m /dev/sde1(1) linear
[lvol4_rmeta_0] VG ewi-aor--- 4.00m /dev/sda1(203) linear
[lvol4_rmeta_1] VG ewi-aor--- 4.00m /dev/sdb1(103) linear
[lvol4_rmeta_2] VG ewi-aor--- 4.00m /dev/sdc1(0) linear
[lvol4_rmeta_3] VG ewi-aor--- 4.00m /dev/sdd1(0) linear
[lvol4_rmeta_4] VG ewi-aor--- 4.00m /dev/sde1(0) linear
lvol5 VG rwi-a-r--- 200.00m 100.00 lvol5_rimage_0(0),lvol5_rimage_2(0),lvol5_rimage_1(0),lvol5_rimage_3(0) raid10
[lvol5_rimage_0] VG iwi-aor--- 100.00m /dev/sda1(206) linear
[lvol5_rimage_0] VG iwi-aor--- 100.00m /dev/sda1(125) linear
[lvol5_rimage_1] VG iwi-aor--- 100.00m /dev/sdb1(156) linear
[lvol5_rimage_1] VG iwi-aor--- 100.00m /dev/sdb1(131) linear
[lvol5_rimage_2] VG iwi-aor--- 100.00m /dev/sdc1(28) linear
[lvol5_rimage_3] VG iwi-aor--- 100.00m /dev/sdd1(28) linear
[lvol5_rmeta_0] VG ewi-aor--- 4.00m /dev/sda1(205) linear
[lvol5_rmeta_1] VG ewi-aor--- 4.00m /dev/sdb1(130) linear
[lvol5_rmeta_2] VG ewi-aor--- 4.00m /dev/sdc1(27) linear
[lvol5_rmeta_3] VG ewi-aor--- 4.00m /dev/sdd1(27) linear
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2018:3193 |
Description of problem: All volume type (besides linear) conversion attempts that are unsupported provide possible layouts in the warning messages. # linear [root@host-073 ~]# lvcreate -L 100M --type linear VG Logical volume "lvol0" created. # striped [root@host-073 ~]# lvcreate -L 100M -i 2 --type striped VG Using default stripesize 64.00 KiB. Rounding size 100.00 MiB (25 extents) up to stripe boundary size 104.00 MiB(26 extents). Logical volume "lvol1" created. # raid1 [root@host-073 ~]# lvcreate -L 100M -m 1 --type raid1 VG Logical volume "lvol2" created. [root@host-073 ~]# lvconvert --type raid6 VG/lvol0 Using default stripesize 64.00 KiB. Conversion operation not yet supported. [root@host-073 ~]# lvconvert --type raid6 VG/lvol1 Using default stripesize 64.00 KiB. Replaced LV type raid6 with possible type raid6_n_6. Do you want to convert raid6 LV VG/lvol1 to raid6_n_6? [y/n]: n Logical volume VG/lvol1 NOT converted. Converting VG/lvol1 from striped is directly possible to the following layouts: raid0 raid0_meta raid10 raid4 raid5_n raid6_n_6 [root@host-073 ~]# lvconvert --type raid6 VG/lvol2 Using default stripesize 64.00 KiB. Unable to convert LV VG/lvol2 from raid1 to raid6. Converting VG/lvol2 from raid1 is directly possible to the following layouts: mirror raid4 raid5_n raid5_la raid5_ls raid5_ra raid5_rs Version-Release number of selected component (if applicable): lvm2-2.02.169-3.el7 BUILT: Wed Mar 29 09:17:46 CDT 2017 lvm2-libs-2.02.169-3.el7 BUILT: Wed Mar 29 09:17:46 CDT 2017 lvm2-cluster-2.02.169-3.el7 BUILT: Wed Mar 29 09:17:46 CDT 2017 device-mapper-1.02.138-3.el7 BUILT: Wed Mar 29 09:17:46 CDT 2017 device-mapper-libs-1.02.138-3.el7 BUILT: Wed Mar 29 09:17:46 CDT 2017 device-mapper-event-1.02.138-3.el7 BUILT: Wed Mar 29 09:17:46 CDT 2017 device-mapper-event-libs-1.02.138-3.el7 BUILT: Wed Mar 29 09:17:46 CDT 2017 device-mapper-persistent-data-0.7.0-0.1.rc6.el7 BUILT: Mon Mar 27 10:15:46 CDT 2017