BozemanLUG: October Meeting Report
The October 2011 BozemanLUG meeting was last night. David Boreham from NuevaSync talked about the design, specification and features he came up with for the new servers they're deploying next month as part of a major service capacity upgrade project.
He only had a handful of presentation slides but spent quite a bit of time talking in depth about the current servers he is replacing, the problems he was trying to solve, and why he chose the various parts he did. Here are links to the parts he used:
Drives: Intel 710 Series 100GB and 200GB 2.5" SATA II eMLC Enterprise Solid State Disks
CPU: AMD Opteron 6128 Magny-Cours 2.0GHz 8 x 512KB L2 Cache 12MB L3 Cache Socket G34 115W 8-Core Processor
Motherboard: SUPERMICRO MBD-H8SGL-F-O ATX Server Motherboard Socket G34 AMD
RAM: Kingston 8GB 240-Pin DDR3 SDRAM ECC (quantity 8)
Case: SUPERMICRO CSE-512F-350B Black 1U Rackmount Server Chassis 350W AC power supply
The case is 1U high and wide, but only half deep... so two can fit back-to-back in a standard rack if desired... although finding rails may take some effort.
He had quite a lot to say about Solid State Drives, the voodoo that they do, and how most of them suck except for the Intel models he chose (100 GB and 200 GB). He had a bit of a challenge with various SATA cables (there are two types of right-angles) and ended up having to flip the SSD drives upside down in the case and attaching them with velcro.
Then came the hands-on portion of the presentation.
David brought three of his servers to the meeting as well as a switch and a laptop. They were all connected together via the switch and David was able to show us the web interface for IPMI-based out-of-band remote management system included in the SuperMICRO motherboard. He used a Java-based applet in his browser to do a graphical, media-less install of CentOS 6.0 x86_64 on the third server. The CentOS .iso disk image for the install was on his laptop.
David then connected to all of the servers via ssh to show us various performance metrics for the hardware.
For benchmarking the drives David used a tool that he wrote some time ago (diskspeed) that does a series of write and fsync operations. He ran diskspeed several times while using hdparm to turn on and off write-caching. For those who are interested, I hope to get the C source code from David for diskspeed and post it as an attachment to this post in the near future.
The hdparm commands he used were:
hdparm -W 0 /dev/sda (write-cache off)
hdparm -W 1 /dev/sda (write-cache on)
hdparm -W /dev/sda (show write-cache status)
David also used a local build of the smartmontools package to show many of the advanced parameters related to the SSD drive. He ended up working with one of its developers to create a patch that added additional support for the Intel 710 Series SSD. The smartctl command he used was:
smartctl -A /dev/sda
For benchmarking database performance he used a fairly large (~16GB) PostgreSQL database he had and the stock PostgreSQL benchmarking tool. He showed the performance differences between two systems... one with a traditional hard disk and the other with the SSD. The command line he used was:
pgbench -T 60 -j 8 -c 64
While the meeting turnout (presenter and 5 attendees) was somewhat disappointing, the attendees had a LOT OF QUESTIONS for David and we all learned a lot. David is well known for his highly technical presentations having given a number of them to the BozemanLUG in the past including: 1) How he designed and built his wireless business in the valley [about 10 years ago], 2) How his company worked on Red Hat Directory Server and solidified replication [about 7 years ago], and 3) How his company built the software for NuevaSync which included a lot of hairy troubleshooting [last year].
The wealth provided in this presentation wasn't necessarily in the specifics David chose for this project but with his explanation of the process he went through.
A big thank you goes to David and we hope we can get another presentation from him in the not-too-distant future!