Jump to content

Almost pure application server, how can I utilize an all SSD array? Is a large SSD cache pool a solution?


Recommended Posts

I've ran an Unraid install on my old desktop hardware for ~2 years now and I love it. I initially used it to store data, but overtime bloated it with VMs/dockers. It's at the point now I'd like to have a separate machine with more compute to run these applications. I recently purchased a R730 which I plan to offload the applications onto and use the original Unraid machine for almost solely data storage.

With that said, I would like to use an all SSD array on the R730 to keep whatever I run on it, "fast". I've known for a long time ever since I first started research Unraid SSDs ""cannot"" be used in the storage pool(s) and only as cache drives. I've also read 10's of posts that seem to kind of contradict that. I really can't find a clear answer that outlines when and if they are used what you are giving up, how to do it "the best", etc. Just little tidbits of information here and there that don't always match up. Provided I've seen moderator level members mention they've built all SSD machines for clients and themselves, I have to assume there is some reasonable way to do this.

So the best I can tell (from limetech's response) is that when I select a drive I need to check its TRIM command type if its "Deterministic read zeros after TRIM" (DZ_TRIM) then that's the best outcome, "Deterministic read data after TRIM" (DX_TRIM) then that's "ok", and otherwise the drive probably shouldn't be used. Further, and I doubt this makes sense, I think I would just stay away from the SSDs listed as having some issue on the wikipedia TRIM page. What else can I do prior to actually setting up the array to ensure the SSDs I purchase are "good to use"?

I've also seen some interesting solutions where users have no parity drive in the pool which somehow makes the situation better. How would this make the issue better? I've also seen solutions where, from what I can tell, users have a small HDD based storage pool and then utilize a large SSD cache pool and just run all the applications from there. Is there a good post or documentation on how to implement such a solution?

And just overall, is there a Limetech specific page/documentation outlining any of this? If and when SSDs can be used as storage?


 

Link to comment
19 hours ago, kevindckr said:

So the best I can tell (from limetech's response) is that when I select a drive I need to check its TRIM command type if its "Deterministic read zeros after TRIM" (DZ_TRIM) then that's the best outcome, "Deterministic read data after TRIM" (DX_TRIM) then that's "ok", and otherwise the drive probably shouldn't be used. Further, and I doubt this makes sense, I think I would just stay away from the SSDs listed as having some issue on the wikipedia TRIM page. What else can I do prior to actually setting up the array to ensure the SSDs I purchase are "good to use"?

This would be for the future, when Unraid supports TRIM for array devices, for now it doesn't, so you can use any tipe of SSD, they will never be trimmed, so write performance might degrade over time, depending on the use case and also on the SSDs used.

 

19 hours ago, kevindckr said:

I've also seen some interesting solutions where users have no parity drive in the pool which somehow makes the situation better. How would this make the issue better?

Better performance since parity can slow down writes, specially if not using turbo write or doing simultaneous writes to multiple array devices, also parity SSD will take a beating compared to the other ones, since it's updated when there are writes to any of the other array devices, i.e., if you have 10 array devices parity will have 10 times the number of writes of the other ones, and because of that it will also suffer more from the lack of trim.

 

19 hours ago, kevindckr said:

I've also seen solutions where, from what I can tell, users have a small HDD based storage pool and then utilize a large SSD cache pool and just run all the applications from there. Is there a good post or documentation on how to implement such a solution?

Nothing special about that, just assign one disk, or even a flash drive, as an array device and then you can run one or more cache pools, these can be trimmed and can also use different raid profiles for better performance.

Link to comment

Excuse the noob question but I've been lucky enough to get my hands on an old server which only has SSD's, 26 x 2Tb in total. I'm in the process of building it and through a combination of ignorance and inexperience I've configured it as follows,

 

 

image.thumb.png.f275e9aaa0542df8dbadd5faccb3d661.png

 

From what I've understood am I right in thinking it would better if I used conventional disk(s) for parity and just had a huge cache? Unfortunately, the chassis only supports 2.5" drives with nothing available internally to jury rig (it's an HP DL380 G9) so I'll need to swap out some of the existing.

 

I'm hoping to use this machine instead of my current old PC and would look to migrate everything across (or backup/restore, still learning that bit).

 

The worry I have is that I've seen lots of comments about not supporting SSD's in an array or advice against it but also posts from people who've been doing it for years without issue. Not that I'm running any mission critical apps or whatever, just the usual Plex and downloaders etc. the important data is all in the cloud.

 

Am I wasting my time or is it worth pursuing?

 

TIA

 

 

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...