Disk Enclosures
cancel
Showing results for 
Search instead for 
Did you mean: 

Data Distribution When Adding a Second 12H Array

SOLVED
Go to solution

Data Distribution When Adding a Second 12H Array

Here's a kind of simplified version of my question, I've changed the numbers for simplicity's sake:

Up until now, we've had a 12H disk array with 12x36Gb drives used to store a large database. Let's say this was the setup:
2 VG's (vg05, vg06), each with 5 lvol's of 30 Gb each. Each lvol contains the same amount of data, which recently went over 20Gb for each lvol. So, we decided to add another identical 12H array, and simply double the size of each lvol. So, let's say I increased both vg05 and vg06 from 150Gb to 300Gb, then increased each lvol from 30Gb to 60Gb. So far, so good. Everything increased fine and everything is working great. Here's the rub, though: The new 12H is inactive all of the time, while the original is still accessing constantly. I imagine since the disk usage on each of the lvols is still less than 30Gb, the new disk array won't be used until they go above the original limit of 30Gb. What I would like to do is take the data currently on the first 12H and split it evenly over both arrays. For both load balancing and better disk I/O. I've been searching but can't find a LVM command or option that will let me do it. So I was thinking that there may be an hparray command that could do it such as arraymgr or arraycfg. Any ideas?
6 REPLIES
Steve Labar
Valued Contributor

Re: Data Distribution When Adding a Second 12H Array

How many LUNs are you using on each RAID? You should be able to "force" a balance by doing a pvmove and deciding which LUNs to move. Do this by executing
pvmove {source LUN, e.g. cXtYdZ} {dest LUN, e.g. cXtYdZ}

This would move all the data from LUN-X of RAID-1 to LUN-X of RAID-2. Just make sure your source and destination LUNs are in the same VG.

Steve

Re: Data Distribution When Adding a Second 12H Array

There is one LUN for each vg, in reality there are 5 LUNs on each array corresponding to 5 volume groups on the system. Would the pvmove command move all of the data from the first array to the second? Or would with balance out the data between the two. I would prefer a way to "even out" the amount of data on both arrays.
Steve Labar
Valued Contributor

Re: Data Distribution When Adding a Second 12H Array

pvmove would move all data in the LUN. With only 1 LUN per vg there isn't much flexiblity. Without reformatting both arrays, I think the only load balance you can achieve would be balancing vg's between the two arrays.

Steve

Re: Data Distribution When Adding a Second 12H Array

I was thinking about it, and perhaps your pvmove suggestion may be a "long way around" solution. Suppose: I move all data from the first array to the second using the pvmove command. Logically, anyone who reads from the database will then get their data from the second array. Theoretically, any writes to the database will done on the first array, correct? If that's true, then anytime someone reads from the database they'll get their data from the second, the when they store their work, it'd be placed on the first. While it's not an immediate, or "true" load-balancing solution, eventually the data should get "mixed up" enough that both arrays are serving the same amount of data. Am I correct in my thinking, or would I have the same problem, just reversed between arrays?
Steve Labar
Valued Contributor
Solution

Re: Data Distribution When Adding a Second 12H Array

Once you've completed your pvmove, your system should treat array-2 as the primary source for that VG until it fills for reads and writes. Once the second array is full then it would start utilizing array-1.

Steve

Re: Data Distribution When Adding a Second 12H Array

That's what I was afraid of. I guess I will have to leave it as it is. I will definitely take this in to consideration during my disk array upgrade. Thanks for all of your help.