From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx3.redhat.com (mx3.redhat.com [172.16.48.32]) by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n6REq2aT018353 for ; Mon, 27 Jul 2009 10:52:04 -0400 Received: from mail-ew0-f220.google.com (mail-ew0-f220.google.com [209.85.219.220]) by mx3.redhat.com (8.13.8/8.13.8) with ESMTP id n6REpdGA002369 for ; Mon, 27 Jul 2009 10:51:39 -0400 Received: by ewy20 with SMTP id 20so3139164ewy.3 for ; Mon, 27 Jul 2009 07:51:39 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: <20090727135628.GA3782@us.ibm.com> References: <29ae894c0907260312m3b2ffb2ex5cbef456f3c49bee@mail.gmail.com> <20090727135628.GA3782@us.ibm.com> Date: Mon, 27 Jul 2009 16:45:42 +0200 Message-ID: <29ae894c0907270745k3cd922c9lea14d782435c58e6@mail.gmail.com> Subject: Re: [linux-lvm] Mirroring implementation From: brem belguebli Content-Type: multipart/alternative; boundary=0016e6d99aaf37e511046fb1025d Reply-To: LVM general discussion and development List-Id: LVM general discussion and development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , List-Id: To: LVM general discussion and development --0016e6d99aaf37e511046fb1025d Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Hi Malahal, 2009/7/27, malahal@us.ibm.com : > > brem belguebli [brem.belguebli@gmail.com] wrote: > > Hi, > > I have a few questions concerning LVM mirror implementation, and I > > couldn't find any suitable design doc > > I need to setup a dual site ( a few miles between the 2 sites, around > 1 ms > > RTD) mirror based cluster system. > > You need asynchronous mirroring (remote replication module). This is not > in mainline (not sure if included in the latest RHEL release). The > following comments apply to dm-mirror module that is already in the > mainline. Do you mean a Disk array based replication mechanism (SRDF, CA, etc...)? or is it system based , and if so do you have any technical document link to provide me ? > - *what is the default behaviour of the mirroring, writing in parallel > to > > both mirror legs or serialized ? what about read requests ? > > It writes in parallel. Reads from a single device (switches on a device > failure only). > > > - for write requests, is the ack returned to the application (thru > VFS) > > when the 2 legs are updated or only when the first is updated ? > > When two are updated. (you need 'remote replication' module for the > latter behaviour) As I said, I couldn't find suitable doc about this, and in fact that's the behaviour I'm expecting (acking only when the 2 legs are up to date) . Can you point me to the good doc ? > - Is there a way to control it ? > > I don't think so. > > > - what happens if the log device is lost ? > > The mirror stops and a daemon re-allocates the log and the mirror should > be back to business (this depends on your lvm configuration though). As the mirrorlog is in my case bound to a given SAN device (let's say /dev/sdx) and this device belongs to the SAN array located on the datacenter that experienced a disaster, my mirror won't be able to be brought back online as long as /dev/sdx is down . > I saw a post about LVM mirror vs mdadm where it is about the location > of > > the mirror log > > ([1]https://www.redhat.com/archives/linux-lvm/2009-July/msg00012.html > ) > > someone gave the answer that when creating the LV's with --alloc > anywhere > > it will auto locate the log on any of the PV's. > > According to what I could read, the --alloc doesn't intend for that, > am I > > right ? > > Replace your "auto locate" to "allocate the log on any of the PV's". > > What is the intention of the "--alloc anywhere" from your reading? According to the lvm man page, --alloc anywhere, in crontrary to --alloc strict (default) would allocate "data" LE to any pv forming the VG, resulting in having striped or mirrored LE on the same PV (sic!). It doesn't seem to concern log device which is de facto a 3rd device not necessary belonging to the VG, or the man page is not up2date. --Malahal. > > _______________________________________________ > linux-lvm mailing list > linux-lvm@redhat.com > https://www.redhat.com/mailman/listinfo/linux-lvm > read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/ > --0016e6d99aaf37e511046fb1025d Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable
Hi Malahal,
=A0
=A0
2009/7/27, malahal@us.ibm.com <mal= ahal@us.ibm.com>:
brem belguebli [brem.belguebli@gmail.com] wrote:
>=A0= =A0=A0=A0Hi,
>=A0=A0=A0=A0I have a few questions concerning LVM mirror implementation= , and I
>=A0=A0=A0=A0couldn't find any suitable design doc
>= ;=A0=A0=A0=A0I need to setup a dual site ( a few miles between the 2 sites,= around 1 ms
>=A0=A0=A0=A0RTD) mirror based cluster system.

You need asynchronous mirroring (remote replication module). This is no= t
in mainline (not sure if included in the latest RHEL release). The
= following comments apply to dm-mirror module that is already in the
mainline.
=A0
Do you mean a Disk array based replication mechanism (SRDF, CA, etc...= )? or is it system based , and if so do you have any technical document lin= k to provide me ?
=A0

>=A0=A0=A0=A0- *what is the d= efault behaviour of the mirroring, writing in parallel to
>=A0=A0=A0= =A0both mirror legs or serialized ? what about read requests ?

It writes in parallel. Reads from a single device (switches on a device=
failure only).

>=A0=A0=A0=A0- for write requests, is the ack = returned to the application (thru VFS)
>=A0=A0=A0=A0when the 2 legs a= re updated or only when the first is updated ?

When two are updated. (you need 'remote replication' module for= the
latter behaviour)
As I said, I couldn't find suitable doc about this, and in fact th= at's the behaviour I'm expecting (acking only when the 2 legs are u= p=A0to date) . Can you point me to the good doc ?
=A0

>=A0=A0=A0=A0- Is there a way= to control it ?

=A0=A0=A0=A0I don't think so.

>=A0=A0= =A0=A0- what happens if the log device is lost ?

The mirror stops and a daemon re-allocates the log and the mirror shoul= d
be back to business (this depends on your lvm configuration though).
=A0
As the mirrorlog is in my case bound to a given SAN device (let's = say /dev/sdx) and this device belongs to the SAN array located on the datac= enter that experienced a disaster, my mirror won't be able to be brough= t back online as long as /dev/sdx is down .

>=A0=A0=A0=A0I saw a post abo= ut LVM mirror vs mdadm where it is about the location of
>=A0=A0=A0= =A0the mirror log
>=A0=A0=A0=A0([1]https://www.redhat.com/archives/linux-lvm/2009-July/= msg00012.html)
>=A0=A0=A0=A0someone gave the answer that when cre= ating the LV's with --alloc anywhere
>=A0=A0=A0=A0it will auto locate the log on any of the PV's.
>= =A0=A0=A0=A0According to what I could read, the --alloc doesn't intend = for that, am I
>=A0=A0=A0=A0right ?

Replace your "auto lo= cate" to "allocate the log on any of the PV's".

What is the intention of the "--alloc anywhere" from your rea= ding?
=A0
According to the lvm man page, --alloc anywhere, in crontrary to --all= oc strict (default) would allocate "data" LE to any pv forming th= e VG, resulting in having striped or mirrored LE on the same PV (sic!).
=A0
It doesn't seem to concern log device which is de facto a 3rd devi= ce not necessary belonging to the VG, or the man page is not up2date.
=A0

--Malahal.

______________= _________________________________
linux-lvm mailing list
linux-lvm@redhat.com
https://www.r= edhat.com/mailman/listinfo/linux-lvm
read the LVM HOW-TO at http://tldp.org/HOWTO/LVM-HOWTO/<= br>

--0016e6d99aaf37e511046fb1025d--