Introduction
This guide serves as a decent source of information about building or sourcing a home lab server.
The 1L PC
More to add here.
Beyond 1L PC’s
ThinkCentre M70s Gen 5
I was looking at this PC mostly because it had expansion slots. Unfortunately, it only has a 1 x16 PCIe slot and 1 x1 PCIe slot, which means you could only put in a SAS Expander and a 2.5Gbe network card, not a 10G card.
It does have 2xNVMe however, and if you need the above PCIe card slots it’s not a bad platform.
- Direct Link – https://www.lenovo.com/ca/vipmembers/perkopolisgold/en/p/desktops/thinkcentre/m-series-sff/thinkcentre-m70s-gen-5-intel-sff-/len102c0046
- Hardware Manual – https://download.lenovo.com/pccbbs/thinkcentre_pdf/m70s_m90s_gen5_hmm.pdf
PCI Express and Cards
Understanding PCIe Bandwidth and Network Cards for Your Home Lab
When setting up a home lab server, understanding the capabilities of your PCIe slots is critical, especially if you’re looking to upgrade your network speeds. PCIe (Peripheral Component Interconnect Express) slots come in various sizes, each with its own bandwidth limitations, and the slot size directly impacts the maximum speed your network card can achieve.
PCIe Slot Bandwidth: Why It Matters
The bandwidth of a PCIe slot determines how much data it can transfer between the card and the motherboard. For network cards, this directly affects the achievable speeds. Here’s a quick breakdown of PCIe slot bandwidths across different generations:
Slot Size | PCIe 2.0 Bandwidth | PCIe 3.0 Bandwidth |
---|---|---|
x1 | 500 MB/s (4 Gbps) | 1 GB/s (8 Gbps) |
x4 | 2 GB/s (16 Gbps) | 4 GB/s (32 Gbps) |
x8 | 4 GB/s (32 Gbps) | 8 GB/s (64 Gbps) |
x16 | 8 GB/s (64 Gbps) | 16 GB/s (128 Gbps) |
For a 10Gbps Ethernet card, you’ll need at least a PCIe x4 slot on PCIe 2.0 or higher. Attempting to use a PCIe x1 slot will significantly bottleneck the card, as it doesn’t provide enough bandwidth for 10Gbps speeds.
Additional Resources
What’s the bandwidth and form factor for PCIe x1, x4, x8, and x16?
SAS Expanders: Boosting Your Storage Options in a Home Lab
In a home lab server setup, storage is often a critical component. As your storage needs grow, you may find yourself running out of direct SAS (Serial Attached SCSI) or SATA (Serial ATA) connections on your host bus adapter (HBA) or RAID controller. This is where SAS expanders come into play.
What is a SAS Expander?
A SAS expander acts as a multiplier for your SAS ports, enabling you to connect many more drives than your HBA or RAID controller can natively support. Think of it as a network switch but for your storage. For instance, a single HBA with four SAS ports might only connect to four drives directly. By introducing a SAS expander, you can scale that number to connect dozens of drives through the same controller.
How SAS Expanders Work
SAS expanders connect to your HBA or RAID controller via a SAS cable, typically using a Mini-SAS (SFF-8087 or SFF-8643) connection. Once connected, the expander provides additional ports for connecting more drives. Modern SAS expanders support dual-link connections, which can provide increased bandwidth and redundancy when paired with HBAs that support multipathing.
Here’s an example of a typical setup:
- Connect your HBA to the SAS expander using a Mini-SAS cable.
- Attach drives to the expander using additional Mini-SAS or breakout cables.
- The HBA will detect all connected drives, as if they were directly connected.
Bandwidth and PCIe Requirements
While SAS expanders are powerful tools, their performance is heavily influenced by the bandwidth of the PCIe slot your HBA uses. This is because the HBA must handle the aggregate data flow of all drives connected through the expander.
SAS Version | Bandwidth Per Lane | Total Bandwidth (4 Lanes) | Recommended PCIe Slot |
---|---|---|---|
SAS 2.0 | 6 Gbps | 24 Gbps | PCIe 2.0 x4 or higher |
SAS 3.0 | 12 Gbps | 48 Gbps | PCIe 3.0 x4 or higher |
For example, an HBA supporting SAS 2.0 with a x4 PCIe 2.0 connection can handle up to 24 Gbps of throughput, which aligns with the bandwidth of a 4-lane SAS link. If you’re using SAS 3.0, a PCIe 3.0 x4 slot is necessary to fully utilize its 48 Gbps capacity.
If you exceed the PCIe slot’s bandwidth, the connection becomes a bottleneck, causing performance degradation across all drives. This is particularly important when using high-speed SSDs or a large number of spinning drives simultaneously.
Additional Resources
For more in-depth discussions on SAS expanders, check out forums like ServeTheHome or guides on configuring storage in home lab environments.