Hi,
The language lab from the local university has contacted me. They'd like to have a low-cost file server for storing all their language video files. They have a mix of Windows, Mac OS X and even Linux clients, roughly 50 machines. The files are quite big, and they calculated a total amount of 2 To of storage.
I'm not very proficient with hardware, meaning either I'm dealing with remote servers in some datacenter, or otherwise I install CentOS desktops on any hardware people throw at me.
Since the aim is lowcost, would it be wrong to install that fileserver on a no-name desktop PC with a 64bit processor and enough RAM, and then simply put 2 x 2 To hard disks in it, either with a mirroring RAID (can never remember which does what in 0, 1 and 5) or some rsync script regularly copying over the first disk to the second? Or do you have something more apt to suggest?
Cheers from South France,
Niki
----- "Niki Kovacs" contact@kikinovak.net wrote:
Hi,
The language lab from the local university has contacted me. They'd like to have a low-cost file server for storing all their language video files. They have a mix of Windows, Mac OS X and even Linux clients, roughly 50 machines. The files are quite big, and they calculated a total amount of 2 To of storage.
2 TB?
I'm not very proficient with hardware, meaning either I'm dealing with
remote servers in some datacenter, or otherwise I install CentOS desktops on any hardware people throw at me.
Since the aim is lowcost, would it be wrong to install that fileserver
on a no-name desktop PC with a 64bit processor and enough RAM, and then
You *COULD* do this, but keep in mind desktop class hardware may give you poorer performance, especially for fileserver use. You seem to have the storage requirements down, but make no mention of performance requirements. They are moving huge files to/from the server, but are they expecting it to happen in a few minutes or take all day? You mention 50 machines, but how many *CONCURRENT* connections? The more concurrent sessions you have, the poorer it may perform due to disk thrashing. A *GOOD* storage controller added to a desktop class machine on a PCIe bus will do wonders for you.
simply put 2 x 2 To hard disks in it, either with a mirroring RAID (can never remember which does what in 0, 1 and 5) or some rsync script regularly copying over the first disk to the second? Or do you have
For mirroring, you'll want RAID-1. This automatically keeps both drives/partitions in sync as the data is transferred, no need for rsync or any external scripting other than checking the health of your array(s).
something more apt to suggest?
I'd suggest something more 'yum' like than 'apt'. [1]
Cheers from South France,
Niki
Cheers from North Central U.S.,
Tim
[1] A poor attempt at package manager humor. RHEL/CentOS 'yum' vs Debian/Ubuntu 'apt'. :-)
Hi,
The language lab from the local university has contacted me. They'd like to have a low-cost file server for storing all their language video files. They have a mix of Windows, Mac OS X and even Linux clients, roughly 50 machines. The files are quite big, and they calculated a total amount of 2 To of storage.
I'm not very proficient with hardware, meaning either I'm dealing with remote servers in some datacenter, or otherwise I install CentOS desktops on any hardware people throw at me.
Since the aim is lowcost, would it be wrong to install that fileserver on a no-name desktop PC with a 64bit processor and enough RAM, and then simply put 2 x 2 To hard disks in it, either with a mirroring RAID (can never remember which does what in 0, 1 and 5) or some rsync script regularly copying over the first disk to the second? Or do you have something more apt to suggest?
What value does the language lab associate to these files? And how is backup done?
Rainer
50 simultaneous users will require more than a bargain desktop PC.
I would go for low-end server hardware, which will get you ECC memory and more SATA ports. The cost is probably not significantly more than a _good_ quality desktop system.
You may want to allow for some expansion, 2 To may grow into 3 To over time. Also plan for backups. You may want to use LVM and leave some disk space unallocated to you can create snapshots and make backups to external USB drives or another network server while the system is up and running.
My personal criteria: - decent power supply - space for 4 3.5" hard drives. - 4 memory slots, so I can go to 8 Go memory without breaking the bank - at least a dual-core Xeon or AMD processor which supports ECC memory - 4 or more available SATA ports on the motherboard - 1-2 1000BASE-T network interfaces.
You could go for a RAID controller, but RAID1 (mirroring) has little overhead in software, and you can buy 2 extra hard disks for the price of the controller.
Gé (from cloudy Nevada)
On Mon, 12 Apr 2010, Niki Kovacs wrote:
Hi,
The language lab from the local university has contacted me. They'd like to have a low-cost file server for storing all their language video files. They have a mix of Windows, Mac OS X and even Linux clients, roughly 50 machines. The files are quite big, and they calculated a total amount of 2 To of storage.
I'm not very proficient with hardware, meaning either I'm dealing with remote servers in some datacenter, or otherwise I install CentOS desktops on any hardware people throw at me.
Since the aim is lowcost, would it be wrong to install that fileserver on a no-name desktop PC with a 64bit processor and enough RAM, and then simply put 2 x 2 To hard disks in it, either with a mirroring RAID (can never remember which does what in 0, 1 and 5) or some rsync script regularly copying over the first disk to the second? Or do you have something more apt to suggest?
Cheers from South France,
Niki _______________________________________________ CentOS mailing list CentOS@centos.org http://lists.centos.org/mailman/listinfo/centos
thus On 04/12/2010 06:50 PM, Gé Weijers spake:
50 simultaneous users will require more than a bargain desktop PC.
Please don't top post...
Yes -- 50 not too lazy users will kill the machine.
I would go for low-end server hardware, which will get you ECC memory and more SATA ports. The cost is probably not significantly more than a _good_ quality desktop system.
ECC is mandatory in decent machines, be it workstations or servers, IMHO.
Think of a faulty stick of RAM you don't discover immediately, it might shred all your Terabytes of data.
You may want to allow for some expansion, 2 To may grow into 3 To over time. Also plan for backups. You may want to use LVM and leave some disk space unallocated to you can create snapshots and make backups to external USB drives or another network server while the system is up and running.
My personal criteria:
- decent power supply
- space for 4 3.5" hard drives.
- 4 memory slots, so I can go to 8 Go memory without breaking the bank
- at least a dual-core Xeon or AMD processor which supports ECC memory
Almost every not too crappy mother board will allow ECC using an AMD CPU (Phenom et al). To get ECC in intel space, you'll have to pay *much* more.
- 4 or more available SATA ports on the motherboard
- 1-2 1000BASE-T network interfaces.
Maybe, search for a (used) server on eBay or elsewhere. You can get very decent machines with all the features or more (ECC, many memory slots, dual, redundant power supplies, even out-of-band management) at a very low price. Keep in mind that those machines *are* loud. (You have a closet/rack to keep it, don't you?)
You could go for a RAID controller, but RAID1 (mirroring) has little overhead in software, and you can buy 2 extra hard disks for the price of the controller.
Maybe for future growth you'll want to keep in mind that you could go RAID6. RAID5 is evil, taking todays hard drive sizes in mind (speaking of 2TiByte drives, especially).
Gé (from cloudy Nevada)
HTH,
Timo (from sunny Berlin)
On Mon, 12 Apr 2010, Niki Kovacs wrote:
Hi,
The language lab from the local university has contacted me. They'd like to have a low-cost file server for storing all their language video files. They have a mix of Windows, Mac OS X and even Linux clients, roughly 50 machines. The files are quite big, and they calculated a total amount of 2 To of storage.
I'm not very proficient with hardware, meaning either I'm dealing with remote servers in some datacenter, or otherwise I install CentOS desktops on any hardware people throw at me.
Since the aim is lowcost, would it be wrong to install that fileserver on a no-name desktop PC with a 64bit processor and enough RAM, and then simply put 2 x 2 To hard disks in it, either with a mirroring RAID (can never remember which does what in 0, 1 and 5) or some rsync script regularly copying over the first disk to the second? Or do you have something more apt to suggest?
Cheers from South France,
Niki
Ge' wrote:
thus On 04/12/2010 06:50 PM, Gé Weijers spake:
I would go for low-end server hardware, which will get you ECC memory and more SATA ports. The cost is probably not significantly more than a _good_ quality desktop system.
<snip> Also consider hot-swappable disk enclosures, either in the server or external. When one dies, assuming you have a spare available, it'll will make your users much happier, since you can replace the drive without taking the server down.
mark
On Mon, 12 Apr 2010, Rob Kampen wrote:
Gé Weijers wrote: I'd support the above hardware as a minimum - it appears most will be
reading, thus software RAID1
will work just fine - If there are many different files, I'd go for more smaller disks - say 8 by 500G in RAID1, thus the ability to spread the files over more spindles as this may become the bottleneck if all the files are on a single 2T drive.
Using 8 drives is going to significantly increase the cost, because you'd need 8 SATA interfaces and 8 drive bays. Otherwise I agree. A RAID-10 setup (striped mirrors) will probably give the best performance.
Gé
On 4/12/2010 1:40 PM, Gé Weijers wrote:
I'd support the above hardware as a minimum - it appears most will be
reading, thus software RAID1
will work just fine - If there are many different files, I'd go for more smaller disks - say 8 by 500G in RAID1, thus the ability to spread the files over more spindles as this may become the bottleneck if all the files are on a single 2T drive.
Using 8 drives is going to significantly increase the cost, because you'd need 8 SATA interfaces and 8 drive bays. Otherwise I agree. A RAID-10 setup (striped mirrors) will probably give the best performance.
Or, if the file usage can be broken down into logical groups, take any even-numbered set of disks, make RAID1 mirrors, and mount them into a sensible directory layout. In return for a little bit more work in managing the space you get the ability to separate things into groups that won't compete for the same disk head position, and you will be able to recover the data off of any single disk. Striped mirrors will give you better performance when accessing a single file - multiple independent raids might do better for multiuser access, though.
Niki Kovacs wrote:
Hi,
The language lab from the local university has contacted me. They'd like to have a low-cost file server for storing all their language video files. They have a mix of Windows, Mac OS X and even Linux clients, roughly 50 machines. The files are quite big, and they calculated a total amount of 2 To of storage.
I'd look at using 1TB drives rather than 2TB, the 2TB seem to be too bleeding edge and have been too many anecdotal reports of problems. for sure you want to use server rated SATA drives for an application like this, such as the WDC RE series, or the Seagate ES series (this has more to do with write buffering and consistent error reporting than it does to do with performance).
if this system is going to have 50 clients constantly playing videos on it, then I'd look at 450gb or 600gb SAS drives, and a lot more of them.
If this is to be a rack mounted system in a data center, I'd probably look at a box like a HP DL370, which can hold quite a lot of drives. http://h10010.www1.hp.com/wwpc/us/en/sm/WF05a/15351-15351-3328412-241644-241...
put the lowest end single CPU they offer in it, but get the better raid controller and a reasonable amount of memory, and redundant PSU. get 2 hot spare drives. if initial requirements are 2TB usable storage, thats 4 x 1TB raid10 plus 2 x 1TB spares. also get two small drives (like 72gb sas) for those left-side slots, mirrored for the OS and software. 6gb ram is probably fine. the base model of this system is $3300 with a 4-core 2.4ghz, 6gb ram and 4 gigE ethernet ports (you could gang these to the switch if their network infrastructure supports ether bonding aka ipmp).
OSX should be happy with NFS, Linux clients certainly are, and Samba can serve files for Windows clients.
John R Pierce sent a missive on 2010-04-12:
Niki Kovacs wrote:
Hi,
The language lab from the local university has contacted me. They'd like to have a low-cost file server for storing all their language video files. They have a mix of Windows, Mac OS X and even Linux clients, roughly 50 machines. The files are quite big, and they calculated a total amount of 2 To of storage.
I'd look at using 1TB drives rather than 2TB, the 2TB seem to be too bleeding edge and have been too many anecdotal reports of problems. for sure you want to use server rated SATA drives for an application like this, such as the WDC RE series, or the Seagate ES series (this has more to do with write buffering and consistent error reporting than it does to do with performance).
There are some array providers that are currently using 2TB drives (rorke data for one) - but I would always suggest that you use enterprise quality disks.
if this system is going to have 50 clients constantly playing videos on it, then I'd look at 450gb or 600gb SAS drives, and a lot more of them.
I would look at the performance of the disk subsystem, make sure that the sustained read of the system is able to keep up with the demands of streaming video - you'll need to have 10K of 15K rpm disks for realtime video if you're streaming to a lot of users. It may be that their expectations are that the video isn't realtime and therefore you will be able to use slower disks and subsystem.
If this is to be a rack mounted system in a data center, I'd probably look at a box like a HP DL370, which can hold quite a lot of drives. http://h10010.www1.hp.com/wwpc/us/en/sm/WF05a/15351-15351-3328412- 241644-241475-3890172.html
Depending on the number of disks you need (the IO profile will determine the speed/size/interface) you may have to go to an external array.
put the lowest end single CPU they offer in it, but get the better raid controller and a reasonable amount of memory, and redundant PSU. get 2 hot spare drives. if initial requirements are 2TB usable storage, thats 4 x 1TB raid10 plus 2 x 1TB spares. also get two small drives (like 72gb sas) for those left-side slots, mirrored for the OS and software. 6gb ram is probably fine. the base model of this system is $3300 with a 4-core 2.4ghz, 6gb ram and 4 gigE ethernet ports (you could gang these to the switch if their network infrastructure supports ether bonding aka ipmp).
If it's only files that your sharing then this is fine, but if you intend to change the video quality on the fly then you may need to have something beefier... but the disk subsystem is the key to fast file/video streaming.
OSX should be happy with NFS, Linux clients certainly are, and Samba can serve files for Windows clients.
You may also be looking at http web services with flash encoding or quicktime - Apple used to have a free version of their quicktime video streaming platform which may work for you.
Good luck with this, if it is as you suggest in your post just a file store and not a video streamer platform, then your life is simple. As soon as you enter the world of video streaming, life becomes harder and more expensive.
Simon.
Simon Billis wrote:
John R Pierce sent a missive on 2010-04-12:
if this system is going to have 50 clients constantly playing videos on it, then I'd look at 450gb or 600gb SAS drives, and a lot more of them.
I would look at the performance of the disk subsystem, make sure that the sustained read of the system is able to keep up with the demands of streaming video - you'll need to have 10K of 15K rpm disks for realtime video if you're streaming to a lot of users. It may be that their expectations are that the video isn't realtime and therefore you will be able to use slower disks and subsystem.
as he said it was a language lab, I'd expect at peak times, all 50 clients could be busy playing different videos. so, this disk system has to be able to keep up with 50 different streams for extended periods of time, which is a more complex workload than one faster stream. I'm going to hazard a guess that most streaming video is under 1MByte/sec but with 50 x 1Mbyte/sec playing at once, this becomes a more random access workload than 1 x 50MB/sec.......
Also, there's a strong likelihood these language videos are somewhat random access, and there will be a lot of seeking back and forth, playing short snippets. Server-side and client-side caching will help a lot on this but the requirement could well still be there. Response time is fairly important here, if a user chooses to jump to a given chapter, it should be accessible in less than 1 second or something. frequent youtube style 5-10 second pauses for 'buffering' will result in a lot of student frustration.
its always strange to see that people want "cheap servers". Let me tell you it will NEVER pay off.
50 people will kill a low end thing, especially if you want to do software based RAID, the throughput that is required by that data coming in and out will make you users VERY unhappy and then say CentOS is crap.
You need at least some XEON based motherboard, proper ECC RAM and HARDWARE RAID, anything else will not work.
That said you can buy decent motherboards from the lower end of INTEL server boards, put a decent CPU into it and get one of the 4 channel Adaptec cards, splitting data and OS onto separate raid channels, they got 2 GB network cards so you can split the throughput in half.
I know this works because the small school that I look after has that setup.
jobst
On Mon, Apr 12, 2010 at 05:53:55PM +0200, Niki Kovacs (contact@kikinovak.net) wrote:
Hi,
The language lab from the local university has contacted me. They'd like to have a low-cost file server for storing all their language video files. They have a mix of Windows, Mac OS X and even Linux clients, roughly 50 machines. The files are quite big, and they calculated a total amount of 2 To of storage.
I'm not very proficient with hardware, meaning either I'm dealing with remote servers in some datacenter, or otherwise I install CentOS desktops on any hardware people throw at me.
Since the aim is lowcost, would it be wrong to install that fileserver on a no-name desktop PC with a 64bit processor and enough RAM, and then simply put 2 x 2 To hard disks in it, either with a mirroring RAID (can never remember which does what in 0, 1 and 5) or some rsync script regularly copying over the first disk to the second? Or do you have something more apt to suggest?
Cheers from South France,
Niki _______________________________________________ CentOS mailing list CentOS@centos.org http://lists.centos.org/mailman/listinfo/centos
Niki Kovacs a écrit :
Since the aim is lowcost, would it be wrong to install that fileserver on a no-name desktop PC with a 64bit processor and enough RAM, and then simply put 2 x 2 To hard disks in it, either with a mirroring RAID (can never remember which does what in 0, 1 and 5) or some rsync script regularly copying over the first disk to the second? Or do you have something more apt to suggest?
Thanks for all your detailed answers. Seems the story resolved itself in a quite curious manner. The lab already has a "sysadmin", e. g. a guy who openly claims to be "no computer specialist, but my machines are running anyway, better than the ones built by the pros". I asked him if he could fill me in on some details, like what should the IP address of the server be, netmask, gateway, dns, so that I could integrate it into his network. I planned to first make a "dummy" server with my laptop just to do some testing, ping around, etcetera. The following surrealistic dialogue followed:
- "You know, I can't really let you know this, this is a very special network."
- "Yes, but you asked me to install a server in your network. If you want me to do that, I have to know some network specifications. For example, will the machine be statically configured, or do you plan to handle it with DHCP and a fixed address based on the MAC address?"
- "This is neither DHCP nor static, you know, we have an internal network." (!)
- "So you can't tell me your network specs, if I get you right. You know, when you ask a plumber to install a bathtub or a jacuzzi, you ought to tell him at least where your bathroom is, and where he can find the water tap."
- "I only asked for a server. I don't know why you have to know all this."
And so on. In the end, I decided not to bother and just left.
:o)
Niki
On Wednesday, April 14, 2010 02:59 PM, Niki Kovacs wrote:
Niki Kovacs a écrit :
Since the aim is lowcost, would it be wrong to install that fileserver on a no-name desktop PC with a 64bit processor and enough RAM, and then simply put 2 x 2 To hard disks in it, either with a mirroring RAID (can never remember which does what in 0, 1 and 5) or some rsync script regularly copying over the first disk to the second? Or do you have something more apt to suggest?
Thanks for all your detailed answers. Seems the story resolved itself in a quite curious manner. The lab already has a "sysadmin", e. g. a guy who openly claims to be "no computer specialist, but my machines are running anyway, better than the ones built by the pros". I asked him if he could fill me in on some details, like what should the IP address of the server be, netmask, gateway, dns, so that I could integrate it into his network. I planned to first make a "dummy" server with my laptop just to do some testing, ping around, etcetera. The following surrealistic dialogue followed:
- "You know, I can't really let you know this, this is a very special
network."
Yeah, he probably is still using coaxial or token-ring, can't let you know that.
- "Yes, but you asked me to install a server in your network. If you
want me to do that, I have to know some network specifications. For example, will the machine be statically configured, or do you plan to handle it with DHCP and a fixed address based on the MAC address?"
- "This is neither DHCP nor static, you know, we have an internal
network." (!)
Hey, maybe he is running netbeui or ipx and Windows 3.11 or Netware!
- "So you can't tell me your network specs, if I get you right. You
know, when you ask a plumber to install a bathtub or a jacuzzi, you ought to tell him at least where your bathroom is, and where he can find the water tap."
- "I only asked for a server. I don't know why you have to know all this."
Or he could be a paranoid hermit that lives in the lab.
And so on. In the end, I decided not to bother and just left.
:o)
We want more laughs!
there are (sadly) a large number of people who are afraid (paranoid?) that you take out a saw and cut off some of the legs of the (high) chair they are sitting on (fig), you just came across one of those.
You have a number of options:
* go with the flow, make him feel go(o)d ;-) and you might be able to learn something
* find better places where you can learn
* be aware that he might throw a tantrum and runs away and you left with the task of running the lab
IMHO the windows world is full of these guys, they haven't got a clue, I call them "MCMJ's" (Microsoft Certified Mouse Jockeys). they feel threatend by people who have a clue. This is one of the reasons why windows is so prevalent ... they stick with it because they cant go anywhere else.
jobst
On Wed, Apr 14, 2010 at 08:59:50AM +0200, Niki Kovacs (contact@kikinovak.net) wrote:
Niki Kovacs a écrit :
Since the aim is lowcost, would it be wrong to install that fileserver on a no-name desktop PC with a 64bit processor and enough RAM, and then simply put 2 x 2 To hard disks in it, either with a mirroring RAID (can never remember which does what in 0, 1 and 5) or some rsync script regularly copying over the first disk to the second? Or do you have something more apt to suggest?
Thanks for all your detailed answers. Seems the story resolved itself in a quite curious manner. The lab already has a "sysadmin", e. g. a guy who openly claims to be "no computer specialist, but my machines are running anyway, better than the ones built by the pros". I asked him if he could fill me in on some details, like what should the IP address of the server be, netmask, gateway, dns, so that I could integrate it into his network. I planned to first make a "dummy" server with my laptop just to do some testing, ping around, etcetera. The following surrealistic dialogue followed:
- "You know, I can't really let you know this, this is a very special
network."
- "Yes, but you asked me to install a server in your network. If you
want me to do that, I have to know some network specifications. For example, will the machine be statically configured, or do you plan to handle it with DHCP and a fixed address based on the MAC address?"
- "This is neither DHCP nor static, you know, we have an internal
network." (!)
- "So you can't tell me your network specs, if I get you right. You
know, when you ask a plumber to install a bathtub or a jacuzzi, you ought to tell him at least where your bathroom is, and where he can find the water tap."
- "I only asked for a server. I don't know why you have to know all this."
And so on. In the end, I decided not to bother and just left.
:o)
Niki _______________________________________________ CentOS mailing list CentOS@centos.org http://lists.centos.org/mailman/listinfo/centos
Greetings,
On Thu, Apr 15, 2010 at 9:23 AM, Jobst Schmalenbach jobst@barrett.com.au wrote:
IMHO the windows world is full of these guys, they haven't got a clue, I call them "MCMJ's" (Microsoft Certified Mouse Jockeys).
You meant MCMM? s/Jokeys/Monkeys/g
they feel threatend by people who have a clue. This is one of the reasons why windows is so prevalent ... they stick with it because they cant go anywhere else.
+++++++1
I get a different impression around here.
Many MCM[J|M] have felt threatened and have taken a clue. At least why have had a career jump from level 0 (hardware/desktop) to (real) Level 1 support server et. al. and they have taken Linux very seriously to heart. Surprisingly, they never chose Solaris or AIX as alternative. perhaps because of Linux's wide availability.
Of course, I cant even begin to see the enormity of CentOS in this area.
Yes! World Domination. If it be by geeks, so be it.
:)
A BIG Thank you, CentOS!!! <Hat Tip>
Warm Regards,
Rajagopal