Unsolved

This post is more than 5 years old

4 Operator

 • 

1.8K Posts

101125

August 1st, 2005 17:00

How to change the stripe size on a functional raid array

On Lsilogic adapters. OEM to Dell and Intel.....
 
With raid 1  it is possible to change the stripe size after a scsi raid 1 array is fully functional, with no loss of data. I tried all the stripe sizes between 2K and 256K. Takes very little time. There is no "rebuild" involved.
 
I have not tested this on raid 10, but it should work , this will not work on raid 5 
 
I suggest you do this on a lab machine, before trying it on a production server.
 
From within Windows, go to the raid software interface, and backup the configuration onto floppy. You should already have the raid documented.
 
For total safety you could use this method, aside from a full backup.
 
The golden rule for this procedure...... DO NOT INITIALIZE !!!!!!!!
 
First, if you have multiple array find out which array the system boots from. From the raid bios console, choose logical drives, properties, the info is noted on this page.
 
Go into the raid bios setup console, choose logical drive from the main menu, go into this, highlight your raid 1 array, go  to properties, document the settings on this page... the channel and disk IDs of the drives involved, the number of megabytes of the array.
 
From within the properties page, choose the raid 1 array you want to modify the stripe size for,  delete it. Yes, I did mean delete it.  If you have more than one array on an array adapter you must delete the correct logical drive. There will be a warning your data will be lost; NOT so if you follow the procedure below.
 
Go to the configuration wizard, Go into add configuration, leave it at custom configuration
 
Mark both drives which belonged to the original raid 1 logical drive, which are in the ready state, CTL key and highlight the drives, hit the "accept" the configuration, hit next
 
This bring you to the screen which you configure the array, the logical drive definition screen
 
In the logical drive definition screen, on the right pane make sure the new raid 1 is highlighted.
 
In the left panel, you must chose raid 1 not any other raid type, set your new stripe size, then in the last box, you must fill in the number of megabyte of the raid 1, and accept it, via the accept button just below the area where you manual fill in the megabytes. A screen will come up asking to save the configuration, save it.
When a screen comes up asking to initialize the array, choose NO.  !!!!!!!!!
Under NO circumstances do you initialize the drive, you will lose all data if you initialize the drive. ( Basically the "new" raid 1 must match your previously documented setting except for the stripe size.)
 
If you have multiple array sets, go into the logical drive menu and check that the "set boot drive"  is correct logical array to boot from.
 
Go back to the main menu , go into logical drive, choose the raid 1, properties, check that the setting match to original raid 1, except for the stripe size.
 
Exit out of the setup
 
Reboot.....  your stripe size is changed
 

Message Edited by pcmeiners on 08-07-2005 11:21 AM

720 Posts

August 1st, 2005 22:00

And for Adaptec Controllers the FAST CLI utility can do the same thing, though I do not know if it's destructive or not. My bet would be NOT destructive.

 Testing on a lab machine is a very good Idea.

Warwizard DCSP

4 Operator

 • 

1.8K Posts

August 2nd, 2005 11:00

Warwizard thanks for the info.

 

71 Posts

January 19th, 2006 20:00

Hi All,

I have a situation on a PE2850 where by stripe size is 64Kb on two disk arrays.

I want the second array's stripe size a lot smaller due to the amount of drive slack occuring (the drive only contains user profiles).  Is it possible using this method to resize the stripe size on only the second array?  If not, and I resize the first array to say 32KB, will the second array automatically pick that up.

 

Thanks,

Mark

4 Operator

 • 

1.8K Posts

January 19th, 2006 21:00

With hardware raid, stripe size is not physically marked off on an array set's disks, as are clusters in an OS format , there is NO slack due to the stripe size., be it 2k or 256k.
 
My posts above concern changing the stripe size only  performance, where file size or database records are a particular size, and would benefit from a size other than the default size; this basically is useful for specialty servers, or to correct a mistake in an initial array setup. An example where a smaller stripe size increases performance would be with an Exchange server.
 
Yes, you can change the stripe size on a particular array set without affecting other array sets on the same raid adapter.
 
Unless you have a real good reason stay with the 64k default.
 

Message Edited by pcmeiners on 01-19-2006 06:18 PM

4 Operator

 • 

1.8K Posts

January 19th, 2006 22:00

Please re read my last post, edited.
 
Your operating system cluster size is is creating the slack.
With large files the only wasted space is on the last cluster the file uses, so if the file uses 4000.5 clusters on the disk, 1/2 cluster wasted space is not bad  
 
With small files under the format cluster size, there is wasted space with every file, with a 4k cluster, a 2k file wastes roughly 2k.  a hundred thousand filesof that size creates  200 meg in slack
 

 

Message Edited by pcmeiners on 01-19-2006 06:34 PM

71 Posts

January 19th, 2006 22:00

Thanks pcmeiners,

If it's not drive slack, how can I account for the difference between the 'size' and 'size on disk' values reported by Windows Explorer.  Other arrays on this server which host massive files report I very high efficiency, whereas many files on this array are less than 4K.

Is there something else I can tweak?

No Events found!

Top