My Home Server
Server Functions:
As I'm well into web development and other geeky stuff, I've got my own home server. It has many functions both internally here at home and externally. Here are it's specs:
AMD Phenom II 550 @ 3.10GHz
10GB DDR3-1333
4x1.0TB Samsung F1 HDD's
1x1.5TB Samsung F3 HDD
2x2.0TB Samsung F4 HDD
Windows 7 Professional x64
450w Antec PSU
1200VA Offline UPS (70 mins runtime)
4U Rack Case
Total usable space: 9.5TB
Out of this 9.5TB I allocate it as following:
1.0TB for Boot/Data
1.0TB for Backups
1.0TB for Media 1
1.0TB for Media 2
2.0TB for Betas 1
1.5TB for Betas 2
Here are some of it's functions:
I employ a very unique backup regieme for my server. For my web server over in France, I perform database and full data backup every day. Database backups run every 3 hours and other backups run daily. These come to this server where they are archived for 7 days in case required.
I had to design my own unique backup regieme because the commercial solutions were not adequete. I currently use a combination of Syncback SE, PHP and BAT files.
In this setup, Syncback SE uses FTP to copy all files from the France server to home, and then locally the home server uses PHP and BAT files to make archived copies. These backups run via cron job automatically after which the server e-mails me a report and error log if required.
I run backups frequently because my sites are quite active (BetaArchive is very active database wise). Over the years the backups have saved me from massive data loss so I always make sure they're working. You may think that backing up so frequently will use up silly amounts of space right? Well it doesn't, not when you think about it. The total combined data is about 20GB. I make 7 copies of this data which amounts to just 140GB or so. Older backups are automatcially deleted before the new one is made.
Backups not only run for the websites but my documents as well. The media and beta drives are not backed up as these can be easily replaced from other sources.
I run my home server as a file server. I don't store files on my PC unless I don't mind losing them. If you have read my computers page you'll see I run my disks in RAID0 which is not fault tolerant. If one of 2 disks fail, I lose all of my data. For this reason, important data is copied to the server where it is automatically backed up.
I also store my media files (movies, tv series, etc) on the server too. This totals almost 2TB since I have been collecting for a few years now. I don't watch TV so I keep copies from iPlayer and the likes locally for future viewing.
Although I don't run them often, my server is also set up to run game servers such as Minecraft and Garrys Mod. There isn't really much to say about these but the server copes OK with them. I guess this is because servers don't require anywhere near the resources of the full game.
I run my server as part of a VPN for easier external access for myself. Many times I've required the need to access my server to get documents, etc. For this reason I set up Log Me In Hamachi and added my computers to the network. This allows me to browse my network shared just as if I were sat on the same network.
As a web developer I need a sandbox to do testing in. My home server is the easiest system to have it set up on as it means I can develop from anywhere.
I currently only run PHP with no database support, as I haven't had the need to develop a database application yet. I guess this will come in the future as I do have some plans for one.
I run a basic web server called Abyss Web Server. I spent many years using it and testing it for the company, and I even set up a dedicated website towards helping people run it (AbyssUnderground). It was a nice web server but it couldn't cope with the demands I needed, so I changed to IIS for my production server. For low traffic however, it's perfect which is why I have stuck with it for local development.
This very website was developed using this set up! =)
If you want to know any more information about my set up, please send me an e-mail from the contact page.