Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

We currently have two 6 year old linux file servers (an HP DL320 and DL380) that are starting to be dogs. The DL320 just uses 10K IDE drives set up in RAID1, the 360 has 6 drives set up in RAID10. File services are via Samba, and the DL320 is having far more problems at the moment.

We intend to move to Windows Server 2003 (2008 won't support our old Win98 workstations - we can't get rid of them for 3 more years when our legacy software is converted). However, I'm wondering if it makes more sense to buy a SAN instead of buying a newer machine with faster drives?

Our specs

  • 40 users
  • Linux-based servers, migrating to Windows Server 2003
  • Linux 'top' shows samba often in a wait state (high load)
  • Linux 'sar' command shows many small transfers, but only moderate bytes/sec (so not a network bandwidth issue)
  • All users connecting directly to file server with old chatty DOS client application (not client/server), which results in thousands of tiny transfers per minute

Any thoughts?

share|improve this question
add comment

7 Answers

up vote 6 down vote accepted

Your problem probably lies with the IDE drives in the older machine. I've hit this myself on large servers (15 drive "SATA I" arrays). Depending on the load, you can probably do fine upgrading to a server with new SATA drives, or if you have the money, SAS. For example of the boost you'll get, when I went from a 15 drive RAID5 of SATA drives (on a 3ware 9000 controller) to a 15 drive RAID5 of SATA II drives (with NCQ, on a 3Ware 9550) my performance more then doubled. As James posted...iostat will show you how loaded your disks really are...so you can confirm that your drives are your bottleneck and not your CPU.

Going to a full blown SAN for your size environment wouldn't be cost effective. You'd be better off buying a newer server with more capacity and faster drives.

share|improve this answer
add comment

Use the "iostat -x" command to check your disk utilization. The await column is the average wait time in milliseconds. If it's consistently high (more than a couple hundred) on your storage volumes, then you're definitely I/O bound.

Assuming this is the case, either a bigger server or a SAN solution could meet your needs, so long as it's sized to meet your needs. In general, you'll improve performance by moving to something that has faster disks, and more of them. More spindles means more simultaneous reads and writes.

Without knowing anything else about your operation, I would suggest that a SAN is probably overkill. Where I work, we use SAN when you need multiple computers to share the same storage at a block level, or when you need really fast disk I/O (think database or engineering applications). A SAN is also better if you know you're going to need to continue to add disk space. They're generally designed to scale big.

For your purposes, though, I think you would probably do just fine with a server upgrade, and maybe an external disk array. For instance, a newer DL380 G5 (or G6) will house 8 (or 16) SAS drives, which are about as fast as you get outside of Fibre Channel or SSD. You could hang an MSA70 off the back of it to get another 25 SAS drive slots. Go 64-bit and give it plenty of RAM. Linux will cache files in RAM, and I'd imagine Windows does the same, which helps improve performance if your users frequently access the same set of files.

share|improve this answer
    
I just ran 'iostat -x' at night with some small batch processes going, await was between 100 and 600. I can't wait to see it during the day. Thanks for the idea –  Jess Aug 28 '09 at 2:27
add comment

SAN is probably overkill as another person said. Likewise make sure you go x64 on the Windows boxes.

As far as Windows 98 - what says WS2008 won't support Win9x clients? You just need to scale some default security settings back.

Thanks, Brian Desmond Active Directory MVP

share|improve this answer
    
Pervasive BTrieve will not run on Server 2008, but it does on Server 2003. Critical kernel changes have stopped it, and no security changes will fix it. I imagine their issue may be similar (although our version is only 7 years old, BTrieve really dates back 20+ years) –  Mark Henderson Aug 28 '09 at 3:04
    
Have you connected 98 to Server 2008? We've had plenty of people tell us that it should work, but nobody has been able to connect the two reliably. We've changed security settings per others online, but this only allowed Win98 to browse a share and copy tiny files (<100 bytes), but connectivity drops after trying a larger file. Server 2003, OTOH, connected right away. We'd love to use Server 2008 so that we don't have a mixed environment (and don't have to buy two sets of CALs). Any insight you can provide would be greatly appreciated. –  Jess Aug 28 '09 at 15:46
    
You can use 2008 CALs with Windows 2003... You can't use Windows 2003 CALs with Windows 2008. –  Hubert Kario Jun 20 '12 at 15:44
add comment

Buying a SAN is a very expensive operation. Depending on the SAN solution you look at it can easily run into hundreds of thousands of dollars.

A couple of decent servers with some fast hard drives will probably be more cost effective.

share|improve this answer
add comment

I've met some applications like that. I feel your pain. Lots of itty bitty transfers is something that Samba isn't that good at when there are lots of folks doing it. Moving to Windows, even on the same hardware would probably buy you some CPU overhead just from that.

IDE/SATA isn't that great for lots of itty bitty random I/O, which is why I'm seconding MediaManNJ in suggesting SAS drives if you can afford them. Moving to newer hardware will also increase the sizes of the caches sitting between the server and the disk platters which may help with the itty-bitty I/O; write reordering can do a lot if done right.

Going 64-bit will increase your cache sizes by quite a bit, something the 32-bit Linux kernel wasn't especially great about either.

For true Blazing Speed On The Cheap, a dual-channel RAID card and one of those MSA70's will really help reduce I/O bottlenecks. HP RAID cards allow raid-sets to span channels to further reduce I/O contention.

share|improve this answer
add comment

in the meantime, while you're deciding what to do in the long term, you can probably significantly improve performance on the current servers by:

  1. max out the RAM in both machines. fill all RAM slots with the largest memory sticks you can reasonably afford (2GB sticks tend to be reasonably priced or even cheap, while 4GB and 8GB sticks are not). if you're running a 32-bit linux kernel, make sure your kernel has the PAE extensions enabled to get the full use of your RAM.

  2. if you can replace the IDE drives in the DL320 with SATA or SCSI drives, you'd notice an immediate improvement.

share|improve this answer
add comment

Buying a SAN as per me buying "a380 airbus" and other way if ur using for last 6year HP server with "linux" only Linux can give such work not Windows i feel u should buy new server H/W install same Linux on that. And normally IDE work for 4year not more then that in same way SATA also have same life after that it start giving problem.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.