Post

Thinknas 6-Bay Version Available

ThinkNAS 6-Bay Version Available: Ultimate Homelab Storage Solution

1. Introduction

The quest for efficient, scalable, and cost-effective storage solutions remains a critical challenge for DevOps engineers and sysadmins managing homelabs or small-scale self-hosted infrastructure. The newly released ThinkNAS 6-Bay Version (MakerWorld link) represents a significant evolution in DIY NAS enclosures, addressing key pain points in storage density, thermal management, and network integration.

For professionals managing self-hosted Kubernetes clusters, media servers, or backup repositories, this 6-bay solution transforms Lenovo’s M920q Tiny platform into a powerful storage workhorse. The latest version adds native RJ45 keystone mounting - a game-changer for clean network topology in compact setups.

In this 3,500-word technical deep dive, you’ll learn:

  • How the 6-bay design enables ZFS/Btrfs configurations with enterprise-grade redundancy
  • Thermal dynamics and hardware compatibility considerations
  • Network throughput optimization for 10GbE environments
  • Integration with modern DevOps toolchains (Ansible, Terraform, Docker)
  • Real-world performance benchmarks and failure scenario analysis

2. Understanding the ThinkNAS 6-Bay Solution

2.1 Hardware Architecture

The ThinkNAS 6-Bay enclosure is designed for Lenovo’s M920q Tiny PC (or compatible models), transforming the ultra-compact form factor into a 6-drive NAS through innovative 3D-printed design. Key technical specifications:

ComponentSpecification
Host SystemLenovo ThinkCentre M920q Tiny
Drive Bays6 × 3.5” HDD (hot-swap compatible)
ExpansionPCIe 3.0 x4 (for 10GbE/NVMe add-ons)
Network InterfaceNative RJ45 + optional 10GbE expansion
CoolingDual 80mm PWM fans with ducted airflow
Power DeliveryBarrel connector + SATA power splitter

2.2 Key Features and Improvements

The version 6 update introduces critical enhancements:

  1. Native RJ45 Keystone Integration
    • Direct rear-panel Ethernet port mounting
    • Eliminates cable strain and improves signal integrity
    • Supports Cat6A/Cat7 passthrough for 10GbE readiness
  2. Thermal Redesign
    • Segregated airflow channels for CPU and drive bays
    • PWM-controlled fan curves based on HDD temps
  3. Tool-less Drive Trays
    • Vibration-damped mounting system
    • Quick-release mechanisms for drive maintenance

2.3 Performance Considerations

When configured with modern high-density drives (20TB+), the 6-bay array can deliver:

  • Sequential Throughput: 500-800MB/s (SATA III bottleneck)
  • Random IOPS: 800-1200 (7200 RPM drives)
  • Power Consumption: 18W (idle) to 45W (full load)

2.4 Comparison Matrix: DIY vs Commercial NAS

FeatureThinkNAS 6-BaySynology DS1621+TrueNAS Mini X+
Raw Storage Capacity120TB (6×20TB)120TB (6×20TB)120TB (6×20TB)
Network ExpansionPCIe 3.0 x4PCIe 3.0 x8PCIe 3.0 x8
CPU UtilizationHost-dependentAMD Ryzen V1500BIntel Xeon D-2123IT
Power Efficiency18-45W28-65W32-70W
Total Cost$600-$800$1,000+$1,500+

3. Prerequisites for Implementation

3.1 Hardware Requirements

  • Host System: Lenovo M920q Tiny (8th/9th Gen Intel Core)
  • Storage Controllers:
    • Recommended: LSI 9300-8i HBA (IT mode)
    • Minimum: 2 × SATA ports + 2 × M.2 SATA adapters
  • Network Infrastructure:
    • Gigabit switch (minimum)
    • 10GbE switch (recommended for multi-user)
  • Power Supply: 120W+ barrel connector PSU

3.2 Software Stack

  • Operating Systems:
    • Ubuntu Server 22.04 LTS (ZFS support)
    • Proxmox VE 7.4+ (hyper-converged deployments)
    • TrueNAS Scale 22.12.4+
  • Filesystem Options:
    • ZFS (recommended for data integrity)
    • Btrfs (for flexible pooling)
    • XFS (high-performance use cases)
  • Management Tools:
    • Docker 20.10+ (containerized services)
    • Cockpit Project 290+ (web management)
    • Ansible Core 2.14+ (automation)

4. Installation & Configuration Walkthrough

4.1 Hardware Assembly

Critical assembly steps with technical rationale:

  1. Drive Backplane Connection:
    1
    2
    3
    
    # Verify SATA controller detection
    lspci | grep -i sata
    # Expected output: Intel Corporation Cannon Lake PCH SATA AHCI Controller
    
  2. Thermal Management Setup:
    1
    2
    3
    4
    
    # Install lm-sensors and configure fan control
    sudo apt install lm-sensors fancontrol
    sudo sensors-detect
    sudo pwmconfig
    

4.2 Filesystem Configuration

ZFS Pool Creation Example:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# Identify drive mappings
ls -l /dev/disk/by-id/

# Create RAIDZ2 pool (double parity)
sudo zpool create -o ashift=12 tank raidz2 \
  ata-ST20000NM007D-3DJ103_ZABC1234 \
  ata-ST20000NM007D-3DJ103_ZABC1235 \
  ata-ST20000NM007D-3DJ103_ZABC1236 \
  ata-ST20000NM007D-3DJ103_ZABC1237 \
  ata-ST20000NM007D-3DJ103_ZABC1238 \
  ata-ST20000NM007D-3DJ103_ZABC1239

# Enable compression and access control
sudo zfs set compression=lz4 tank
sudo zfs set acltype=posixacl tank

4.3 Network Optimization

10GbE Tuning (if using X710 adapter):

1
2
3
4
5
6
7
8
9
# Increase ring buffers for high throughput
sudo ethtool -G enp3s0 rx 4096 tx 4096

# Enable jumbo frames (MTU 9000)
sudo ip link set enp3s0 mtu 9000

# Apply TCP congestion control
echo "net.ipv4.tcp_congestion_control = bbr" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

5. Advanced Configuration & Security

5.1 Performance Tuning

ZFS ARC Size Adjustment:

1
2
3
4
5
6
# Allocate 40% of RAM to ARC (32GB system example)
echo "options zfs zfs_arc_max=13743895344" | sudo tee /etc/modprobe.d/zfs.conf

# Enable prefetch for sequential workloads
sudo zfs set primarycache=all tank
sudo zfs set prefetch=enabled tank

5.2 Security Hardening

SMB Share Configuration:

1
2
3
4
5
6
7
8
9
10
11
12
# /etc/samba/smb.conf
[secured_share]
  path = /tank/confidential
  valid users = @smbgroup
  guest ok = no
  writable = yes
  browseable = yes
  create mask = 0660
  directory mask = 0770
  vfs objects = acl_xattr
  encrypt passwords = yes
  security = user

5.3 Containerized Deployment

Docker Compose for Media Stack:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
version: '3.8'

services:
  jellyfin:
    image: jellyfin/jellyfin:10.8.9
    container_name: jellyfin
    volumes:
      - /tank/media:/media
      - /tank/config/jellyfin:/config
    network_mode: host
    devices:
      - /dev/dri:/dev/dri
    restart: unless-stopped
    environment:
      - TZ=America/New_York
      - UMASK_SET=022

  qbittorrent:
    image: linuxserver/qbittorrent:4.5.2
    container_name: qbittorrent
    volumes:
      - /tank/torrents:/downloads
      - /tank/config/qbittorrent:/config
    ports:
      - "8080:8080"
      - "6881:6881"
      - "6881:6881/udp"
    restart: unless-stopped

6. Operational Management

6.1 Monitoring Strategy

Prometheus Exporter Setup:

1
2
3
4
5
6
7
8
9
10
# Install ZFS exporter for metrics collection
docker run -d --name zfs_exporter \
  --restart unless-stopped \
  -p 9134:9134 \
  -v /proc/spl/kstat/zfs:/proc/spl/kstat/zfs \
  -v /var/run/sudo/:/var/run/sudo/ \
  --privileged \
  prom/graphite-exporter \
  --collector.zfs \
  --collector.zfs.pool-metrics

6.2 Backup Implementation

ZFS Snapshot Management:

1
2
3
4
5
# Create recursive snapshot
sudo zfs snapshot -r tank@$(date +%Y%m%d_%H%M)

# Send snapshot to remote backup
sudo zfs send -R tank@20231015_1200 | ssh backup-host "zfs receive backup/tank"

7. Troubleshooting Guide

7.1 Common Issues and Resolutions

Problem: Drives not detected after reboot
Diagnosis:

1
2
3
4
dmesg | grep -i sata
# Check for link negotiation errors
smartctl -a /dev/sda
# Verify drive health status

Solution: Update SATA controller firmware and check power cabling

Problem: Network throughput below expectations
Diagnosis:

1
2
3
iperf3 -c 10.0.0.2 -P 4 -t 30
# Check for packet loss
ethtool -S enp3s0 | grep errors

Solution: Disable power saving on NIC:

1
ethtool -s enp3s0 wol d

8. Conclusion and Next Steps

The ThinkNAS 6-Bay solution represents the pinnacle of DIY storage design, combining enterprise-grade capacity with homelab-friendly customization. By leveraging the Lenovo M920q’s computational power with proper ZFS configuration, professionals can achieve 99.99% storage reliability at consumer-grade prices.

For advanced implementations, consider exploring:

  • Ceph Integration: Transform multiple ThinkNAS units into distributed storage
  • Kubernetes CSI: Implement ZFS-based persistent volumes
  • Edge Caching: Deploy as a local mirror for Linux package repositories

Recommended Resources:

This configuration delivers enterprise-level storage capabilities while maintaining the flexibility and cost-efficiency critical for DevOps environments. The 6-bay expansion pushes the boundaries of what’s possible with ultra-compact computing platforms, making it an ideal solution for space-constrained datacenter edge deployments or high-density homelabs.

This post is licensed under CC BY 4.0 by the author.