PVE搭建All-In-One服务器方案分享

硬件环境

CPU:J4125
内存:8GB(4+4)DDR4 2400MHz
硬盘:SSD 64G(mSATA)+ 500GB(HDD)+ 1TB(HDD)
网卡:i226-V(2.5G) x 4
网络:无公网IPV4/IPV6

网络以及设备

iKuai路由器也在PVE中,IP:192.168.10.1

border

安装的虚拟机

虚拟机环境 Proxmox VE 8.2.2
包含4台虚拟机和2台lxc容器,lxc容器更加轻量,但是功能稍弱。

vms

  • nginx:主要做内网域名的反向代理
  • docker:目前只运行alist,方便使用DSM进行云端备份,单独部署是防止挂了影响备份
  • ikuai:主路由,做设备管理(所有网卡都直通给iKuai管理)
  • openwrt:旁路由,frp内网穿透,海外加速,DNS解析等
  • dsm:群晖 7.2.2系统,文件存储同步,照片,备份等
  • fnos:飞牛NAS,主要做影视仓库,视频下载等

iKuai主路由

下载地址: https://www.ikuai8.com/component/download
对于家庭使用,32位系统即可,注意安装的时候32位系统最低内存要求是1GB,可以先分配1GB内存,安装完成之后再修改为512MB。

ikuai

net0是pve的管理的虚拟网卡(也和一个物理网口绑定的),和其他虚拟机进行桥接,。
进到iKuai,net0默认是LAN口,后续和直通的两张网卡进行链路桥接。
后面的三个PCI是直通进去的三个2.5G网卡,其中一个作为WAN口,剩余的两个作为LAN口进行桥接即可。

WAN口设置(外网)

使用DHCP方式通过光猫获取IP地址(如果光猫是桥接的,需要使用PPPOE拨号方式连接);
这里的eth1作为了WAN口使用,详细的配置可以查看iKuai官网

border

LAN口设置(内网)

除了WAN,其他都使用链路桥接方式作为LAN口,这样所有的LAN口连接的设备就在同一个网段了。
也可以设置多个LAN口使用不同的网段,我这里是桥接为一个LAN口的。

border

桥接之后,三个网口连接都是同一网段,并且都可以正常连接互联网。

注意

至于iKuai不会发射无线网络,我在LAN口上连接了一个无线路由器,无线路由器选择桥接模式。

DNS设置

我首选DNS使用的是Openwrt下面的AdGuardHome,备选的阿里云DNS(解析速度基本在毫秒级别);
因为ipv6支持不太好,所以我禁用了ipv6的解析。

border

Openwrt旁路由

安装的服务:

  • openclash:海外网站加速访问,这里是安装文档
  • AdGuardHome:DNS加速,拦截广告等;上游DNS也使用的是阿里云的DNS,这里是官方文档
  • frpc:内网穿透,服务器使用的是腾讯云轻应用服务器,这里是官方文档

群晖NAS

主要存储照片、常用文件、热数据(这里的热数据是经常访问的数据,在其他设备也有备份)等;
硬件部分:分配4G内存、4核CPU、映射500GB硬盘(做照片和常用数据存储暂时够用了)。

Docker容器

dsm

  • wordpress:个人博客,使用内网穿透映射到外网
  • frpc:备用,防止openwrt挂掉后链接
  • gitea:github镜像仓库或者自己的自由仓库存储
  • aria2:离线下载工具,主要下载alist上的资源
  • xiaoya:主要作为TVBox的源使用,上面的资源也可以发给aria2下载
  • jellyfin:影音服务器,主要看电视电影;因为电视端不支持客户端解码,所以删除了
  • qbittorrent:种子下载器,主要下载电影等;已经迁移到飞牛NAS上了
  • mediago:下载流媒体,m3u8视频可以直接下载并生成mp4文件;暂时没有需求,后续可以在飞牛NAS上部署一个

安装的套件

就安装了基本的几个套件,但是整体使用还是很丝滑的。

dsm

功能说明:

  • 文本编辑器:主要修改文本文件,docker配置等
  • Hyper Backup:备份群晖数据(支持加密,加密后文件结构都是看不到的),我只备份重要文件,支持备份历史
  • Container Manager:原来的Docker,套件不能满足的都可以使用Docker部署
  • Synology Drive:私有外盘,安装后可以通过电脑、手机客户端进行文件同步和访问
  • Synology Photos:照片管理软件,可以创建共享相册和私人相册,共享的照片每个人都可以查看,私人照片只有自己账号和管理员可以查看。支持人脸识别、场景识别等。
  • Cloud Sync:云同步,可以将本地的更改实时的同步到云端,不支持历史
  • Audio Station:音乐播放器,可以将本地下载好的音乐导入

备份方案

Alist可以挂载各种云盘,例如百度云盘、阿里云盘、123云盘、微云等。
有些重要的数据一定要做好备份,因为我这里是单盘,所以备份尤其重要。

border

注意事项

Cloud Sync 支持加密备份,虽然文件名是没有加密,但是内容是加密的,例如word文件加密的下载下来也是无法打开的,需要使用Cloud Sync先加密下载到文件夹中才可以正常打开。

飞牛NAS

官网: https://fnnas.com/
有问题可以去论坛: https://club.fnnas.com/

主要做影视使用,对比其他的服务,最终还是选择了飞牛NAS:

  • Emby是客户端是收费的(开心版在TV上不是很好用
  • Jellyfin 在TV端不能使用客户端解码,因为J4125的性能还是比较差,也没有做显卡直通,所以打开视频的时候会很慢并且CPU飙升;

飞牛的影视还是做的可以的,TV端播放支持客户端解码很流畅,还支持字幕的下载和切换,刮削错误的视频还可以手动刮削;

目前官方只有:影视、相册、虚拟机,其实也足够了,因为有Docker的加持,可以自己部署一些应用。
测试了一下飞牛和黑群晖,飞牛的启动速度还是很快的。我分配了2GB运行内存,只安装影视勉强够用了。

fnos

我已经将1TB的硬盘直通给了飞牛,至于黑群晖,就存储照片这些,其他做一些加密备份到云端。

个人使用经验

  • 目前应用中心的 qbittorrent 不是很好用,所以我后面换成了docker部署的
  • 应用中心的迅雷下载种子的时候有时候不如 qbittorrent 好用

PVE硬盘直通

磁盘在PVE上有两种使用方式:

1、PVE在硬盘上创建存储,然后将存储分配给虚拟机使用
2、直通给某台虚拟机管理

第1种方案有一个缺陷,那就是这个硬盘只能在PVE上使用,拔掉没有办法在其他机器使用,要是系统崩溃了,也不好恢复。

第2种直通的方案就是将整块硬盘分配给某一台虚拟机使用,其他虚拟机就无法使用这块硬盘了,但是有一个好处就是,如果这个虚拟机挂掉了,那我们只需要重装虚拟机再把磁盘挂上去就可以了,甚至可以挂在另外一台PVE上的某个虚拟机,迁移性要好一些。

所以我们说说直通的方案:

其实不算是直通(直通的话应该是整个SATA控制器,由于我的机器只有一个SATA控制器,所以不能直通),算是映射PVE磁盘到虚拟机,参考文档

ls -l /dev/disk/by-id/ # 查看所有的硬盘

# qm set <vm_id> –<disk_type>[n] /dev/disk/by-id/<type>-$brand-$model_$serial_number
# 例如:
qm set 102 --sata2 /dev/disk/by-id/usb-Kingston_DataTraveler_3.0_E0D55EA493B9F430E89A0686-0:0
qm set 102 --sata2 /dev/disk/by-id/ata-ST4000VX000-2AG166_ZGY163KG

外网访问虚拟机

飞牛NAS是可以通过官方的Connect服务直接访问的,就是速度有些慢,但是做管理NAS足矣。

腾讯云轻量服务器内网穿透,这台服务器只做内网穿透和反向代理,因为性能比较弱,所以上面没有部署什么服务。

虽然我使用的内网穿透的方案,但是不建议将太多的服务暴露在公网来增加被攻击的风险。我目前的方案是,只将Openwrt的SSH端口映射到公网,并且关闭密码登录,仅支持公钥登录。其他所有的服务,例如群晖同步插件的端口都是通过SSH本地端口转发来实现通信的,具体转发教程可以查看ruanyifeng老师的教程

参考资料

留下回复