Jump to content
We're Hiring! Full Stack Developer ×

Replace multi disk btrfs cache pool with a single disk


Recommended Posts

Hi, when I first setup UnRAID, I used a bunch of old 2TB drives and pooled them together with btrfs as my cache.  I did this mostly to increase the storage space of my Server.  Now, as these disk age and larger capacity drives are available, I would like to retire these drives and replace them with a new large capacity drive.  What is the best way to perform this task?  Ideally, given I will also be freeing up a bunch of slots in my chassis, I will like to expand my new cache as more space is needed. 
 

Thanks you!

Link to comment
12 minutes ago, Hammer8 said:

bunch of old 2TB drives and pooled them together with btrfs as my cache.  I did this mostly to increase the storage space of my Server.

For space it would have made more sense to put these in the array. I assume they weren't SSDs since you said they were old.

 

What do you plan to use as cache?

Link to comment
1 hour ago, Hammer8 said:

maxed out by main array by the 30 disk limit

I always recommend few large disks instead of many small disks. Large disks perform better. Each additional disk requires more hardware, more power, at some point more license (and you already went beyond that by maxing out array). Most importantly, each additional disk is an additional point of failure.

 

I am guessing you have a lot of small old disks in your server. Do you know that parity by itself cannot recover anything? In order to reliably rebuild every bit of a failed disk, it must be able to reliably read every bit of all other disks.

 

Do any of your disks have SMART warnings on the Dashboard page?

 

1 hour ago, Hammer8 said:

I have a 1TB SSD as another cache (Eg., besides the cache made of the 2TB drives)

I assume you mean you have another pool, not another cache. But maybe you mean something else.

 

Instead of asking more questions I am just going to ask you to

 

attach diagnostics to your NEXT post in this thread.

 

Link to comment

You have 3 pools, cache (1 drive), poolx (15 drives), and temp (1 drive).

 

If you replace that 15 drive pool with a single disk it won't have any redundancy.

 

Despite having 28TB capacity (no single disks that large anyway), it looks like poolx only has 8TB contents.

 

You could replace both parity with 8TB, replace disks 1, 2 (or even better, your 2 fullest array disks) with 8TB, then you would have enough space to copy poolx to the array, get rid of all poolx. Then that data would all be protected by dual parity.

 

You really need to make some room on all your array disks anyway. Filling disks completely is just asking for trouble.

 

 

Link to comment

That wouldn't solve the problem you have with your full array disks. And mirror would mean only 18TB capacity from 2x18TB disks.

 

Long term larger parity gets you more capacity more cheaply since that extra capacity can let you upsize all array disks.

 

Actually, you could upsize any of your array disks to 4TB right now without even replacing parity.

 

25 minutes ago, trurl said:

You really need to make some room on all your array disks anyway. Filling disks completely is just asking for trouble.

On another thread somebody filled all their disks, and now they are having problems including corrupt filesystems. Filesystem repair needs some free space to work with, and full filesystems perform worse.

Link to comment

Maybe I don’t understand…I had thought if I upgrade my array disks, given my parity disks are only 4TB, that the files on the new, 18 TB disks would not be protected.  
 

Also, with respect to keeping some free space, I don’t think I realized that was important when I first setup the server, but now have set a threshold of 15% free….

Edited by Hammer8
Link to comment

Sorry, I don’t understand.  My goal is to install 2 new 18TB disks, move all my data off poolx, get rid of poolx and it’s associated 2TB disks.  What is the best way to accomplished that?  I cannot afford to buy more than two drives at this time…that’s why I didn’t think upgrading the array disks is an option.

Link to comment

Thanks…I think that’s my question.  How do I copy the files from poolx to the new pooly?  I would like pooly to have the same file structure, setup as poolx.  Do I need to create everything manually or is there a better way?  Thank you for your help and apologies for the noob questions!

Link to comment
2 minutes ago, Hammer8 said:

copy the files from poolx to the new pooly

Dynamix File Manager plugin

 

1 minute ago, Hammer8 said:

notification threshold

All that does is give you a notification.

 

Each user share has a Minimum Free setting. If an array disk has less than Minimum Free, Unraid will choose another array disk when writing a new file to that user share. You should set Minimum Free to larger than the largest file you expect to write to the share.

 

Each pool also has a Minimum Free setting. If a pool has less than Minimum Free, Unraid will choose an array disk instead (overflow), but only for  cache:prefer or cache:yes shares.

 

Not really all that helpful when all your disks are already very full.

Link to comment

While pools and array are all part of user shares, files on pools are treated differently than files on array disks in some ways

 

Minimum Free explained above.

 

Mover

cache:yes = move from designated pool to the array

cache:prefer = move from array to designated pool

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...