Jul 172013
 

My gateway is dying. My file server is getting full.

Over the past few weeks, I’ve been dealing with aging infrastructure. My development server started acting up and was showing signs of age. This aging desktop box contained 80GB HDD, which means it’s probably 6 or 7 years old. That’s getting on in age. It’s been replaced by a much gruntier server.

After completeing that work, I have to consider my gateway, which is aging and slow. I also noticed that my main file server is filling up.

This combination of problems has led to this solution:

  1. Move the existing file server to an unused server, which contains bigger HDD and faster CPU.
  2. Move the gateway to the old file server hardware, replacing the smaller HDD with larger HDD.

The beauty of this solution is I already own all the required hardware. It’s just a matter of time and energy.

Please allow me to overview the recent and upcoming changes.

The new dev box

This work has been completed. It’s up and running and provides a great deal of services for my network.

That old development server was named ngaio, after the Wellington suburb in which I once lived. The replacement server, slocum (named after the first man to sail single-handedly around the world) is much faster. It was destined to be my new gateway, but it turned out to be so fast, I’m using it for Bacula tutorials and as my main development server. The bullet points for slocum are:

  1. case – Fractal Design Define Mini Black Micro ATX Silent – $99.99
  2. motherboard – SUPERMICRO MBD-X9SCL+-F Micro ATX Server Motherboard LGA 1155 Intel C202 DDR3 1333 (manufacturer page) – $179.99
  3. CPU – Intel Xeon E3-1230 V2 Ivy Bridge 3.3GHz (3.7GHz Turbo) 4 x 256KB L2 Cache 8MB L3 Cache LGA 1155 69W Quad-Core Server Processor – $239.99
  4. RAM – Samsung DDR3-1600 8GB/1Gx72 ECC Samsung Chip Server Memory – M391B1G73BH0-CK0 (16GB for $145.40)
  5. PSU – RAIDMAX RX-500AF Continuous 500 watts ATX 12V v2.3/EPS 12V SLI Ready CrossFire Ready 80 PLUS BRONZE Certified Power Supply – $49.99
  6. HDD – 6 x Toshiba 3TB DT01ACA300

This server is running 27 jails, some of which include my local webserver, my bacula server, and my svn server. It is ZFS-only. No UFS present anywhere. Roughly 16TB of space available.

$ zpool list
NAME     SIZE  ALLOC   FREE    CAP  DEDUP  HEALTH  ALTROOT
system  16.2T   503G  15.8T     3%  1.00x  ONLINE  -
$

It has about 50 ZFS filesystems on it:

$ zfs list
NAME                                               USED  AVAIL  REFER  MOUNTPOINT
system                                             335G  10.3T   288K  /
system/root                                        655K  10.3T   655K  /root
system/rootfs                                     1.22G  10.3T  1.22G  legacy
system/tmp                                        1.03M  10.3T  1.03M  /tmp
system/usr                                         334G  10.3T   288K  /usr
system/usr/home                                   71.8G  10.3T   288K  /usr/home
system/usr/home/dvl                               71.8G  10.3T  71.8G  /usr/home/dvl
system/usr/local                                   260G  10.3T  95.3G  /usr/local
system/usr/local/jails                             165G  10.3T   288K  /usr/local/jails
system/usr/local/jails/bacula.unixathome.org      11.5G  10.3T  11.5G  /usr/local/jails/bacula.unixathome.org
system/usr/local/jails/bacula150                   200M  10.3T   199M  /usr/local/jails/bacula150
system/usr/local/jails/bacula151                   563M  10.3T   560M  /usr/local/jails/bacula151
system/usr/local/jails/bacula152                   207M  10.3T   205M  /usr/local/jails/bacula152
system/usr/local/jails/bacula153                   205M  10.3T   204M  /usr/local/jails/bacula153
system/usr/local/jails/bacula154                   205M  10.3T   204M  /usr/local/jails/bacula154
system/usr/local/jails/bacula155                   201M  10.3T   199M  /usr/local/jails/bacula155
system/usr/local/jails/bacula156                   210M  10.3T   208M  /usr/local/jails/bacula156
system/usr/local/jails/bacula157                   207M  10.3T   206M  /usr/local/jails/bacula157
system/usr/local/jails/bacula158                   209M  10.3T   208M  /usr/local/jails/bacula158
system/usr/local/jails/bacula159                   201M  10.3T   200M  /usr/local/jails/bacula159
system/usr/local/jails/bacula160                   200M  10.3T   199M  /usr/local/jails/bacula160
system/usr/local/jails/bacula161                   205M  10.3T   204M  /usr/local/jails/bacula161
system/usr/local/jails/bacula162                   205M  10.3T   204M  /usr/local/jails/bacula162
system/usr/local/jails/bacula163                   226M  10.3T   225M  /usr/local/jails/bacula163
system/usr/local/jails/bacula164                   205M  10.3T   204M  /usr/local/jails/bacula164
system/usr/local/jails/bacula165                   200M  10.3T   199M  /usr/local/jails/bacula165
system/usr/local/jails/bacula166                   200M  10.3T   199M  /usr/local/jails/bacula166
system/usr/local/jails/bacula167                   200M  10.3T   199M  /usr/local/jails/bacula167
system/usr/local/jails/bacula168                   200M  10.3T   199M  /usr/local/jails/bacula168
system/usr/local/jails/bacula169                   200M  10.3T   199M  /usr/local/jails/bacula169
system/usr/local/jails/bacula170                   200M  10.3T   199M  /usr/local/jails/bacula170
system/usr/local/jails/bacula171                   207M  10.3T   206M  /usr/local/jails/bacula171
system/usr/local/jails/basejail                   2.36G  10.3T  2.36G  /usr/local/jails/basejail
system/usr/local/jails/fileserver.example.org     18.9G  10.3T  18.9G  /usr/local/jails/fileserver.example.org
system/usr/local/jails/gus.example.org             274M  10.3T   273M  /usr/local/jails/gus.example.org
system/usr/local/jails/minion.example.org          210M  10.3T   202M  /usr/local/jails/minion.example.org
system/usr/local/jails/newjail                    6.00M  10.3T  6.00M  /usr/local/jails/newjail
system/usr/local/jails/svn.example.org            38.8G  10.3T  38.7G  /usr/local/jails/svn.example.org
system/usr/local/jails/webserver                  88.3G  10.3T  88.3G  /usr/local/jails/webserver
system/usr/local/pgsql                             288K  10.3T   288K  /usr/local/pgsql
system/usr/obj                                     126M  10.3T   126M  /usr/obj
system/usr/ports                                  1.75G  10.3T  1.60G  /usr/ports
system/usr/ports/distfiles                         160M  10.3T   160M  /usr/ports/distfiles
system/usr/src                                     288K  10.3T   288K  /usr/src
system/var                                        2.34M  10.3T   288K  /var
system/var/audit                                   288K  10.3T   288K  /var/audit
system/var/log                                    1.48M  10.3T  1.48M  /var/log
system/var/tmp                                     304K  10.3T   304K  /var/tmp

I’m quite happy with how this system is running. Based on this success, I’m going to continue with this approach when I set up the new fileserver and the new gateway.

The existing gateway

The old gateway is showing its age, but it’s running FreeBSD 9.1-RELEASE-p4. It’s slow and takes an incredible length of time to compile anything significant. Look at the CPU, and only 500MB of RAM:

CPU: Intel(R) Celeron(R) CPU 2.00GHz (1999.98-MHz 686-class CPU)
  Origin = "GenuineIntel"  Id = 0xf29  Family = f  Model = 2  Stepping = 9
  Features=0xbfebf9ff
  Features2=0x4400
real memory  = 536870912 (512 MB)
avail memory = 473157632 (451 MB)

The filesystem is pretty standard for the time:

 $ df -h
Filesystem            Size    Used   Avail Capacity  Mounted on
/dev/mirror/gm0s1a    495M    391M     64M    86%    /
devfs                 1.0k    1.0k      0B   100%    /dev
/dev/mirror/gm0s1e    495M     63M    392M    14%    /tmp
/dev/mirror/gm0s1f     31G     10G     18G    35%    /usr
/dev/mirror/gm0s1d    1.9G    893M    914M    49%    /var
devfs                 1.0k    1.0k      0B   100%    /var/named/dev
devfs                 1.0k    1.0k      0B   100%    /var/db/dhcpd/dev

I plan to move this to a ZFS-only system, with a layout similar to slocum.

The existing file server

The existing file server was set up in February 2010. I will move the old gateway to this hardware, which consists of:

  1. LIAN LI PC-A71F Black Aluminum ATX Full Tower Computer Case $240 (from mwave)
  2. ENERMAX ECO80+ EES620AWT 620W for $120
  3. ASUS M4A79T Deluxe m/b for $180
  4. AMD Phenom II X4 945 CPU $150
  5. 2x SYBA SY-PEX40008 PCI Express SATA II 4 port at $60 each for $120
  6. RAM – Kingston 8GB 240-Pin DDR3 SDRAM ECC Registered DDR3 1600 Server Memory : 4 x $64.99 = $259.96
  7. Intel EXPI9301CTBLK 10/ 100/ 1000Mbps PCI-Express for $31
  8. 8 x HITACHI Deskstar 7K2000 HDS722020ALA3302TB 7200 RPM 32MB
  9. Western Digital Caviar Blue WD1600AAJS 160GB 7200 RPM SATA HDD $40
  10. Seagate Barracuda 7200.10 ST380815AS 80GB 7200 RPM 8MB Cache SATA 3.0Gb $36
  11. ENERMAX INFINITI EIN720AWT 720W PSU $150

For over three years, this server has been my storage area for Bacula backups and has more recently taken up the task of running daily Bacula regression test. It hosts 9 jails and does heavy lifting every day.

After I move the file server to the unused server, I will replace the existing HITACHI Deskstar HDD with Toshiba DT01ACA300 3TB drives. The Western Digital and Seagate Barracuda drives will be removed. The system will be converted to a ZFS-only system.

The unused server

The file server described above will move to this unused server.

The unused server was bought at the beginning of this year, but I’ve not completed its implementation. In short, this hardware, as previously described, is:

  1. Case – LIAN LI PC-A70F USB3.0 Black Aluminum ATX Full Tower Computer Case (manufacturer link) : $240.40 (includes tax and shipping)
  2. motherboard – SUPERMICRO MBD-H8SGL-O ATX Server Motherboard (Supermicro link): $224.99
  3. CPU – AMD Opteron 6128 Magny-Cours 2.0GHz 8 x 512KB L2 Cache 12MB L3 Cache Socket G34 115W 8-Core Server : $284.99
  4. CPU Cooler – Noctua NH-U9DO A3 AMD Opteron, 4 Dual Heat-pipe SSO Bearing Quiet CPU Cooler : $76.99
  5. RAM – Kingston 8GB 240-Pin DDR3 SDRAM ECC Registered DDR3 1600 Server Memory : 4 x $64.99 = $259.96
  6. PSU – PC Power and Cooling Silencer MK III 600W power supply : $99.99
  7. SATA card – LSI Internal SATA/SAS 9211-8i 6Gb/s PCI-Express 2.0 RAID Controller Card, Kit (LSI page): $319.99
  8. HDD for ZFS – 8 x 3TB HDD TOSHIBA DT01ACA300 3TB
  9. SSD for ZFS ZIL cache – SAMSUNG 840 Pro Series MZ-7PD128BW 2.5″ 128GB: $139.99

This server needs to be configured with ZFS under FreeBSD 9.1, then I’ll copy over the existing system from the old fileserver.

What about the old gateway box?

I imagine it’ll get recycled. If I can, I’ll find a group that refurbishes computers for others.