Home Network and Servers

This is all way more than I need but damn it sure is nice to have. Most of the networking gear is Ubiquiti and I'm very happy with the integration and ease of setup. Adding several APs to cover my house was about as simple as it gets. There are two 10GbE drops for both my office and my partner's office. The servers are connected directly to the aggregation switch via 10G links as well.

The rack on the left is in my utility room and the rack on the right is in my office. I didn't really need a rack for my office but I had it laying around so figured I'd put it to use.

The main server is the HP ProLiant DL380p Gen 8 on the bottom labeled "gila". The server above it is turned off and is basically a spare at the moment. I need a lot of drive bays and these were one of the least expensive options when I bought them. All of the drives in the hot-swap bays in gila are assigned to a ZFS filesystem with multiple pools for various use cases.

The 12V power supply and Dell OptiPlex 7050 are primarily for my amateur radio gear. Right now I have a Yaesu FT-991A and some RTL-SDR dongles connected up but not much else as of December 2024.

Few things that were useful while setting all this up:

ilo-exec.exp

Expect script to execute fan silencing commands on the HP servers through iLO. Without this the servers are obnoxiously loud. I have this running on a schedule from the UDM, quick and dirty but it works perfectly. I needed to add an extra fan for the RAID controllers but haven't seen any issues with things overheating otherwise.

#!/usr/bin/expect -f

set timeout 2
set host [lindex $argv 0]
set level [lindex $argv 1]
set script [split [exec ./silence.sh $level] "\n"]

spawn timeout --verbose 60 \
      ssh -tt Administrator@$host \
      -o KexAlgorithms=diffie-hellman-group14-sha1,diffie-hellman-group1-sha1 \
      -o PubkeyAcceptedAlgorithms=+ssh-rsa \
      -o HostkeyAlgorithms=+ssh-rsa \
      -o StrictHostKeyChecking=no \
      -o ConnectTimeout=$timeout

foreach line $script {
  expect "hpiLO-> "
  send "$line\r"
}

expect "hpiLO-> "
send "exit\r"
expect "CLI session stopped"
expect eof
wait

silence.sh

#!/bin/bash

cat << EOF
fan t 24 caut 110
fan t 11 set 0
fan t 11 adj -20
fan t 12 adj -20
fan p 1 min 15
fan p 2 min 15
fan p 3 min 15
fan p 4 min 15
fan p 5 min 15
fan p 6 min 15
fan p 1 max $1
fan p 2 max $1
fan p 3 max $1
fan p 4 max $1
fan p 5 max $1
fan p 6 max $1
EOF

Home