linux-lvm.redhat.com archive mirror
 help / color / mirror / Atom feed
From: Zdenek Kabelac <zkabelac@redhat.com>
To: LVM general discussion and development <linux-lvm@redhat.com>,
	Gang He <ghe@suse.com>
Subject: Re: [linux-lvm] "lvconvert --mirrors 1 --stripes 3 vgtest/lvtest" command succeeds, but no stripes
Date: Thu, 16 May 2019 12:55:14 +0200	[thread overview]
Message-ID: <bb83e565-f831-9bf3-a077-cbef40ea4338@redhat.com> (raw)
In-Reply-To: <5CDD277F020000F90006616F@prv1-mh.provo.novell.com>

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

      reply	other threads:[~2019-05-16 10:55 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
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 message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bb83e565-f831-9bf3-a077-cbef40ea4338@redhat.com \
    --to=zkabelac@redhat.com \
    --cc=ghe@suse.com \
    --cc=linux-lvm@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).