SatyrLee
文章90
标签26
分类11

一言

文章归档

【All in Boom】第 2 期:服务部署

【All in Boom】第 2 期:服务部署

封面图 ID:93615741

目录:

  1. 第 0 期:为什么要搭建 AIO 及硬件环境介绍
  2. 第 1 期:基础网络搭建
  3. 第 1.5 期:反向代理及内网 HTTPS 构建

0x00 总体介绍

根据第 1 和第 1.5 期的介绍,我们已经大概建立起一个基本的框架,这已经足够上网了。但是在一个成熟的 All in Boom 系统中,还需要有一些服务,如一个可供测试的 Linux 系统、 安全沙箱、基于 NAS 系统的 HTPC 服务,和相应的反向代理以提高可用性质。

0x00 系统选择及部署

首先介绍第一层虚拟系统,这是与 PVE 直接交互的虚拟系统,可以使用快照等功能进行快速回档。在此之上可以进行 Docker 等扩展。

0x01.1 测试 Linux 系统

出于对 Linux 学习的需要,这个 VM 系统最开始使用了 Debian,中途甚至成为 HTPC 的基准系统。后来转换为 Kali Linux 以用于学习信息安全知识,现在这个系统并不经常开机,仅在需要进行固件编译的过程中开启。

0x01.2 安全沙箱

这个 VM 系统采用了精简版 Windows 10 系统,主要用于放置 QQ、微信等工作软件,以用于避免微信在内网多个机器拉屎的问题;此外,这个系统也承担着测试危险软件的任务,以防止对网络其他主机的危害。这个虚拟机是日常自动开启的。

0x01.3 NAS 系统

将服务器转换为 HTPC,同时负担内网备份等工作,因此需要较为成熟的 NAS 系统。考虑到 NAS 系统中,群晖在这一方面足够满足需求:Docker 管理、文件管理及分享、文件同步、Time Machine 备份。且市面上有较为成熟的黑群晖方案,最终选择群晖系统,同样,这个系统也是需要自动开启的。

由于部署方法略有不同,因此在这里记录一下过程:

  1. PVE 创建 VM,并设置硬盘和显卡直通,教程可以参考第一期。同时分配足够大的内存(本人使用 6G)和 CPU 核心数
  2. 获取 RR 镜像后作为 CD-ROM 挂载到 VM 上,进行相应设置,重点开启 NVMe 硬盘支持,同时按照需要开启扩展
  3. 进入群晖安装界面,选择安装位置,本人在这里选择的是一个独立虚拟磁盘

0x02 NAS 系统内调整

14T 硬盘创建一个简单存储池,不设置 RAID,并使用 Btrfs 文件系统。对于重点共享文件夹开启回收站功能以防止误删。同时将之前部署的傲腾 NVMe 硬盘作为只读缓存,以求加速硬盘。

0x02.1 群晖系统设置

为了方便部署,临时打开 SSH 服务以便于接下来的维护。同时设置若干个权限受限的用户以处理文件共享等问题,将其分配至不同共享文件夹。

接下来会进行一系列破解及注入操作,主要是为了使用群晖的高级功能:

  1. HEVC 破解,参考 黑群晖激活 Advanced Media Extensions(AME)解码 HEVC 视频和 HEIC 图片
  2. Synology Acitve Backup 破解,参考 黑群晖激活 Active Backup 和 Synology Drive 高级功能
  3. 显卡设置,参考 Synology 群晖 Nvidia vGPU/GPU 实践指南

0x02.2 Docker 镜像、第三方套件及设置

根据需要,本人在其中部署了若干服务,有些使用了 Docker-Compose 来便于管理(DC-*)、有的使用套件简化安装过程(PKG-*)。部署的时候尽量保持各个应用间的独立性:

  • DC-immich:照片备份及管理,同时部署了 immich-machine-learning 以启用 AI 识别功能
  • DC-Jellyfin:影片、番剧的下载整理及内网串流
  • PKG-Gitea:Git 代码托管,同时部署了 Gitea Runners,以实现 CI/CD
  • DC-Calibre:电子书管理
  • PKG-Alist:文件分享

其中,JellyfinimmichDocker-Compose.yaml 使用了 runtime: nvidia 字段以启用 GPU 加速

最后根据各种服务,设置反向代理以采用域名访问,这一教程已经在上一篇博客中有所介绍。

0x02.3 文件服务设置

根据测试及使用,个人认为较为实用的服务有:SMBSyno DriveFTPWebDAVSMBSyno Drive 主要用于文件共享;FTP 的作用为索尼相机局域网同步(没错,我没钱买读卡器。);WebDAV 是为在本地测试本博客使用。

而作为额外部署,Cloud Sync 的作用是将关键文件及时同步至 OneDrive 中,以达到 3-2-1 备份的效果。针对这种关键的文件,部署的思路为:在本地选择文件夹与 Syno Drive 进行同步,然后使用 Cloud Sync 同步指定的文件夹至 OneDrive,这样即可实现。

0x03 遇到的一些问题

  1. Synology Photos 目前鼓励在本地生成缩略图,会占用本地资源,但是目前依旧可以关闭 Synology Image Assistance 服务来实现。
  2. SSH 仅限管理组可用,因此不能使用 rsync 等方法进行文件同步,在部署实现博客测试时遇到了很多问题(另一个坑)。
  3. 黑群晖强烈不推荐使用自动更新,需要等待破解镜像的更新。同时,Qucik Connect 这种服务就不要想了。

参考

  1. 从零开始的 all in one 之 pve 安装黑群晖
  2. 黑群晖方案
  3. 黑群晖激活 Advanced Media Extensions(AME)解码 HEVC 视频和 HEIC 图片
  4. 黑群晖激活 Active Backup 和 Synology Drive 高级功能
  5. Synology 群晖 Nvidia vGPU/GPU 实践指南

本文作者:SatyrLee
本文链接:http://www.naive514.top/posts/54e7757c/
版权声明:本文采用 CC BY-NC-SA 4.0 CN 协议进行许可