Advice on adding SSD to UnRAID box


Recommended Posts

I want to add an SSD to my server - connecting it to one of my Promise SATA 300TX4 controller cards (which already controls 3 of the disks on my unRAID array).

 

Bottom line is I have a whole bunch of config files I need to have available all the time (about 8 Gb worth) - and I need them available without having to spin up any drives - hence the SSD. My questions are...

 

1) Would you suggest having the SSD as part of the UnRAID array?

2) If not, how can I attach the SSD to the controller card and NOT have it be part of the UnRAID array?

3) Are there any pitfalls/problems I may not have thought of?

 

Any help is appreciated!  :)

Link to comment

Hi Roscoe,

 

I think your main goal of adding a SSD to your Unraid system is to give it some more speed in reading and writing 8GB of  config-files you use a lot. am i right?

 

Do you have some free SATA ports available on your mainbord for connecting that SSD, because adding a fast SSD on a slow PCI based sata controller is not the best idea i think.

 

1) Would you suggest having the SSD as part of the UnRAID array?

2) If not, how can I attach the SSD to the controller card and NOT have it be part of the UnRAID array?

3) Are there any pitfalls/problems I may not have thought of?

 

Can you give total specs of your server?

 

 

 

 

Link to comment

That's a perfect reason to use an SSD.

 

1) Would you suggest having the SSD as part of the UnRAID array?

No unless you want it protected and do not mind the spin up of the parity drive when you make writes.

I plan to do something similar I will not have it as part of the array.

 

2) If not, how can I attach the SSD to the controller card and NOT have it be part of the UnRAID array?

use one of the extra sata ports or motherboard ports. I would use a motherboard port over a PCI SATA port, but if that's all I had, I would use it.

 

3) Are there any pitfalls/problems I may not have thought of?

You will need to come up with a backup scenario.

I.E. use rsync to periodically backup the SSD to a folder on your array.

 

See my example rsync script at http://code.google.com/p/unraid-weebotech/updates/list

This is how I plan to backup my ssd.

In fact I also plan to make my SSD bootable with grub4dos which can boot from reiserfs filesystems.

THis way I boot up at lightning ssd speeds rather then slower USB key speeds.

/boot will still be on the key, but I will boot up lickety split.

 

 

Link to comment

Guys,

 

Thanks for the responses. Although blazing fast writes would be great, it's really the 'always on' aspect of the SSD I really need - and I'm sure that by NOT adding it to the UnRAID array I will still get respectable write speeds.

 

So, to NOT add it to the UnRAID array, I just don't add it on the devices page? I did see a couple of posts that briefly mentioned the SSD 'disappearing'. Is this something I should be concerned about?

Link to comment

Without the application ''S.N.A.P'' i don't think you will pull that off.  http://lime-technology.com/forum/index.php?topic=5904.0

 

Makes a drive accessible outside the array. But for best performance install the SSD on a sata port on your mainbord.

Maybe you will have to swap some drives around and play with the ''initconfig'' command a few times but the write/read and accesstimes will be much better for your purpose.

Link to comment

Best performance will depend on what spec the actually onboard port you select is, or the spec of the add-on card you use it on.

 

 

a pci-based controller like that Promise SATA 300TX4 Rosco is using is much slower than any onboard sata controller if i am not mistaken?

Link to comment

Best performance will depend on what spec the actually onboard port you select is, or the spec of the add-on card you use it on.

 

 

a pci-based controller like that Promise SATA 300TX4 Rosco is using is much slower than any onboard sata controller if i am not mistaken?

Why would you pick one specific card?

 

Best performance will depend on what spec the actually onboard port you select is, or the spec of the add-on card you use it on.

Link to comment

I want to add an SSD to my server - connecting it to one of my Promise SATA 300TX4 controller cards (which already controls 3 of the disks on my unRAID array).

 

 

@Roscoe , are you still using that Asus P5PE-VM mainbord with 2 x SATA 1 ports and 3 pci slots?

 

@Madburg, i mean pci , not PCI-E / PCI express

Link to comment

Maybe his SATA ports are in use, and he only has PATA available. He may decide to upgrade his card, add another card, etc... he did not specifically say this is my MB and here is the card I have, with this! which is better. I stated openly depending on the spec's is how you can achieve the BEST performance. Very neutral suggestion I believe. It did not sound like he doesnt know the spec's of his card and MB... To me it sounded like a general how to get the best out of a SSD with unRAID with the specfic use he has in mind for it.

 

No worries though...

Link to comment

Misunderstood your meanings  ;) Of course it depends on the speeds of the onboard controller or expension controller you use.

 

but i assumed when your're gonna connect a SSD to your UNRAID , you probably want to connect it to the fastest connection available.

Link to comment

Misunderstood your meanings  ;) Of course it depends on the speeds of the onboard controller or expension controller you use.

 

but i assumed when your're gonna connect a SSD to your UNRAID , you probably want to connect it to the fastest connection available.

 

This is true but we dont know his situation... we can offer recommendations, ultimately up to him though.

At one point he meantioned "Although blazing fast writes would be great, it's really the 'always on' aspect of the SSD I really need "

So we can also say, dont bother to get a SSD, just put a single drive in a spin-up group, set the spin up group to never spin down and objective accomplished, done, no? Speed seems to be secondary to him. Should we also assume he is trying to keep it low budjet because he is running a Asus P5PE-VM with a Promise SATA 300TX4 so maybe a SSD is over kill, thats up to him. And if that is the case then yes a onboard SATA port would be the port to put it on. Maybe he is stubborn and refuses to move the drive already on the onboard ports off to make room for the SSD  ;D we dont know. I'm joking here at this point. He should have enought to work with from the replies, if not he can always ask another question.

 

Cheers.

Link to comment

i have a mushkin 120gig ssd for my cache drive at the moment.

 

I was testing the new features in the latest beta where you can have stuff on the cache drive NOT get copied into the array. this gives me about 90gig for cache and a 20ish gig share that i am using for a project share.  I then have a  script that backs the project folder up nightly to a new folder each night with the days date in the folder to the main unraid.

 

I was trying to use an agility3 and a vertex3 on my sata600 ports. For some reason unraid sees them as 128 degrees and panics. i am guessing a diver or script issue. It is not a big deal as the sata300 drive is fine.

Link to comment

For some reason unraid sees them as 128 degrees and panics.

+1 on the new cache functionality!

 

Are you running the drive temp shutdown script?

Which GUI is showing you those high temps, stock unRAID/unMenu GUI?

 

actually is is negative 128...

 

http://lime-technology.com/forum/index.php?topic=13371.msg131711#msg131711

 

That's in 5beta7x, beta9 still has the same issue. it could just be my config combo also.

It is the main unraid gui with and without the enhanced features add-on.

 

i never tried unmenu. i assumed it is the same as i was in a reboot-loop (do to overheat shutdown script) till i pulled the drive.

Link to comment

Interesting points about the speed/sata ports but it misses the fact that all access is over the network.

An ssd is always on and can only communicate as fast as a network interface.

 

As a point of comparison, my laptop with a SATA I port and an OCZ SSD gets a throughput of about 80-110MB/s locally.

 

Considering the TX4 is on a PCI bus, if there is no other activity on the bus via unRAID, then you can expect a maximum throughput that will probably saturate the PCI bus and/or the network interface.

 

So if always on and maximum speed for a network access is desired, you can put the SSD on the TX4 with decent results.

 

I've not used S.N.A.P. but if you make the filesystem with a label.

 

mkreiserfs -l (lablename)

then mount it in the go script by label,

 

mount -L (labelname)  the system will find it wherever it exists and mount it.

 

here are some examples.

 

mkreiserfs -l SSD

To format it.

 

To mount it:

mkdir /mnt/SSD

mount -L SSD /mnt/SSD

 

you will need to add a section to the /etc/samba/smb-shares.conf like such

 

cat <<-EOF >> /etc/samba/smb-shares.conf

[sSD]

        path = /mnt/SSD

        read only = No

EOF

smbcontrol smbd reload-config

 

 

I'm doing this from memory, so it may have errors.

Link to comment

Wow!

 

A LOT of activity while I've been gone!

 

To answer a few more questions - yes I'm still using the Asus P5PE-VM. I've currently got disk 1 & disk 2 of my UnRAID array plugged into the 2 SATA ports on my mainboard. The rest of my drives are plugged into the 2 Promise SATA300 TX4 cards I have installed.

 

As stated earlier - it's the 'always on' aspect of the SSD I really need but, having said that, I've decided to use an SSD also because of the lack of moving parts, the silence/cool running factor, and also (if I can achieve it) faster write speeds - but I'll only see this when I'm updating my index files - something I only do when I'm adding media to my database - the rest of the time it's the READ access that's more important.

 

A little background might give more of the perspective I'm coming from here....

 

I have 2 Dune Prime3 media playback devices I use in our home - 1 in the lounge and 1 in our family room. I store all of our media (DVD's, Blu-rays, music) on the UnRAID server. Initially I stored the media index database files (I use Zappiti) directly on the UnRAID server but found that it took too long to spin up the drive the Zappiti database files were on, so instead I attached a USB flash drive to each of the Duneplayer devices and stored the Zappiti index there. This solved 1 problem (the index was always available instantly) but created another couple of problems...

 

1) I now have to detach the USB drive from the player, attach it to my main computer every time I need to rewrite the index (when I add more movies) and because I have 2 Dune playback devices I have to do it twice!

2) Writing the index to a USB flashdrive is surprisingly slow. It usually takes a good half hour to write the updated index - although I think this has as much to do with the way Zappiti writes the files as the slowish speed of the USB interface (I'm sure it was faster when I wrote it to a disk on the UnRAID array).

 

I figured if I had a SSD device connected to the UnRAID server (but not part of the array) then that would give me the following advantages:

 

1) I'd only have to write the index ONCE when I need to update it - instead of TWICE like I have to at the moment - i.e. the USB flashdrive attached directly to each Dune player.

2) Not having it as part of the array would give me some writing speed advantages (at least over writing it using the USB interface I'm currently forced to use)

3) Read access would be good in that the SSD is always on - so no spin-up delays I had initially

 

A couple of further thoughts....

 

1) If there is to be a speed advantage to be had in attaching the SSD directly to one of the mainboard SATA ports then I'm OK to do that - I just need a procedure for moving one of my UnRAID array drives I've currently got connected onto the free port on my Promise SATA controller card without losing any data!

2) If I have to use S.N.A.P. (or some other application) to get visibility of the SSD on the network working then so be it, but it sounds like Weebotech's method might be easier. Is there anything else I need to do for your instructions to work? I'm still using UnRAID Pro 4.5.1 - if that makes any difference at all. I don't really have many other "applications" running on my UnRAID server - i.e. - no unmenu.

3) I'm almost completely linux 'illiterate'! This means I'm heavily dependent on receiving "comprehensive" instructions whichever way I go here. I apologise for that in advance!

 

Again, thanks for all help/suggestions!

Link to comment

From what I see with that motherboard, it has 2 SATA ports, ICH5. No where does it state that it supports SATA II speeds.

 

However, if it were my motherboard, I would put parity and SSD on the internal ports and all data drvies on the Promise TX4's. But that's just me.

 

I don't think it's going to matter that much where you put the SSD.

USB speeds are rated at approx 30MB/s  writing to a parity protected unRAID drive is anywhere from 23-35MB/s.  so speed may be the same.

 

The TX4's can communicate at 300MB/s but they are limited to a PCI 2.2 bus which is approx 133MB/s anyway.  The benefit of the TX4's is they have a 256byte fifo buffer.

If that motherboard had pci 2.3 or higher you could communicate at 266MB/s thus approaching a higher speed when accessing the TX4's.

 

Writing to a single drive outside of the protected array may yield twice that..

but as you say, the always online and available aspect is a big plus!

 

Read speed could easily approach 60-80MB/s.

 

From what I read the MCH hub of the ICH5 communicates at 266MB/s internally. So once again I might advocate keeping parity on one SATA port and SSD on the other while all data drives are on the TX4.

 

Since you probably cannot read faster then 120MB/s on a single drive, you should be fine.

Besides having parity and data in separate paths does increase speed slightly.

Link to comment

For some reason unraid sees them as 128 degrees and panics.

+1 on the new cache functionality!

 

Are you running the drive temp shutdown script?

Which GUI is showing you those high temps, stock unRAID/unMenu GUI?

 

actually is is negative 128...

 

http://lime-technology.com/forum/index.php?topic=13371.msg131711#msg131711

 

That's in 5beta7x, beta9 still has the same issue. it could just be my config combo also.

It is the main unraid gui with and without the enhanced features add-on.

 

i never tried unmenu. i assumed it is the same as i was in a reboot-loop (do to overheat shutdown script) till i pulled the drive.

 

I did see that but never found any other posts in it, you should start a thread or post again on the beta page. I am pretty sure others purchased the OCZ's by reading the Deals page, and maybe someone can shead some light on the issue. I ersonally what to get one of those OCZ's waiting for the right price.

Link to comment

OK, so - to make the most of what I have it sounds like the best thing I could do first, is to move the 2 data drives OFF the mboard SATA ports, put the PARITY drive ON one of the mboard SATA ports, and leave the other mboard SATA port free for the SSD.

 

So, is doing that just a matter of stopping the array, powering off, changing the SATA cables around and powering up the array again?

 

Or is there something further I need to do within UnRAID first?

Link to comment

1) If there is to be a speed advantage to be had in attaching the SSD directly to one of the mainboard SATA ports then I'm OK to do that - I just need a procedure for moving one of my UnRAID array drives I've currently got connected onto the free port on my Promise SATA controller card without losing any data!

WeeboTech  researched what your running and makes excellent points, shutdown you server move one of drives (that you selected) from your onboard port to the last port you have available on the TX4 and boot the server back up. This is one of the many great things i like, it will not care. It just remembers the drive and the Disk # (assignment) you originally assigned it, not to a port.

 

2) If I have to use S.N.A.P. (or some other application) to get visibility of the SSD on the network working then so be it, but it sounds like Weebotech's method might be easier. Is there anything else I need to do for your instructions to work? I'm still using UnRAID Pro 4.5.1 - if that makes any difference at all. I don't really have many other "applications" running on my UnRAID server - i.e. - no unmenu.

 

3) I'm almost completely linux 'illiterate'! This means I'm heavily dependent on receiving "comprehensive" instructions whichever way I go here. I apologise for that in advance!

 

I was about to ask what version of unRAID you were running, thanks for stating yours, as it makes a difference. In the new Beta's there are new features that would have let you make that SSD a cache drive and do what you want. But from your last statement :D, stay on 4.x and use WeeboTech's sugesstions or possible SNAP (i personally am not familiar with it yet so can cant weight on it)

 

 

Link to comment
  • 2 weeks later...

OK - Step 1 is complete, I powered down the array and shifted one SATA cable (disk 2) from the mainboard onto the Promise controller. When I powered up the array again, UnRAID complained disk 2 was missing, but going to the devices page I just selected the correct drive for disk 2 again, started the array and all is well!

 

The Intel SSD arrived yesterday so I'll look at installing it into the server this weekend.

 

Will post back after that. Thanks!  :)

Link to comment

Sorry but a bit late to this too.

 

1 Question, when you do write, how often and how large a file? ie much time will you spend writing to the SSD?

 

I've setup an SSD on mine to do something similar, basically an SSD as part of the array to house all my jukebox files for YAMJ (my NMT's use YAMJ) so there is no spinup and faster read times from when the button is pressed.

 

I've kept mine on the array as the download and editing of the nfo files took a while to do so I preferred the protection of being in the array provided.

I mostly write a few small files and the extra few minutes it may have taken due to having to write to parity as well was worth the protection.

 

ie. if you write 5 mins a week, what's an extra 5min vs having to redo all the files again?

 

Josh

Link to comment

Hi Josh,

 

When I write, it's usually once or twice a week. Using Zappiti (well, the version I'm using anyway) I believe it rewrites the entire index. This currently ends up being around 4-5 Gbs in size, but the way it's working currently writing to an attached USB flashdrive it takes around 30 minutes (and because I've got 2 media devices I have to do it twice, but that's another story!).

 

Although it'd be an inconvenience if the SSD died, The main media database is stored on my main PC and will only be written to the SSD when I make changes to it that I want the media players to find, so it's no big deal if that data was "lost". Consequently for me, I'd rather have slightly faster write times.

 

BTW, I've heard YAMJ is very good.

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.