While modified router works well as a mini server with backoffice services, low I/O throughput and computing power is a bottleneck for storing large files and administering wordpress blog. Waiting long seconds for administrative console to response, it was bugging me for time long enough to start thinking about a new server setup. I targeted a compact size, fanless and energy saving platform with performance guarantying enough responsiveness for existing services. I balanced out many hardware and software constraints and in May 2012 I have finalized this project moving my blog to new home. The banner in top right corner of this blog saying “Laggy site? Please be patient, it runs on a tiny server” has disappeared.
To satisfy my criteria I started long hours of lecture. I wanted reliable I/O with fail-over to setup NIS and 24×7 web server. Firstly, need of performant I/O, SATA rated, disqualified all embedded solutions like PlugPC or RaspberyPI. I focused on well known PC-based solutions, downsized however. Family of ITX formats connects ATX architecture I know best with smaller motherboard sizes than used in low-end desktop solutions. The mini ITX was compromise between size and price and I narrowed further research to that platform.
Mini ITX platform offers wide range of boards as well as prices. Same story like full size standard ATX. Next narrowing criterion that helped was RAID support. Initially I had in my mind RAID5 with 3 disks; motherboards with enough SATA drivers cost more than 100-150 euro and usually do not have embedded CPU. Boards with socket for high performance CPU in turn require active cooling while passively cooled mobos cost more than 200 euro. High performance means also high power PSU; for mini-ITX solutions picoPSU adapters cost 40-80 euro depending on output power, adding to overall cost. In contrast I assumed limited budget (for sake of sanity) on level of 150 euro for mobo and casing – I have been attracted to low power mobos with on-board integrated PSU.
Using hardware RAID card in home targeted solution would also be overkill – cost and size was unacceptable. Relaxing criteria I decided to accept software RAID as an option, even though it is criticized for unreliability. In my case RAID had to support “always up-to-date backup” to allow immediate data recovery when one disk fails. Without downtime consideration I agreed on 2 disks RAID1 (data mirroring) approach. In this case only 2 SATA sockets were necessary reopening low-costs options again.
Among CPUs my choice was Atom processor family widely used in simple desktop PC solutions. If 400MHz ARM processor in my router is able to run dozens services, then 1-2GHz Pentium class CPU can make it; excessive computing power is even unwanted when considering comparatively high energy consumption in idle state… I did not plan to use server for background video compression or Pi number computation anyway.
Video card and multimedia features was out of consideration as the setup was heading towards back-end. Integrated video card helps initially e.g. in OS installation, however is not necessary to configure a setup.
Among older motherboards I found Intel D945GSEJT, passing all criteria and still available on the market. It has 2x SATA2, Atom N270 single core processor, up to 2GB of DDR2 533MHz RAM in one SODIMM slot, integrated video, many USB sockets and, what was important, integrated power supply unit sourced with 12V DC. Moderately small computing power of CPU (equivalent of 1.5GHz celeron) requires only maximum 2.5A of DC current from external source. It is easy to find such an adapter for 5-10 euro. Another advantage of this mobo is low profile of radiators (it is designed for car PC) allowing use wide set of casing. I was able to buy new board for 75% of retail price, spending 70 euro.
Local market disadvantage is virtually no mini-ITX market. Only one or two online shops offer accessories with high margin comparing to other markets. For example the M350 case I have chosen costs in itx-sklep.pl (local Polish shop) about 65 euro, while in Germany it is 42 euro, in UK 36 euro and 25 euro in USA. Considering shipment costs and time I bought M350 with extra HDD frame from Germany online store saving 15 euro comparing to local online shop.
Assembly of motherboard in M350 case is rapid. Dedicated frames for two 2.5″ disks allow for optimal composition of components and good airflow. Although the case has 40mm fan mounting place, in stress tests I found that metal case, full of holes on each side, gives enough air vent to keep radiators hot but untouchable even under heavy system load. Bottom of the M350 case has wall mounting holes. The only problem I had on assembly was long SATA cables supplied with mobo; they would dangle and touch radiators blocking airflow and I needed to strap them down. Motherboard set has only one SATA power cable; for two disks I bought another cable adapting unused MOLEX power output to SATA power line.
While motherboard has PS2 input, it is not wired up in M350 case. Downside of it is that D945GSEJT does not support PS2 keyboard connected through PS2-USB adapter; while BIOS worked well then OS installers programs did not read all keystrokes. I got cheap 5 euro USB keyboard to simplify the process (and to have backup keyboard in case my old Microsoft Natural is dead some day).
Total cost 145 euro (+100 euro for 2xHDD):
- Motherboard – 70 euro
- 2GB Kingston RAM (used) – 15 euro
- Case with extra HDD frame – 43 euro
- MOLEX-SATA adapter – 2 euro
- USB keyboard – 5 euro
- 12V 2.5A DC adapter – 10 euro
- 2x SAMSUNG HM321HI (used) – 100 euro
Continue reading » part two, software