Finally Found A NAS Case That Fits Inside An Ikea Kallax
Introduction
Running a self‑hosted homelab often means juggling limited floor space, noisy fans, and a growing list of services that demand reliable storage. For many DevOps engineers, the classic “tower‑style” NAS sits on the floor, competing with cables, pets, and the occasional coffee spill. The result is a cluttered workspace and a thermal environment that can shorten the lifespan of hard drives.
If you’ve ever stared at an IKEA KALLAX shelf and wondered whether it could double as a discreet enclosure for a NAS, you’re not alone. The KALLAX series is popular in the homelab community because its clean lines, modular design, and generous interior volume make it an attractive candidate for custom builds. However, fitting a full‑size server‑grade case inside a KALLAX unit without compromising airflow or accessibility is a non‑trivial engineering challenge.
In this guide we walk through the exact solution that finally makes the combination work: the Jonsbo N6 9‑bay hot‑swap case, paired with a Proxmox hypervisor running a TrueNAS Scale VM and an AI inference container (Ollama). By the end of the article you will understand:
- Why the Jonsbo N6 is uniquely suited for the KALLAX footprint.
- The hardware and software prerequisites for a stable, self‑hosted storage stack.
- Step‑by‑step installation, configuration, and performance tuning.
- Best‑practice security hardening and monitoring for a production‑grade homelab.
All of the instructions are based on publicly documented specifications and widely‑adopted open‑source tools, so you can replicate the build with confidence.
Understanding the Topic
What Is a “NAS Case Inside a KALLAX”?
A NAS case is a chassis that houses multiple hard drives, a motherboard, and optional expansion cards (GPU, NIC, etc.) to provide network‑attached storage services. The IKEA KALLAX is a modular shelving unit with a 35 cm × 35 cm × 39 cm internal cavity per cube. The idea is to mount a NAS case inside one of these cubes, effectively turning a piece of furniture into a silent, low‑profile server rack.
History and Development
- NAS Evolution – Early network storage devices were simple file servers built from commodity hardware. Over the past decade, purpose‑built NAS appliances (e.g., Synology, QNAP) have added features like RAID controllers, SSD caching, and integrated virtualization.
- Homelab Trend – As open‑source hypervisors (Proxmox, VMware ESXi) and storage platforms (TrueNAS, OpenMediaVault) matured, enthusiasts began building custom NAS solutions that could run additional workloads such as containers, VMs, and AI inference.
- Furniture‑Based Enclosures – The “DIY rack in a bookshelf” concept emerged on Reddit and the r/homelab subreddit around 2018. Users experimented with IKEA BILLY, KALLAX, and even IKEA HEMNES units, but most struggled with thermal constraints and limited drive bays.
Key Features of the Jonsbo N6
| Feature | Description |
|---|
| Drive Bays | 9 hot‑swap bays with a server‑grade backplane (metal trays, 5 mm spacing) |
| GPU Support | Full‑size GPU up to 305 mm length, 2‑slot clearance |
| Power Supply | 500 W 80 PLUS Bronze ATX PSU (modular) |
| Cooling | Two 120 mm front intake fans, one 120 mm rear exhaust fan (PWM) |
| Dimensions | 380 mm × 210 mm × 380 mm (H × W × D) – fits snugly inside a KALLAX cube |
| Expansion Slots | 1 × PCI‑E x16, 1 × PCI‑E x4, 2 × M.2 NVMe (2280) |
| Build Quality | Steel chassis with brushed finish, anti‑vibration mounts |
These specifications make the N6 the first case that can physically fit inside a KALLAX while still offering enterprise‑grade hot‑swap capability and GPU expansion for AI workloads.
Pros and Cons
| Pros | Cons |
|---|
| Compact footprint – No floor clutter, blends with living‑room furniture. | Limited vertical clearance – Requires careful cable routing to avoid interference with the KALLAX back panel. |
| Hot‑swap bays – Zero‑downtime drive replacement, ideal for RAID arrays. | Airflow constraints – Must rely on case fans; no dedicated KALLAX ventilation. |
| GPU support – Enables on‑prem AI inference (e.g., Ollama). | Weight – Fully populated case can approach 30 kg; ensure the KALLAX shelf is securely anchored. |
| Modular power – Redundant connectors for clean cable management. | Noise – Fan speed may increase under heavy load; consider acoustic dampening. |
Ideal Use Cases
- Self‑hosted media server – Plex, Jellyfin, or Emby with large HDD pools.
- Enterprise‑grade backup – ZFS on TrueNAS Scale with snapshots and replication.
- AI inference node – GPU‑accelerated containers (Ollama, TensorFlow) running alongside storage services.
- Development sandbox – Proxmox VM host for CI/CD pipelines, testing infrastructure‑as‑code.
Current State and Future Trends
Open‑source storage platforms are moving toward scale‑out architectures (e.g., TrueNAS SCALE’s Kubernetes integration). Meanwhile, GPU‑accelerated inference on the edge is gaining traction, making the combination of a NAS and a modest GPU increasingly valuable for low‑latency AI services. The Jonsbo N6’s ability to host both storage and GPU workloads positions it well for these emerging patterns.
Comparison with Alternatives
| Alternative | Form Factor | Drive Bays | GPU Support | Typical Cost |
|---|
| Synology DS1621xs+ | 4U rack | 12 (non‑hot‑swap) | No GPU | $1,500 |
| DIY ATX Tower | Full tower | 8–10 (hot‑swap optional) | Yes (full size) | $300–$600 |
| IKEA BILLY + Mini‑ITX | Shelf | 4 (DIY trays) | Limited | $200–$400 |
| Jonsbo N6 + KALLAX | Cube | 9 (hot‑swap) | Yes (up to 305 mm) | $450 (case) + $150 (KALLAX) |
The N6 + KALLAX combo offers the best balance of hot‑swap capability, GPU support, and space efficiency for a home environment.
Prerequisites
Hardware Checklist
| Component | Minimum Spec | Recommended |
|---|
| Case | Jonsbo N6 (9‑bay) | Jonsbo N6 with modular PSU |
| Motherboard | Mini‑ITX, Intel B560 or AMD B550 | Mini‑ITX, 12 × 12 mm VRM, 2 × M.2 slots |
| CPU | Intel i5‑10400 or AMD Ryzen 5 3600 | Intel i7‑10700 or AMD Ryzen 7 5800X |
| RAM | 8 GB DDR4 | 32 GB DDR4 ECC (if supported) |
| GPU | Optional (for AI) | NVIDIA RTX 3060 (12 GB) |
| Storage | 2 × 500 GB SSD (OS) + 9 × 4 TB HDD (NAS) | 2 × 1 TB NVMe (Proxmox) + 9 × 8 TB HDD (ZFS) |
| Power Supply | 500 W 80 PLUS Bronze | 650 W 80 PLUS Gold (headroom) |
| Cooling | 2 × 120 mm front, 1 × 120 mm rear | Add a low‑profile 80 mm rear fan if needed |
| KALLAX Shelf | 1‑cube (35 × 35 × 39 cm) | Reinforced wall‑mount brackets |
Software Requirements
| Software | Version | Purpose |
|---|
| Proxmox VE | 8.0‑1 (or latest) | Hypervisor for VM/CT hosting |
| TrueNAS Scale | 23.10‑Stable | ZFS storage, SMB/NFS/iSCSI services |
| Ollama | 0.2.5 (or latest) | Containerized LLM inference |
| Docker Engine | 24.0.6 | Runtime for Ollama container |
| Linux Kernel | 6.2+ (inside Proxmox) | Required for ZFS and GPU passthrough |
| UEFI Firmware | Latest from motherboard vendor | Enables secure boot and GPU passthrough |
Network & Security Considerations
- Static IP – Assign a dedicated /24 subnet (e.g., 192.168.50.0/24) for the homelab.
- VLAN Segmentation – Separate storage traffic (VLAN 10) from management (VLAN 20).
- Firewall – Enable Proxmox’s built‑in firewall; block inbound traffic except SSH (port 22) and required service ports (SMB 445, NFS 2049).
- SSH Keys – Disable password authentication; use key‑based login for all admin accounts.
- TLS – Enable HTTPS for Proxmox UI and TrueNAS web UI (self‑signed or Let’s Encrypt).
Permissions & Access
| Role | Required Access |
|---|
| Proxmox Admin | Full root privileges on the host (sudo). |
| TrueNAS Admin | Local root or admin user with ZFS management rights. |
| Docker Operator | Membership in docker group; ability to run privileged containers for GPU access. |
Pre‑Installation Checklist
- Verify that the KALLAX cube is securely anchored to a wall or sturdy frame.
- Measure interior dimensions and confirm clearance for the N6 front panel and rear exhaust.
- Assemble the Jonsbo N6 with PSU, motherboard, and drives outside the KALLAX first to test fit.
- Download the latest Proxmox ISO and create a bootable USB (Rufus or
dd). - Prepare a separate USB stick with the TrueNAS Scale ISO for VM installation.
- Ensure you have a spare Ethernet cable and a managed switch that supports VLANs.
Installation & Setup
1. Physical Assembly
- Mount the Motherboard – Align the standoffs with the N6’s Mini‑ITX tray. Secure with M3 screws.
- Install the PSU – Slide the modular 500 W unit into the rear compartment; route cables through the provided grommets.
- Attach Front Fans – Connect the two 120 mm fans to the motherboard’s PWM headers (CPU_FAN and CHA_FAN1).
- Insert Drives – Use the metal hot‑swap trays; ensure each HDD is seated with the 5 mm spacing to maintain airflow.
- GPU Installation – Place the RTX 3060 into the PCI‑E x16 slot; secure with the rear bracket. Connect the 8‑pin PCIe power cable.
- Cable Management – Bundle SATA power and data cables, leaving a clear path for air to flow from front to rear.
Tip: Use low‑profile cable ties to keep the interior height under 35 cm, preserving the KALLAX clearance.
2. Installing Proxmox VE
1
2
3
4
5
| # Verify ISO checksum
sha256sum proxmox-ve_8.0-1.iso
# Write ISO to USB (replace /dev/sdX with your USB device)
sudo dd if=proxmox-ve_8.0-1.iso of=/dev/sdX bs=4M status=progress oflag=sync
|
- Boot the system from the USB stick.
- Select Install Proxmox VE and follow the on‑screen prompts:
- Target disk: choose a 1 TB NVMe (or the first SSD).
- Set a strong root password and an email address for notifications.
- Configure the management network interface with a static IP (e.g.,
192.168.50.10/24).
- After installation, the system will reboot into the Proxmox web UI (
https://192.168.50.10:8006).
3. Creating the TrueNAS Scale VM
- Upload the TrueNAS ISO to the Proxmox storage pool (
local:iso). - Create a new VM (ID = 101) with the following settings:
| Setting | Value |
|---|
| OS Type | Linux 5.x – 6.x (UEFI) |
| CPU | 4 cores, host‑passthrough |
| Memory | 16 GB |
| Disk | 2 × 1 TB (SATA) – one for OS, one for ZFS pool |
| Network | VirtIO (bridge vmbr0) |
| GPU Passthrough | Add PCI device → select RTX 3060 (use vfio-pci driver) |
| USB | None (optional for console) |
- Enable UEFI Secure Boot (optional but recommended).
1
2
| # Example: Adding a PCI device for GPU passthrough
qm set 101 -hostpci0 01:00.0,pcie=1,x-vga=1
|
- Start the VM and open the console. Install TrueNAS Scale using the guided installer, selecting the second 1 TB disk for the ZFS pool (
tank).
4. Configuring ZFS on TrueNAS
After the first boot, log into the TrueNAS web UI (https://192.168.50.20).
- Create a ZFS Pool named
tank using all nine HDDs in a RAID‑Z2 configuration (two parity drives).
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| # Example ZFS pool creation via API (curl)
curl -X POST "https://192.168.50.20/api/v2.0/pool" \
-H "Authorization: Bearer $API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "tank",
"topology": {
"data": [
{"type": "DISK", "disk": "da0"},
{"type": "DISK", "disk": "da1"},
{"type": "DISK", "disk": "da2"},
{"type": "DISK", "disk": "da3"},
{"type": "DISK", "disk": "da4"},
{"type": "DISK", "disk": "da5"},
{"type": "DISK", "disk": "da6"},
{"type": "DISK", "disk": "da7"},
{"type": "DISK", "disk": "da8"}
],
"spares": [],
"cache": [],
"log": []
},
"type": "RAIDZ2"
}'
|
- Create Datasets for different services:
| Dataset | Purpose |
|---|
tank/media | Plex/Jellyfin media library |
tank/backups | VM snapshots and remote replication |
tank/docker | Bind‑mount for Docker volumes (Ollama) |
- Enable SMB & NFS shares on the appropriate datasets.
5. Deploying Ollama