基于PVE 9.1与双NAS分离架构的家庭全能服务器搭建指南
一、 设计总览与核心思想
本方案旨在利用经典的AMD A8-7650K平台(4线程,16GB内存),通过严谨的虚拟化与网络规划,构建一个集远程管理、高性能存储、媒体处理、应用服务和网络安全于一体的家庭服务器。其核心在于 “存储与计算分离” 和 “流量精细隔离” ,使老旧硬件焕发新生,每一分资源都物尽其用。(PC平台通用)
硬件清单:
- 路由器:华为AX3 pro,支持花生壳DDNS、IPV6、远程唤醒,光猫已桥接。
- 核心平台:AMD A8-7650K (4线程), 16GB DDR3内存
- 系统与缓存盘:238.47GB NVMe SSD (通过PCIe转接卡连接)
- 主存储盘:若干块SATA机械硬盘(通过主板自带6个SATA口连接)
- 显卡:NVIDIA Quadro P600 (用于硬件解码)
- 网络:单千兆以太网口
软件版本:
- 虚拟化平台:Proxmox VE 9.1
- 存储虚拟机:TrueNAS Scale 25.1
- 应用虚拟机:飞牛NAS V1.1.4
二、 拓扑结构与设计思路
本方案的网络与数据流设计是性能与安全的基础,其拓扑可概括为“一个平台,两个网络,三层角色”。
- 拓扑简述:
- 一个平台:PVE作为底层,统一管理所有硬件资源(CPU、内存、SSD、SATA控制器、显卡)。
- 两个网络:
- 外部网络 (
vmbr0):桥接物理网卡,承担PVE管理、所有对外服务(SMB、公网访问)及互联网出口。
- 内部网络 (
vmbr1):纯虚拟桥接,专用于TrueNAS与飞牛之间高速、隔离的数据传输(如NFS)。
- 三层角色:
- TrueNAS (存储层):直通全部SATA控制器,独占所有机械硬盘,提供纯粹的ZFS文件服务。通过双网卡分别对外(SMB)和对内(NFS)。
- 飞牛NAS (应用层):直通独立显卡,运行所有Docker应用(Jellyfin、下载工具等)。通过双网卡分别上网和访问内部存储。
- 雷池WAF (安全层):以Docker形式部署于飞牛内,以“旁路模式”仅防护需从公网访问的Web服务(如管理界面),内网文件流量不受影响。
- 设计亮点:
- CPU效率最大化:面对AMD A8独特的“双模块四线程”架构,为两台虚拟机均设置
CPU类型=host,绕过虚拟化开销,直接调用所有CPU指令集。
- SSD三级角色精划分:将238GB SSD精细划分为:
- 系统盘:保障PVE运行。
- SLOG:加速TrueNAS的同步写入(NFS/SMB),大幅降低延迟。
- 应用与下载缓存:为飞牛的Docker和下载提供高速工作区,避免读写机械硬盘。
- 性能与安全平衡:仅对外映射雷霆防火墙端口,公网流量经WAF清洗,内网存储流量直接、纯净,兼顾安全与极致的内网传输性能。
三、 分步建设时间轴
第一阶段:硬件准备与PVE基础安装 (第1小时)
- BIOS设置:开机进入BIOS,启用
AMD-V/SVM(虚拟化)和 IOMMU(用于硬件直通)功能。
- 安装PVE 9.1:
- 制作启动盘,从NVMe SSD启动安装。
- 配置主机名、管理IP(如
192.168.1.10)。
- 【关键步骤】自定义分区:选择“自定义”并点击“Options”,设置
maxvz=0。按以下方案分区:
| 分区用途 |
大小 |
文件系统 |
说明 |
| EFI系统分区 |
512MB |
FAT32 |
启动引导 |
| PVE系统根分区 |
40GB |
ext4 |
(local存储) |
| TrueNAS SLOG预留 |
8GB |
不格式化 |
后续作为ZFS日志设备 |
| PVE虚拟机存储 |
52GB |
LVM-Thin |
(local-lvm,存放虚拟机系统盘) |
| 飞牛应用空间预留 |
剩余(~138GB) |
不格式化 |
后续作为虚拟硬盘挂载给飞牛 |
第二阶段:构建存储核心 - TrueNAS Scale (第2-3小时)
- 创建虚拟机:
- VM ID: 100, 名称:
TrueNAS-Scale。
- 系统:机器
q35, BIOS OVMF (UEFI), 添加EFI磁盘。
- CPU:3核心, 类型
host。
- 内存:10240MB, 禁用 Ballooning设备。
- 网络:添加两块网卡,分别桥接
vmbr0 和 vmbr1,模型 VirtIO。
- 配置硬件:
- 系统盘:添加一个32GB的虚拟磁盘(总线SATA),存储在
local-lvm。
- 直通SATA控制器:添加PCI设备,选择主板的SATA控制器,勾选“所有功能”和“PCI-Express”。
- 安装与配置:
- 挂载TrueNAS 25.1 ISO,安装系统到32GB虚拟盘。
- 配置网络:
vmbr0网卡:192.168.1.20/24 (对外/管理)
vmbr1网卡:10.10.10.2/24,不设网关 (对内/NFS)
- 创建存储池:使用直通的机械硬盘创建ZFS池(如
tank)。
- 添加SLOG:在池的“扩展”选项中,添加预留的8GB SSD分区作为“日志设备”。
- 创建数据集(如
media)并开启 NFS共享,授权网络为 10.10.10.0/24。
第三阶段:构建应用核心 - 飞牛NAS (第4-5小时)
- 创建虚拟机:
- VM ID: 101, 名称:
FeiNiu-NAS。
- 系统:
q35, OVMF (UEFI)。
- CPU:1核心,类型
host。
- 内存:4096MB。
- 【核心】网络:添加两块网卡,分别桥接
vmbr1 和 vmbr0,模型 VirtIO。
- 直通显卡:添加PCI设备,选择NVIDIA P600显卡(通常有两个设备,均需直通),勾选“所有功能”。
- 配置硬盘:
- 系统盘:24GB虚拟磁盘,存储在
local-lvm。
- 应用数据盘:添加一个138GB的虚拟磁盘,存储在
local-lvm。
- 安装与系统内配置:
- 安装飞牛NAS V1.1.4到24GB系统盘。
- 配置网络:
- 连接
vmbr0的网卡:设为家庭网IP(如 192.168.1.30),设置网关和DNS。
- 连接
vmbr1的网卡:设为 10.10.10.3/24,绝不设置默认网关。
- 进入飞牛系统,将138GB数据盘格式化为 EXT4,挂载至如
/mnt/appdata。
- 【必须】迁移Docker目录:在飞牛Docker设置中,将数据目录修改为
/mnt/appdata/docker。
- 挂载NFS存储:挂载TrueNAS的共享
10.10.10.2:/mnt/tank/media 到如 /mnt/truenas_media。
第四阶段:部署应用与安全加固 (第6小时及以后)
- 在飞牛中部署应用:
- 影视:添加媒体库指向
/mnt/truenas_media,在播放设置中开启硬件解码,选择 NVENC。
- 下载工具:设置临时下载目录为
/mnt/appdata/downloads,完成目录指向NFS共享。
- 部署雷池WAF:
- 在飞牛Docker中部署雷池社区版,映射端口:
9443(管理)、9444(防护)。
- 路由器设置(旁路模式核心):将需要公网访问的服务(如Jellyfin的8096端口)的公网端口(如
38201),转发到 192.168.1.30:9444。
- 在雷池管理界面添加站点,监听端口
9444,上游服务器填写内网地址(如 http://192.168.1.30:8096)。
- 设置启动顺序:
- 在PVE中设置TrueNAS(ID 100)优先启动(顺序1)。
- 设置飞牛NAS(ID 101)延迟90秒启动(顺序2),等待存储服务就绪。
四、 最终验证清单
- 网络连通性:从飞牛
ping 通 10.10.10.2 和 192.168.1.20。
- 存储访问:在飞牛中可读写
/mnt/truenas_media 目录。
- 应用功能:Jellyfin能扫描并播放NFS中的4K影片,GPU解码正常工作。
- 外网安全访问:通过路由器映射的新端口(如
38201)能经雷池访问到Jellyfin。
至此,一个架构清晰、性能均衡、安全可控的家庭全能服务器即搭建完成。此方案充分证明了,通过合理的设计,经典硬件依然能提供卓越的现代服务体验。