Category Archives: Server

For information related to servers.

Proxmox VE

This page covers the Proxmox VE install and setup on our server. You can find a great deal of information about Proxmox in the Proxmox VE Administrator’s Guide.

Proxmox Installation/ZFS Storage

Proxmox was installed on our server using the steps in the following video:

The Proxmox boot images are installed on MVMe drives (ZFS RAID1 on our Dell Sever BOSS Card, or ZFS single on the MNVe drives on our Supermicro Servers). This video also covers the creation of a ZFS storage pool and filesystem. A single filesystem called zfsa was set up using RAID10 and lz4 compression using four SSD disks on each server.

A Community Proxmox VE License was purchased and installed for each node. The Proxmox installation was updated on each server using the Enterprise Repository.

Linux Configuration

I like to install a few additional tools to help me manage our Proxmox installations. They include the nslookup and ifconfig commands and the tmux terminal multiplexor. The commands to install these tools are found here.

Cluster Creation

With these steps done, we can create a 3-node cluster. See our Cluster page for details.

ZFS Snapshots

Creating ZFS snapshots of the Proxmox installation can be useful before making changes. This enables rollback to a previous version of the filesystem should any changes need to be undone. Here are some useful commands for this purpose:

zfs list -t snapshot
zfs list
zfs snapshot rpool/ROOT/<node-name>@<snap-name>
zfs rollback rpool/ROOT/<node-name>t@<snap-name>
zfs destroy rpool/ROOT/<node-name>@<snap-name>

Be careful to select the proper dataset – snapshots on the pool that contain the dataset don’t support this use case. Also, you can only roll back to the latest snapshot directly. If you want to roll back to an earlier snapshot, you must first destroy all of the later snapshots.

In the case of a Proxmox cluster node, the shared files in the associated cluster filesystem will not be included in the snapshot. You can learn more about the Proxmox cluster file system and its shared files here.

You can view all of the snapshots inside the invisible /.zfs directory on the host filesystem as follows:

# cd /.zfs/snapshot/<name>
# ls -la

Local NTP Servers

We want Proxmox and Proxmox Backup Server to use our local NTP servers for time synchronization. To do this, we need to modify /etc/chrony/chrony.conf to use our servers for the pool. This needs to be done on each server individually and inside the Proxmox Backup Server VM. See the following page for details.

The first step before following the configuration procedures above is to install chrony on each node –

apt install chrony

Mail Forwarding

We used the following procedure to configure postfix to support forwarding e-mail through smtp2go. Postfix does not seem to work with passwords containing a $ sign. A separate login was set up in smtp2go for forwarding purposes.

Some key steps in the process include:

# Install postfix and the supporting modules
# for smtp2go forwarding
sudo apt-get install postfix
sudo apt-get install libsasl2-modules

# Install mailx
sudo apt -y install bsd-mailx
sudo apt -y install mailutils

# Run this command to configure postfix
# per the procedure above
sudo dpkg-reconfigure postfix

# Use a working prototype of main.cf to edit
sudo vi /etc/postfix/main.cf

# Setup /etc/mailname -
#   use version from working server
#   MAKE SURE mailname is lower case/matches DNS
sudo uname -n > /etc/mailname

# Restart postfix
sudo systemctl reload postfix
sudo service postfix restart

# Reboot may be needed
sudo reboot

# Test
echo "Test" | mailx -s "PVE email" <email addr>

Disabling Enterprise Repository

Proxmox No Subscription Repositories
Proxmox No Subscription Repositories

We recommend purchasing at least a Community Support License for production Proxmox servers. We are running some test servers here and we have chosen to use the No Subscription repositories for these systems. The following videos explain how to configure the No Subscription repositories. These procedures work with Proxmox 8.3.

Explains how to configure the No Subscription repositories

Disable the No Subscription warning messages

Problems with Out-of-Date Keys on Server Nodes

I have occasionally encountered issues with SSH keys becoming outdated on our servers. The solution is to run the following commands on all servers. A reboot is also sometimes necessary.

# Update certs and repload PVE proxy
pvecm updatecerts -F && systemctl restart pvedaemon pveproxy

# Reboot if needed
reboot

DNS Performance Improvements

Some proxmox components can do DNS lookups at high rates. Some things that help with this include:

  • Using IP addresses instead of DNS names for NFS shares in /etc/pv/storage.cfg
  • Setting high-use DNS names like ‘pbs.your-domain‘ in /etc/hosts (you’ll need to do this for each node in your cluster)
  • If you use the Metrics Server feature in Datacenter, you’ll want to use an IP address instead of a DNS name to access your metrics database.

Welcome To Our Home Lab

Home Network Dashboard
Home Network Dashboard

This site is dedicated to documenting the setup, features, and operation of our Home Lab. Our Home Lab consists of several different components and systems, including:

  • A high-performance home network with redundant Internet connections
  • A storage system that utilizes multiple NAS devices
  • Multiple enterprise-grade servers in a high-availability cluster
  • Applications, services, and websites
  • Powered via dual-UPS protected power feeds and a backup generator

Check out our recently added What’s New section – a Blog to share our latest projects and useful information to benefit the Home Lab community.

Home Network

Home Network Core, High-Availability Storage and Secondary Server Rack
Home Network Core, High-Availability Storage, and Secondary Server Rack

Our Home Network uses a two-tiered structure with a core based upon high-speed 25 GbE-capable aggregation switches and optically connected edge switches. We use Ubiquity UniFi equipment throughout. We have installed multiple OM4 multi-mode fiber links from the core to each room in our house. The speed of these links ranges from 1 Gbps to 25 Gbps, with most connections running as Dual-Fiber LACP LAG links.

We have redundant Internet connections, which include 1 Gbps optical fiber and a 400 Mbps/12 Mbps cable modem service.

Our Network Rack also includes two SuperMicro Servers and a pair of Synology NAS drives in a high-availability configuration. These drives provide solid-state storage for Proxmox Virtual Machine disks and Docker volumes.

Main Server and Storage

Main Server Rack and NAS Storage Rack
Main Server Rack and NAS Storage Rack

Our Server Rack houses our main Dell Server and several of our Synology NAS Drives. It features redundant UPS power and includes rack-mounted Raspberry Pi systems which provide several different functions in our Home Lab.

Our servers run Proxmox in a high-availability configuration. In total, we have 104 CPUs and 1 TB of RAM available in our primary Proxmox cluster.

This rack includes an all SSD storage high-speed NAS that we use for video editing. It also includes a NAS which stores our video and audio media collection and provides access to this content throughout our home and on the go when we travel.

High-Capacity Storage System

Main NAS Storage Rack
Main NAS Storage Rack

Our NAS Rack provides high-capacity storage via several Synology NAS Drives. It features redundant UPS power and includes additional rack-mounted Raspberry Pi systems that provide several functions in our Home Lab. This rack also houses our Raspberry Pi NAS and NAS 2 systems.

Our total storage capacity is just over 1 Petabyte. Our setup also provides approximately 70 TB of high-speed solid-state storage.

Power Over Ethernet (PoE)

Main Power Over Ethernet (PoE) Switch

We use Power over Ethernet (PoE) switches at many edge locations in our network to power devices over Ethernet cables.

The switch shown above is located centrally, where all of the CAT6 Ethernet connections in our home terminate. It powers our Surveillance Cameras, IP Telephones, Access Points, etc.

Home Media System

Our Home Theater
Our Home Theater

We use our Home Network and NAS System to provide a Home Media System. Our Media System sources content from streaming services as well as stored video and audio content stored on our Media NAS drive and enables it to be viewed from any TV or Smart Device in our home. We can also view our content remotely when traveling or in our cars via the Internet.

Surveillance System

Synology Surveillance System
Synology Surveillance Station

We use Synology Surveillance Station running on one of our NAS drives to support a variety of IP cameras throughout our home. This software uses the host NAS drive for storing recordings and provides image recognition and other security features.

Telephone System

Telephone System Dashboard
Telephone System Dashboard

We use Ubiquity Unifi Talk to provide managed telephone service within our home.

Ubiquity IP Telephone

This system uses PoE-powered IP Telephones which we have installed throughout our home.

Applications, Services, and Websites

We are hosting several websites, including:

Set-up information for our self-hosted sites is available here.