Oliver Ransom
2009-Sep-19 06:15 UTC
[CentOS] How does LVM decide which Physical Volume to write to?
Hi everyone. This isn't specifically a CentOS question, since it could apply for any distro but I hope someone can answer it anyway. I took the following steps but was puzzled by the outcome of the test at the end: 1. Create a RAID1 array called md3 with two 750GB drives 2. Create a RAID1 array called md9 with two 500GB drives 3. Initialise md3 then md9 as physical volumes (pvcreate) 4. Create a new volume group called "3ware" with md3 (helps me remember what controller the disks are on) 5. Use vgextend and add md9 to the 3ware volume group. 6. Add a logical volume filling the volume group then create a ext3 filesystem on the entire volume. Now I started moving a lot of data onto the volume and iostat said all the data was being written to md9. Why that array? How does it decide which physical volume to write to? I could not find any documentation or information online about how exactly this works. Thanks! Oliver
Fabian Arrotin
2009-Sep-19 08:58 UTC
[CentOS] How does LVM decide which Physical Volume to write to?
Oliver Ransom wrote:> Hi everyone. > > This isn't specifically a CentOS question, since it could apply for > any distro but I hope someone can answer it anyway. > > I took the following steps but was puzzled by the outcome of the test > at the end: > > 1. Create a RAID1 array called md3 with two 750GB drives > 2. Create a RAID1 array called md9 with two 500GB drives > 3. Initialise md3 then md9 as physical volumes (pvcreate) > 4. Create a new volume group called "3ware" with md3 (helps me > remember what controller the disks are on) > 5. Use vgextend and add md9 to the 3ware volume group. > 6. Add a logical volume filling the volume group then create a ext3 > filesystem on the entire volume. > > Now I started moving a lot of data onto the volume and iostat said all > the data was being written to md9. Why that array? How does it decide > which physical volume to write to? > > I could not find any documentation or information online about how > exactly this works. >What ? no documentation covering LVM admin on/for CentOS ? hmm, is http://www.centos.org/docs/5/html/5.2/Cluster_Logical_Volume_Manager/ not reachable from your side ? How have you configured you LV ? linear or stripped ? -- -- Fabian Arrotin idea=`grep -i clue /dev/brain` test -z "$idea" && echo "sorry, init 6 in progress" || sh ./answer.sh
Ross Walker
2009-Sep-21 14:21 UTC
[CentOS] How does LVM decide which Physical Volume to write to?
On Sep 19, 2009, at 2:15 AM, Oliver Ransom <oliver at ransom.com.au> wrote:> Hi everyone. > > This isn't specifically a CentOS question, since it could apply for > any distro but I hope someone can answer it anyway. > > I took the following steps but was puzzled by the outcome of the test > at the end: > > 1. Create a RAID1 array called md3 with two 750GB drives > 2. Create a RAID1 array called md9 with two 500GB drives > 3. Initialise md3 then md9 as physical volumes (pvcreate) > 4. Create a new volume group called "3ware" with md3 (helps me > remember what controller the disks are on) > 5. Use vgextend and add md9 to the 3ware volume group. > 6. Add a logical volume filling the volume group then create a ext3 > filesystem on the entire volume. > > Now I started moving a lot of data onto the volume and iostat said all > the data was being written to md9. Why that array? How does it decide > which physical volume to write to? > > I could not find any documentation or information online about how > exactly this works.I don't know how it picks a PV, maybe flips a coin, but it isn't suppose to be a concern to the admin. One can explicitly assign a PV during LV creation by specifying the PV behind the VG name. If you want to stripe the PVs look at the -i and - I options to lvcreate. If you have a lot of PVs you can specify which PVs to stripe across by listing them after the VG name. -Ross
Filipe Brandenburger
2009-Sep-21 14:30 UTC
[CentOS] How does LVM decide which Physical Volume to write to?
Hi, On Sat, Sep 19, 2009 at 02:15, Oliver Ransom <oliver at ransom.com.au> wrote:> Now I started moving a lot of data onto the volume and iostat said all > the data was being written to md9. Why that array? How does it decide > which physical volume to write to?This does not exactly explain how it picks them at creation, but you can use the command "lvdisplay -m" or "lvdisplay -m /dev/vgname/lvname" to show which logical blocks are mapped to which physical blocks of the underlying pv. HTH, Filipe