The costs of running home servers
Frequently, especially after I have a hardware issue (read http://blogs.phred.org/blogs/alex_wetmore/archive/2005/11/19/69.aspx) I am asked by members of bikelist.org about donations and what it costs me to run the servers.
Donations
I’ll start by talking about donations. I will accept small donations, but don’t like to ask for them. I run these lists and host websites and mail stuff as a hobby, not as a business. As a hobby I want to keep my costs under control, but also don’t want to turn it into a business. So I don’t like to get donations that would come too close to covering my costs and make this profitable. I also think that there are much better causes to give money to than bikelist.org and myself. I make a good salary and hosting this stuff or paying for hardware is not hurting my budget.
So I’ll take donations using PayPal to my email address. Please keep them under $20. Please don’t feel the need to donate anything.
Costs
There are three major costs in running the services. Two are the monthly costs for DSL and power to run these computers. The third is the cost of the machines themselves (more or less a fixed cost, although things do die and need to be upgraded once in a while).
I pay $99.99 plus taxes for my DSL line, which works out to be about $109 per month. This gets me a DSLline with 1.5mbps downlink speed (how fast I can download stuff from the internet) and 768kbps uplink speed (how fast I can upload). Since I’m running a server the second number is more important to me, and most DSL and cable services skimp here. I also need multiple static IP addresses. The IP address is how computers address each other over the internet, you can think of it as a telephone number. Most DSL or cable services give you a dynamic IP address that can change when you reboot your computer or on a regular basis. That is great if you don’t want people connecting back to your computer (most customers don’t), but not useful if you want to run a server. I need multiple static IP addresses because there are multiple computers running web servers in my house (bikelist.org goes to one machine, search.bikelist.org goes to another). Finally my ISP (Speakeasy.net) has great service and understands the issues of running servers and takes care of them very very quickly. Note that I need DSL or Cable anyway, so the incremental cost of having good DSL for running servers is about $50/mo,not the full $110/mo.
Power is an easy cost to forget about because you are not billed per computer turned on in the house. However it does add up quickly. I pay about 9 cents per killowatt hour. A computer takes about 100w when turned on,or 2.4kwh per day. That works out to about $6/month (2.4 * $0.09 * 30) = $6.48. My system has two servers running 24×7, so that is about $13 in power per month. It used to be 3 servers (one extra for backups) and I figured out how to consolidate down to two. I’m looking at solutions to get down to one (using Virtual Server to run both systems on the same hardware).
I tend to find hardware that is pretty cheap but functional. The main server is a Dell 400SC. This is the cheapest server class hardware and cost around $400 in September 2004. I’ve added 1gb of memory to it (roughly $150 back then). It is using two 160gb disks that I bought last week ($60-$100 each depending on how the rebates go through), but it previously ran on two different 160gb disks that were $100 each (I don’t trust those anymore). There is a RAID card ($100ish on eBay a few years back) and 3 80gb disks ($100/ea a few years back) for backup purposes. So that is a cost of roughly $1000-$1200 for a system that should last me 2 to 3 years before being replaced (in this case the main system will probably be replaced in about a year because Exchange 12 requires 64-bit hardware and this is a 32-bit server). My other server runs FreeBSD and hasn’t changed in a few years. It is a AMD Duron running at 900mhz with 256mb of RAM and two 30gb disks with a hardware RAID card. It probably cost me about $600-800 when built and is already 2 or 3 years old and will last another year or two pretty easily.
Time
When nothing goes wrong running all of this stuff takes very little time. When it does go wrong time can quickly be consumed. I’d estimate (remember, this is a hobby, so I don’t keep track of my hours) that I spend about 10 hours per month doing little stuff here and there to run things. A good chunk of this time is just helping people subscribe or unsubscribe from lists or figure out the archive system. Some of it is working on new software — for instance I’m slowly rewriting the archive system to make it better, but this takes time. Occasionally I have big fault (like the disk corruption from last weekend) which consume 20-30 hours of my time in a very short period, and that is less fun.
Conclusion
Running all of this stuff has some costs, but they aren’t huge and are within my budget.