* [linux-lvm] "lvconvert --mirrors 1 --stripes 3 vgtest/lvtest" command succeeds, but no stripes
@ 2019-05-16 9:03 Gang He
2019-05-16 10:55 ` Zdenek Kabelac
0 siblings, 1 reply; 2+ messages in thread
From: Gang He @ 2019-05-16 9:03 UTC (permalink / raw)
To: linux-lvm
Hello Guys,
I found lvconvert command (in lvm lvm2-2.02.120) did not handle "--stripes" option correctly.
The reproduce steps are as below,
# vgcreate vgtest /dev/vdb /dev/vdc /dev/vdd /dev/vde /dev/vdf /dev/vdg
# lvcreate -n lvtest -L 8G vgtest
# lvconvert --mirrors 1 --stripes 3 vgtest/lvtest
# lvs -o+stripes
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert #Str
lvtest vgtest rwi-a-r--- 8.00g 12.21 2
But if you create LV using lvcreate command directly, the command succeeds with stripes.
e.g.
# lvcreate --mirrors 1 --stripes 3 -L 4G vgtest
# lvs -o+stripes
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert #Str
lvol0 vgtest rwi-a-r--- 4.01g 8.67 6
I also use lvm2-2.02.180 to reproduce this issue, the lvconvert command works like before,
but the command will print out a message, like that,
# lvconvert --mirrors 1 --stripes 3 vgtest/lvtest
Command does not accept option: --stripes 3.
Why do we can not use lvconvert to do like that, design issue? but lvcreate can do that.
What limitations are there between mirrors and stripes?
Thanks
Gang
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [linux-lvm] "lvconvert --mirrors 1 --stripes 3 vgtest/lvtest" command succeeds, but no stripes
2019-05-16 9:03 [linux-lvm] "lvconvert --mirrors 1 --stripes 3 vgtest/lvtest" command succeeds, but no stripes Gang He
@ 2019-05-16 10:55 ` Zdenek Kabelac
0 siblings, 0 replies; 2+ messages in thread
From: Zdenek Kabelac @ 2019-05-16 10:55 UTC (permalink / raw)
To: LVM general discussion and development, Gang He
Dne 16. 05. 19 v 11:03 Gang He napsal(a):
> Hello Guys,
>
> I found lvconvert command (in lvm lvm2-2.02.120) did not handle "--stripes" option correctly.
> The reproduce steps are as below,
> # vgcreate vgtest /dev/vdb /dev/vdc /dev/vdd /dev/vde /dev/vdf /dev/vdg
> # lvcreate -n lvtest -L 8G vgtest
> # lvconvert --mirrors 1 --stripes 3 vgtest/lvtest
> # lvs -o+stripes
> LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert #Str
> lvtest vgtest rwi-a-r--- 8.00g 12.21 2
>
> But if you create LV using lvcreate command directly, the command succeeds with stripes.
> e.g.
> # lvcreate --mirrors 1 --stripes 3 -L 4G vgtest
> # lvs -o+stripes
> LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert #Str
> lvol0 vgtest rwi-a-r--- 4.01g 8.67 6
>
> I also use lvm2-2.02.180 to reproduce this issue, the lvconvert command works like before,
> but the command will print out a message, like that,
> # lvconvert --mirrors 1 --stripes 3 vgtest/lvtest
> Command does not accept option: --stripes 3.
>
> Why do we can not use lvconvert to do like that, design issue? but lvcreate can do that.
> What limitations are there between mirrors and stripes?
Layout of disks with raid target is:
1st. + 2nd. are paired into raid1
3rd. + 4th. are paired into raid1
5th. + 6th. are making 3rd. raid1
then with your --stripe option - above raid1-like-devices are combined into
one big raid0 array (aka raid10) (all happens within single device target)
So converting ordinary LV into such beast is not trivial.
Although I believe you should look at reshaping possibilities, but I'm not
quite sure there is already support for raid10.
In past with old --type mirror target the logic was different - you had
'individual' mirror legs striped - and then from them it's been mirrored/raid1
(aka raid01). Clearly old mechanism (where you only say you add new 'striped'
leg) is way more easier for implementation - you just allocate striped LV and
add as a new leg to mirror.
Regards
Zdenek
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-05-16 10:55 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-16 9:03 [linux-lvm] "lvconvert --mirrors 1 --stripes 3 vgtest/lvtest" command succeeds, but no stripes Gang He
2019-05-16 10:55 ` Zdenek Kabelac
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).