Operating System - HP-UX
1833736 Members
2872 Online
110063 Solutions
New Discussion

Re: Strict Allocation Policy

 
SOLVED
Go to solution
san.sa
Advisor

Strict Allocation Policy

Hi Experts

I need to increase a filesystem by 12 Gb which resides on the VG00 and where all LV's are mirrored with strict allocation

Iam getting the following error
----------------------------------------------
lvextend -L 21504 /dev/vg00/lvol14
lvextend: Not enough free physical extents available.
Logical volume "/dev/vg00/lvol14" could not be extended.
Failure possibly caused by strict allocation policy

# strings /etc/lvmtab
/dev/vg00
/dev/dsk/c0t0d0
/dev/dsk/c0t2d0
/dev/dsk/c2t0d0
/dev/dsk/c2t2d0
---------------------
vgdisplay vg00
--- Volume groups ---
VG Name /dev/vg00
VG Write Access read/write
VG Status available
Max LV 255
Cur LV 18
Open LV 18
Max PV 16
Cur PV 4
Act PV 4
Max PE per PV 4350
VGDA 8
PE Size (Mbytes) 8
Total PE 17360
Alloc PE 13098
Free PE 4262
Total PVG 0
Total Spare PVs 0
Total Spare PVs in use 0

lvdisplay /dev/vg00/lvol14
--- Logical volumes ---
LV Name /dev/vg00/lvol14
VG Name /dev/vg00
LV Permission read/write
LV Status available/syncd
Mirror copies 1
Consistency Recovery MWC
Schedule parallel
LV Size (Mbytes) 9096
Current LE 1137
Allocated PE 2274
Stripes 0
Stripe Size (Kbytes) 0
Bad block on
Allocation strict
IO Timeout (Seconds) default


bdf
Filesystem kbytes used avail %used Mounted on
/dev/vg00/lvol3 204800 167280 37520 82% /
/dev/vg00/lvol1 298928 88408 180624 33% /stand
/dev/vg00/lvol7 8388608 2846904 5499192 34% /var
/dev/vg00/perfmgr_lv
106496 5927 94339 6% /var/adm/perfmgr
/dev/vg00/lvol10 4194304 2128 3930172 0% /var/adm/crash
/dev/vg00/lvol6 2097152 1109736 979744 53% /usr
/dev/vg00/lvol14 9314304 612477 8169131 7% /usr/sap/DAP
/dev/vg00/lvol11 524288 455027 64970 88% /usr/emc
/dev/vg00/lvol5 524288 97112 423856 19% /tmp
/dev/vg00/lvol15 4194304 106558 3832321 3% /oracle/DAP
/dev/vg00/lvol4 2097152 1238232 853032 59% /opt
/dev/vg00/lvol12 204800 92571 105225 47% /opt/tng
/dev/vg00/lvol16 204800 69230 127159 35% /opt/Tivoli
/dev/vg00/tscm_lv 106496 22174 79070 22% /opt/IBM/SCM
/dev/vg00/lvol8 204800 19144 184264 9% /home

_------------------------------------------

Please let me know what is the posssible way to extend the file system
10 REPLIES 10
Deoncia Grayson_1
Honored Contributor

Re: Strict Allocation Policy

could you please post vgdisplay -v vg00... i can't see why you're getting your error but it may be because your free physical extents is on your mirrored half and not your primary disks in the volume group.
If no one ever took risks, Michelangelo would have painted the Sistine floor. -Neil Simon
erics_1
Honored Contributor

Re: Strict Allocation Policy

By extending a mirrored lvol 12gb, you will need 12gb free on the primary disk and 12gb free on the mirror disk. lvm is telling you one of the disks in the vg most likely doesn't have enough free extents to allow the extend to happen on either the primary or mirror copy. Post the output of pvdisplay for each pv in vg00 and specify which disks are currently being used by lvol14.

Regards,
Eric
san.sa
Advisor

Re: Strict Allocation Policy

Hi ,

I find there is not enough free Space available in the first disk

vgdisplay -v vg00
--- Volume groups ---
VG Name /dev/vg00
VG Write Access read/write
VG Status available
Max LV 255
Cur LV 18
Open LV 18
Max PV 16
Cur PV 4
Act PV 4
Max PE per PV 4350
VGDA 8
PE Size (Mbytes) 8
Total PE 17360
Alloc PE 13098
Free PE 4262
Total PVG 0
Total Spare PVs 0
Total Spare PVs in use 0

--- Logical volumes ---
LV Name /dev/vg00/lvol1
LV Status available/syncd
LV Size (Mbytes) 304
Current LE 38
Allocated PE 76
Used PV 2

LV Name /dev/vg00/lvol2
LV Status available/syncd
LV Size (Mbytes) 8192
Current LE 1024
Allocated PE 2048
Used PV 2

LV Name /dev/vg00/lvol3
LV Status available/syncd
LV Size (Mbytes) 200
Current LE 25
Allocated PE 50
Used PV 2

LV Name /dev/vg00/lvol9
LV Status available/syncd
LV Size (Mbytes) 4096
Current LE 512
Allocated PE 1024
Used PV 2

LV Name /dev/vg00/lvol4
LV Status available/syncd
LV Size (Mbytes) 2048
Current LE 256
Allocated PE 512
Used PV 2

LV Name /dev/vg00/lvol5
LV Status available/syncd
LV Size (Mbytes) 512
Current LE 64
Allocated PE 128
Used PV 2

LV Name /dev/vg00/lvol6
LV Status available/syncd
LV Size (Mbytes) 2048
Current LE 256
Allocated PE 512
Used PV 2

LV Name /dev/vg00/lvol7
LV Status available/syncd
LV Size (Mbytes) 8192
Current LE 1024
Allocated PE 2048
Used PV 2

LV Name /dev/vg00/lvol8
LV Status available/syncd
LV Size (Mbytes) 200
Current LE 25
Allocated PE 50
Used PV 2

LV Name /dev/vg00/lvol10
LV Status available/syncd
LV Size (Mbytes) 4096
Current LE 512
Allocated PE 1024
Used PV 2

LV Name /dev/vg00/lvol11
LV Status available/syncd
LV Size (Mbytes) 512
Current LE 64
Allocated PE 128
Used PV 2

LV Name /dev/vg00/lvol12
LV Status available/syncd
LV Size (Mbytes) 200
Current LE 25
Allocated PE 50
Used PV 2

LV Name /dev/vg00/lvol13
LV Status available/syncd
LV Size (Mbytes) 8192
Current LE 1024
Allocated PE 2048
Used PV 2

LV Name /dev/vg00/lvol14
LV Status available/syncd
LV Size (Mbytes) 9096
Current LE 1137
Allocated PE 2274
Used PV 3

LV Name /dev/vg00/lvol15
LV Status available/syncd
LV Size (Mbytes) 4096
Current LE 512
Allocated PE 1024
Used PV 3

LV Name /dev/vg00/lvol16
LV Status available/syncd
LV Size (Mbytes) 200
Current LE 25
Allocated PE 50
Used PV 2

LV Name /dev/vg00/perfmgr_lv
LV Status available/syncd
LV Size (Mbytes) 104
Current LE 13
Allocated PE 26
Used PV 2

LV Name /dev/vg00/tscm_lv
LV Status available/syncd
LV Size (Mbytes) 104
Current LE 13
Allocated PE 26
Used PV 2


--- Physical volumes ---
PV Name /dev/dsk/c0t0d0
PV Status available
Total PE 4340
Free PE 0
Autoswitch On

PV Name /dev/dsk/c0t2d0
PV Status available
Total PE 4340
Free PE 528
Autoswitch On

PV Name /dev/dsk/c2t0d0
PV Status available
Total PE 4340
Free PE 482
Autoswitch On

PV Name /dev/dsk/c2t2d0
PV Status available
Total PE 4340
Free PE 3252
Autoswitch On


what is the maximum possibility to increase the filesystem ,
James R. Ferguson
Acclaimed Contributor
Solution

Re: Strict Allocation Policy

Hi:

LVM 'strict allocatino' simply says that mirrored logical extents cannot appear on the same physical volume or same physical volume group.

Clearly this protects you from a single-point of failure. After all, what good would mirror copies be if all of them failed because all of them were in the same physical space?

It appears that you have enough free logical extents; just not in an arrangement that satisfies keeping mirror copies on different physical volumes. You could try 'lvreducing' the mirror for 'lvol4' and then 'pvmove' extents to one or two physical volumes with space. If you can then 'lvextend' the mirror to the *other* physical disk and finally reissue the 'lvextned' to actually increase the size of the logical volume.

Regards!

...JRF...
Deoncia Grayson_1
Honored Contributor

Re: Strict Allocation Policy

the way you set up now, you can only get about 4 gigs but it you follow James suggestion and do 'lvreduce' the mirror for 'lvol4' and then 'pvmove' extents to one or two physical volumes with space, then you can get the desired increase in size.
If no one ever took risks, Michelangelo would have painted the Sistine floor. -Neil Simon
san.sa
Advisor

Re: Strict Allocation Policy

Thanks to all

Can i work with this possibily


1 . Drop off the existing /usr/sap/DAP
(/dev/vg00/lvol14) along with its mirror ( lvremove )
2. Create a new LV filesystem in the same name /usr/sap/DAP without mirror using the free space available at the disk /dev/dsk/c2t2d0

PV Name /dev/dsk/c2t2d0
PV Status available
Total PE 4340
Free PE 3252
Autoswitch On


Kindly suggest me , wether will it full fill my request for the 12 GB space ,
(not a problem without mirror )
Albert_31
Trusted Contributor

Re: Strict Allocation Policy

Hello Anisha,

Good Day,

I was looking at the data you have posted and found something very strange...

1)
LV Name /dev/vg00/lvol14
LV Status available/syncd
LV Size (Mbytes) 9096
Current LE 1137
Allocated PE 2274
Used PV 3 >>> why are we using 3 PV's here

LV Name /dev/vg00/lvol15
LV Status available/syncd
LV Size (Mbytes) 4096
Current LE 512
Allocated PE 1024
Used PV 3 >>> why are we using 3 PV's here

All other lvol's use only 2 PV's

2)
All your Lvols are mirrored, so why is it that you have no free PE's available on the first disk, something is wrong about the way the LV's were created I guess.. Can you post the lvdisplay -v /dev/vg00/lvol* so that we can check it up for you..

regards

albert

rariasn
Honored Contributor

Re: Strict Allocation Policy

Hi,

# lvdisplay -v /dev/vg00/lvol14|more

Search this string,

--- Distribution of logical volume ---
PV Name LE on PV PE on PV
/dev/dsk/cxtydz 1500 1500
/dev/dsk/catbdc 875 875
....

Have you PE free for extend in all disks?

rgs,

ran
san.sa
Advisor

Re: Strict Allocation Policy

Hi Albert

I have attached the lvdisplay /dev/vg00/lvol* output & diskinfo output as requested

lvdisplay /dev/vg00/lvol*|egrep "LV Name |Mirror copies |Allocation "
LV Name /dev/vg00/lvol1
Mirror copies 1
Allocation strict/contiguous
LV Name /dev/vg00/lvol10
Mirror copies 1
Allocation strict
LV Name /dev/vg00/lvol11
Mirror copies 1
Allocation strict
LV Name /dev/vg00/lvol12
Mirror copies 1
Allocation strict
LV Name /dev/vg00/lvol13
Mirror copies 1
Allocation strict
LV Name /dev/vg00/lvol14
Mirror copies 1
Allocation strict
LV Name /dev/vg00/lvol15
Mirror copies 1
Allocation strict
LV Name /dev/vg00/lvol16
Mirror copies 1
Allocation strict
LV Name /dev/vg00/lvol2
Mirror copies 1
Allocation strict/contiguous
LV Name /dev/vg00/lvol3
Mirror copies 1
Allocation strict/contiguous
LV Name /dev/vg00/lvol4
Mirror copies 1
Allocation strict
LV Name /dev/vg00/lvol5
Mirror copies 1
Allocation strict
LV Name /dev/vg00/lvol6
Mirror copies 1
Allocation strict
LV Name /dev/vg00/lvol7
Mirror copies 1
Allocation strict
LV Name /dev/vg00/lvol8
Mirror copies 1
Allocation strict
LV Name /dev/vg00/lvol9
Mirror copies 1
Allocation strict/contiguous

# lvdisplay /dev/vg00/perfmgr_lv |egrep "LV Name |Mirror copies |Allocation "
LV Name /dev/vg00/perfmgr_lv
Mirror copies 1
Allocation strict

lvdisplay /dev/vg00/tscm_lv |egrep "LV Name |Mirror copies |Allocation "
LV Name /dev/vg00/tscm_lv
Mirror copies 1
Allocation strict

# diskinfo /dev/rdsk/c0t0d0
SCSI describe of /dev/rdsk/c0t0d0:
vendor: HP 36.4G
product id: ST336706LC
type: direct access
size: 35566480 Kbytes
bytes per sector: 512
# diskinfo /dev/rdsk/c0t2d0
SCSI describe of /dev/rdsk/c0t2d0:
vendor: HP 36.4G
product id: ST336706LC
type: direct access
size: 35566480 Kbytes
bytes per sector: 512
# diskinfo /dev/rdsk/c2t2d0
SCSI describe of /dev/rdsk/c2t2d0:
vendor: HP 36.4G
product id: ST336706LC
type: direct access
size: 35566480 Kbytes
bytes per sector: 512
# diskinfo /dev/rdsk/c2t0d0
SCSI describe of /dev/rdsk/c2t0d0:
vendor: HP 36.4G
product id: ST336706LC
type: direct access
size: 35566480 Kbytes
bytes per sector: 512

-----------------

Albert_31
Trusted Contributor

Re: Strict Allocation Policy

Hello Anisha,

Checked the data and I dont like what I see :).. The way the lvol 14 & 15 are created is not the standard or a good practice either

Both lvol14 and lvol15 exhibit the same, I have taken lvol15 as it was first one i could copy :)

PE distribution of lvol15

--- Distribution of logical volume ---
PV Name LE on PV PE on PV
/dev/dsk/c0t0d0 67 67
/dev/dsk/c0t2d0 512 512
/dev/dsk/c2t0d0 445 445

If you check the LE -PE mapping you will find that

First 67 extents
Primary Copy :- c0t0d0
Mirror Copy :- c0t2d0

For the next 445 extents
Primary Copy :- c0t2d0
Mirror Copy :- c2t0d0

In this scenario if, c0t2d0 fails, then there is a >50% chance that you will not be able to recover lvol14 and lvol15 since the MCR is set for the whole Lvol and not for the lE's so basically what will happen is left to your imagination with regards to the sync'ng part..incase the disk fails

First and foremost.. do the following
a) take a backup of the data on lvol13 & lvol14 & lvol15.
b) remove the mirror copy of lvol13 from c0t2d0
# lvreduce -m 0 /dev/vg00/lvol13 /dev/dsk/c0t2d0

c) delete the lvols 14 & 15

d) create the mirror copy of lvol13
# lvextend -m 1 /dev/vg00/lvol13 /dev/dsk/c2t0d0

e) recreate the lvols 14 & 15
# lvcreate -n lvol14 /dev/vg00 (create with 0 bytes)
# lvextend -L sizes /dev/vg00/lvol14 (specify the disks, mention c0t0d0 and c0t2d0)
# lvextend -m 1 /dev/vg00/lvol14 (mention onto c2t0d0 and c2t2d0)

To avoid such issues in future, ensure you use PVG's, check the vgchange/vgcreate/lvcreate/lvchange on how to implement


warm regards

albert