家庭服务器搭建及配置指南 (4) -- 服务架构
家庭服务器搭建及配置指南 (4) – 服务架构
2022年8月13日
摘要
设计整个服务架构,一定要从需求开始分析。由于每个人搭建服务器的需求是截然不同的,实在是无法设计出一个万能的架构以供所有人使用。在本章节,我将只对自己搭建服务器过程中进行过的需求分析,设计思路以及实现方式进行一个大致介绍,以供参考,希望能让你产生一些灵感。
需求分析
- 需要一个软路由进行拨号并进行某种高级网络访问,同时,还需将来自公网的访问请求转发至不同虚拟机的不同端口。软路由需要直通访问网卡以达到最高效率。
- 需要一个 NAS 来当个人网盘且存放其他服务所需要的大体积持久化数据,如数据集。我选择使用一张 PCIe 接口的 SATA 扩展卡从而使 OpenMediaVault 直通访问硬盘以提升效率。
- 需要一个独立的 Linux 系统运行我自己的服务器脚本和程序,同时,运行多个 Docker 容器以承载 Halo 博客,Lychee 图床,Portainer,NetData 监视器等服务。此系统只提供服务环境,所有应用数据全部储存在通过 SMB 挂载的 NAS 中。
- 需要一个运行最简单的 Windows 的系统以进行 Firefox 和 Safari 之间的书签实时同步。
资源分配
根据以上需求,我使用了一颗 Intel E3-1230 v2 的 4 核 8 线程 CPU, 2 根 DDR3 8GB 共 16GB 内存,以及一块 128GB 的 SATA 固态硬盘作为系统盘,资源分配如下:
用途 | CPU 核心分配 | 分配内存(GB) | 分配固态 (GB) |
---|---|---|---|
VMware vSphere Hypervisor (虚拟化系统) | / | / | 20 |
OpenWrt(软路由) | 3 | 2 | 16 |
OpenMediaVault(NAS) | 1 | 2 | 16 |
OpenSUSE(Docker 及各种服务) | 3 | 4 | 32 |
Windows 10(书签同步服务) | 1 | 2 | 20 |
合计 | 8 | 10 | 104 |
另外还使用了一块 3TB 的老机器上淘汰下来的机械硬盘直通 NAS 作为仓库盘。
网络栈设计
-
主板自带的以太网网口在我的服务器中只作为 VMware vSphere Hypervisor 的备用管理端口使用,当运气不好软路由挂掉时,将无法通过 LAN 访问到 VMware vSphere Hypervisor 后台,因此留了一个灾备冗余接口。
-
OpenWrt 软路由通过 VMware vSphere Hypervisor 的 PCIe 直通直接连接一张双口千兆网卡,一个作为软路由的 WAN 和光猫连接并拨号,一个作为软路由的 LAN 和后级的 Wi-Fi 路由器连接。
-
OpenMediaVault(NAS),OpenSUSE(Docker 及各种服务),Windows 10(书签同步服务)以及 VMware vSphere Hypervisor 的后台管理系统全部通过 VMware vSphere Hypervisor 的虚拟网卡和虚拟交换机和 OpenWrt(软路由)相连接。并不用把虚拟网卡和虚拟交换机想的那么复杂,想象成一根虚拟网线就好。
少废话,一图胜千言,直接看图:
内部数据共享方案
这部分很简单,软路由,VMware,以及 Windows 都不需要访问 NAS 中的内容。因此,我在 NAS 中新建了一个用户,创建了对应的共享文件夹,并通过 SMB 共享,随后,在 OpenSUSE 中将其挂载为本地目录即可使用。如需帮助,可查看我的相关教程。
总结
在这个部分我无法提出任何建议,各位参照我的思路设计出一套适合自己的服务架构。