In the quest to keep up with my file serving needs here at Crapple HQ I've very recently looked to upgrade our current storage solution. The problem isn't performance, in fact quite the contrary. It's the requirement of space, especially to hold high quality (and more increasingly high definition) video. Also because I'm paranoid, mirroring of this data. In the past what we had is two servers which mirrored each other and were located in different parts of the HQ (offsite backup is something I'm considering for particularly sensitive stuff).
Anyhow before it would be a big server doing all the main file serving duties (documents, music, books) and my Qnap linux box serving video files from a 3x 1Tb RAID 5 array and doing backup duties for the other stuff. I figured that videos can be re-acquired and mirroring such amounts of data would just be too expensive, so a RAID 5 would suffice (RAID 6 would be better but I only had three slots free on the Qnap 409.
Now what I've done is move the video duties from the Qnap to the main server, but not before I upgraded the disk subsystem on that machine. Gone are the 10,000 RPM drives in favour of four 2.5" SAS drives (connected to a Dell Perc 6 controller). The OS sits on an old 10,000 RPM WD Raptor 36Gb drive (I know, it's not a very good drive but it's fast and reliable). I've also put two 750Gb WD 7200 RPM drives in there for a network "public" share (patches/configuration stuff). Currently it's in RAID 0 as part of the migration but that will be changed to RAID 1. The video array has now been expanded.
Previously the three 1Tb drives were as follows: 2x Western Digital Green Power units and 1x Samsung F1. I've had terrible reliability problems with the F1, two out of three failed. Granted it's not a big sample size but I don't want to take my chances. So to compliment the two WD drives I bought three more of the newer WD Green Power units with 32MB cache and 333Gb platters. In the end it tops out at around 3.8Tb after journaling and redunancy - over double what I had before. The best thing is that I managed to source an ICY DOCK 5 port hot swap bay which makes the thing easy as pie to maintain.
So all in all, Jimbob, has the following disk subsystem.
2x 146Gb 10,000 RPM SAS (RAID 0) for Photos
2x 73Gb 10,000 RPM SAS (RAID 0) for Documents and music
2x 750Gb 7,200 RPM SATA (RAID 0) for public network files
5x 1Tb 5,400 RPM SATA (RAID 5) for videos
1x 36Gb 10,000 RPM SATA for OS
The photos and documents shares are in RAID 0 because every 10 minutes they get backed up remotely to a RAID 5 array (in the Qnap). We just don't change files too much for this to be a problem. The Qnap will have 3x WD 500Gb RE2 7,200 RPM SATA disks giving around 1Tb of storage.
Overall I'm quite happy with everything so far, lets hope the WD Green Power drives work well as the power savings are something that I am looking forward to embracing (being green 'n all).
Yesterday I wrote about a chipset heatsink I bought for an upcoming 975X motherboard. Well that motherboard arrived today (38 quid off eBay, such a bargain) so I got on with installing the heatsink.
The whole thing was easy enough but if your motherboard uses clips rather than studs to hold down the chipset cooler then the HR-05 heatsink will probably cause problems with your CPU cooler (as you can see in the third picture). Add a fan to this cooler (why would you?) and then you have further issues. As to why they had to set the clasp do that the cooler will be at this odd angle is beyond me.
For me it wasn't a problem because I'm going to use watercooling but if you are considering purchasing the HR-05 then I would suggest two things:-
- Try to use this only when you have studs to hold down the heatsink
- Make sure your CPU heatsink fits with this thing on - if you have one which uses a 120mm fan on the same plane as the motherboard, it most probably won't.
I recently purchased an used motherboard off eBay which came with a fan to cool the chipset. This is quite frankly rubbish as it will eventually fan and before it does so, it will make a load of noise and shift a lot of dust. So I purchased this rather nifty heatsink for the 975 chipset. It's made by Thermalright and is aluminium. I
Hopefully installation should be easy enough - though I fear for one of my passively cooled video cards which has a massive heatsink on the back. More pictures will follow upon installation!
I recently built a machine to replace my current workstation with components I had lying around. The only thing I needed to purchase was a new motherboard as the two units I had in the lab were less than reliable. The machine itself isn't cutting edge but it is fast enough, being comprised of the following items:
Intel QX6700 quad core processor (underclocked to 2.0GHz)
4GB PC6400 Corsair DDR2 RAM
1 15,000 RPM Maxtor Atlas 15KIII 36GB hard drive (for operating system and applications)
1 10,000 RPM Seagate Cheetah 10.7 36GB hard drive (for swap)
256MB MSI Geforce 8600 GT passively cooled
The whole thing is watercooled using an old but trusty Zalman Reserator cooling system. The power supply I had knocking about was an 850W Hiper Power unit which looks stunning and kept the machine stable. However it had two fans and produced quite a noise so I decided to replace it. My first choice for PSUs is Seasonic however the store down the road didn't have them so I went for this Corsair TX650 (650W) unit which is actually made by Seasonic. It's had good reviews and is quiet so I'm going to nip home and install it. I can't wait
As part of clearing out my lab, I had a large amount of hard disk drives which are now too old ( >5 years) to be used in any production server. Although these drives work and have been through a tough life (being on 24/7 in a server environment) they really did well. I must commend Western Digital and certainly will continue to use their units in the future.
However I wanted to donate these drives but before I did that data had to be wiped off them, properly. Hitting delete after selecting a file or folder in Windows Explorer or OSX's Finder doesn't really delete files - it merely allows them to be overwritten at a future date. Initially I thought about going the more interesting route. That is to say use brute force but these drives are very well made. After five minutes of constant beating with a hammer this was the result.
This was a 120GB hard drive with two platters, the second platter is still very recoverable (granted you'll have to go to a data recovery specialist) but it's certainly do-able.
A much better way is to use one of these two programmes. Eraser is a very easy to use Windows program that will erase files, folders or a whole partition. Depending on your level of paranoia it can do 1-33 passes. The US Department of Defence standard is 7 passes. Nevertheless expect this to take a VERY long time. Another program which is actually a Linux LiveCD is DBAN. Both are excellent at what they do. I had a Windows machine ready to go so I used Eraser but both work well.
At this time I'm still on my first hard drive, about 30% done after around five hours of erasing. I've got 10 or so hard drives to go but at least I can give them away knowing that nothing will be salvaged in the future.
You may remember (although I'm sure you have more important things to do) that I ended up with an Apple iMac which had its screen hit with a hammer. Utilising the external display output I managed to get OS X setup dilly dandy and everything was fine. Except one of the fans would shoot to full speed and stay that way.
After asking a "Genius" why this was happening, he said that it was because one of the fan sensors was not connected. True enough there is a fan sensor built into the screen, which I threw away. The nub of the matter? If I wanted the fans to be quieter I would need to fit a screen.
So hunting around eBay I finally found a seller who has a fair few of these screens in stock (with different batch numbers too). The only problem is that this seller is in Washington State. So I've purchased the screen and had it sent to my potte in Boston who hopefully will Fedex it here onto London sometime in the next month. I can't wait - finally a working iMac!
In truth calling this a howto is a lie because it is so easy. That is to say, getting the basics up and running is so easy. After that you should really do some further reading (don't worry I'll provide the links), but a quick and dirty setup is surprisingly easy.
Before the end of last year I decided it was time to make a move away from FreeBSD to Linux on the server front. It's not particularly that FreeBSD is bad or become bad but since the middle of 2008 I had been playing around with Xen virtualisation using CentOS as the host OS and quite frankly I was blown away. Xen on FreeBSD is far from trivial. Anyhow, aside from the religious arguments with FreeBSD and Linux (quite frankly both are great server OSes (although Linux isn't really an OS but rather a kernel) just use which you prefer or gets the job done) I knew it would either boil down to CentOS or Debian. I chose Debian in the end because Lenny had just come out and quite frankly I felt like it (there's no good reason either way in my mind).
I wanted a nice way of streaming music (primarily) to a few devices I had dotted around the house, especially the Roku SoundBridge M2000 in my bedroom. Previously I had used Apache and mod_mp3 do to simple audio streaming but now I wanted something a little nicer. I read around the multitude of uPnP solutions out there with the one getting the most press being Twonkymedia. Alas that costs $20 (for the Linux server) and I wanted free (because I'm cheap). So not much googling later I came across MediaTomb. Judging from the website it looked like a relatively extensive install procedure but frankly I was surprised. All I needed was:
apt-get install mediatomb
Of course, become root first (su/sudo or just login as root if you can). There's quite a few dependencies which are automatically sorted out by apt (not as good as FreeBSD ports which actually compiles from source but nonetheless good enough).
The database mediatomb uses by default is sqlite but you can use the more heavyweight MySQL database if you want (it's quite easy to do so once you edit the configuration file found in /etc/mediatomb/config.xml
Anyhow the surprising thing is that mediatomb should already be running once apt finishes doing its thing. What you need to do now is find out which port the webserver is running on so you can point your browser there and make it start building the library for streaming. In order to do this all you need to do is:
Where you should see something like this:
... stuff ...
2009-02-19 23:04:44 INFO: Configuration check succeeded.
2009-02-19 23:04:44 INFO: Initialized port: 49152
2009-02-19 23:04:44 INFO: Server bound to: 192.168.1.5
2009-02-19 23:04:47 INFO: MediaTomb Web UI can be reached by following this link:
2009-02-19 23:04:47 INFO: http://192.168.1.5:49152/
So now you know where to point Firefox and once you do, have a play around with the interface to add the source of music/videos or whatever.
However slowly you may want to tweak certain things in the configuration file as mentioned before. The best place to start (and finish) is the manual. It's a boring read but you should read it as it does a great job of explaining the attributes. The manual can be found here and the page regarding the configuration file can be found here.
Firewall rules and suchlike could be set so you don't stream out on public IPs and so on.
However the point is to get a basic setup of Mediatomb takes as long as installing the packages in Debian and the time it takes to scan your media directory (which can take a while). As for my SoundBridge, it works a charm.
My next mini-project is to install squid on debian and setup a HTTP proxy. Let's see if that is as easy as this.
A couple of weeks ago I was handed a battered 24" Core 2 Duo iMac (aluminium body) and asked to remove the hard drive. Someone had taken a hammer to the screen and the guy wanted to get his data back but had no inclination of keeping the iMac itself. So I asked him whether he would mind if I kept it and he seemed happy enough.
Now I'm on the hunt for a 24" iMac LCD screen. I found one on eBay but was duly outbid on it (reaching £260) nevertheless I'll see if I can grab hold of such a unit from somewhere. However the other thing I may try is purchasing a miniDVI -> DVI connector and connecting the iMac to an external display to see if it will output to that.
Aside from a screen or a little cable I actually need to find some desk space for the iMac, which is quite tricky. Ah, it's just one problem after another
Recently I came to the conclusion that having a complete mirror of my complete videos volume will be almost unsustainable. So instead of going the RAID 51 route I decided to install Linux on my QNAP 409 thanks to this very useful guide.
So now that I have a full on (albeit slow) Linux system I went onto install Samba as you do. Of course with Debian it's pretty simple, apt-get install samba will do it. Anyhow I noticed that out of the box the throughput was pretty terrible - 500k/sec on 100mbit/sec Ethernet. The Samba protocol has a lot of overhead (unlike FTP) so I wasn't expecting anything near wire-speed but 500k/sec is pathetic and means I can't stream HD video. So I did some googlising and found a site with some options for Samba - two of which were already in my original config file from back yonder.
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=8192 SO_SNDBUF=8192
This worked a treat - going from 500k/sec to a stready 7.5-8.5MB/sec. Unsurprisingly CPU usage on the little QNAP has gone up (only to around 18% on the SMB host process though) but it means I can finally stream videos without any trouble.
As a sidenote, some people have found that older kernels can cause speed issues. For the record I'm using 2.6.26 for the Orion arch.
A long time I go I came across a site which caught my interest. However with work and other stuff I forgot about it until recently. Wacom one of the top graphics tablet makers also produce a touch sensitive display which supports different levels of sensitivity, called the Cintiq. There's not much to dislike, 21" screen, good looks. The only sticking point? £1500.
So the guys at Bongofish created their own from a Wacom tablet and a standard LCD screen. Unsurprisingly the cost is a lot less than £1500. So for the last few weeks I've been looking on eBay for a el-cheapo tablet and finally snapped up an A3 sized unit. Pictures to come once it gets delivered!
Now the second part is to actually get an LCD panel. The hard thing is finding one that is roughly the same size as the tablet and has an external PSU as this saves a lot of work (magnetic shielding etc). Hopefully I'll manage to get the whole thing working without breaking too many screens (the tablets are quite strong). To finish the whole thing off, I intend to mount it on a monitor arm. I expect total cost to be around £350 (£130 has already been spent on the tablet).
Should be quite a journey
I do have a love for seafood but in this case I was determined to setup Squid (a HTTP proxy) for the local server here at home. The servers here are pretty decent, though back in the day when electricity was affordable we had some proper Compaq "Big Iron". Now it's more modest dual core, low power AMD Athlon 64s. The main server runs FreeBSD and is, of course, very stable - more so now that I've installed an UPS.
The point of Squid is two fold. One to shaw up the network from a security standpoint - not allowing outgoing port 80 and also from a control point of view - throttle Web traffic easily. Finally, it will allow me to browse websites from the Lab without our insane network admin parsing through the logs. Not that I view "those" kinds of sites anyway but I would rather prefer the privacy.
Of course there is documentation but in the midst of writing up my thesis I really needed to go down the quick and dirty (i.e. lazy) route. Installation of Squid is easy if you have FreeBSD ports installed - cd /usr/ports/www/squid/ ; sudo ; make install clean ; but for confirguation the sites that helped are these:
These are by no means the perfect setup but if you need something setup within 30 minutes and are in a major rush these two sites are very helpful.
Next project for my server is an LDAP service for our Cisco IP phones' address book.