Administrator
发布于 2026-04-14 / 6 阅读
0
0

PVE主力机 → 局域网备份机 自动定时异机备份方案(局域网版)

一、方案核心逻辑(贴合局域网环境)

因主力机与备份机处于同一局域网(无需 WireGuard 隧道),备份全程内网传输,速度更快、更稳定,核心不变:主力机自动备份,备份机接收存储,全程自动执行,无需手动干预。

  1. 主力机(新多盘 PVE):定时打包虚拟机、数据库、网站文件,压缩后推送至备份机;

  2. 备份机(旧单盘 PVE):只接收备份,不跑业务,专注存储,避免占用主力机资源;

  3. 触发方式:PVE 定时任务 + 脚本,全程自动,无需手动操作。


二、前期准备(必做,5 分钟搞定)

1. 确认局域网互通(关键)

主力机 IP(如 192.168.29.10)、备份机 IP(如 192.168.29.11),在两台机器分别执行 ping 命令,确保互通:

bash

运行

# 主力机ping备份机
ping 192.168.29.11 -c 3
# 备份机ping主力机
ping 192.168.29.10 -c 3

确保两者都能 ping 通,局域网无中断(若不通,检查防火墙,开放内网互通权限)。

2. 主力机免密登录备份机(核心,避免脚本输密码)

在主力机(新多盘 PVE)执行以下命令,实现免密 SSH 登录备份机:

bash

运行

# 1. 主力机生成SSH密钥(一路回车,不设密码)
ssh-keygen -t ed25519
# 2. 把密钥推送到备份机(替换备份机IP)
ssh-copy-id root@192.168.29.11
# 3. 测试免密登录(无需输密码即进入备份机,说明成功)
ssh root@192.168.29.11

3. 备份机创建专用备份目录(统一路径)

登录备份机,执行命令,创建分类目录(方便管理,避免混乱):

bash

运行

mkdir -p /backup/pve-vm  # 存放主力机虚拟机备份
mkdir -p /backup/mysql    # 存放MySQL数据库备份
mkdir -p /backup/website  # 存放网站文件备份
# 授权,避免推送失败
chmod -R 775 /backup

三、自动备份脚本(主力机执行,定时触发)

在主力机创建备份脚本,实现「虚拟机 + 数据库 + 网站文件」全备份,自动推送至备份机,脚本可直接复制使用(替换 IP 和路径即可):

bash

运行

#!/bin/bash
# 定义参数(替换成自己的IP和路径)
BACKUP_HOST="192.168.29.11"  # 备份机IP
BACKUP_DIR="/backup"          # 备份机存储目录
VM_IDS="100 101"              # 主力机上需要备份的虚拟机ID(PVE后台可查)
MYSQL_USER="root"             # MySQL用户名
MYSQL_PASS="你的MySQL密码"    # 替换成自己的MySQL密码

# 1. 备份PVE虚拟机(全量备份,可直接恢复)
for vm in $VM_IDS; do
    qm export $vm /tmp/vm-$vm-backup.tar.gz
done

# 2. 备份MySQL数据库(单独备份,双重保障)
mysqldump -u $MYSQL_USER -p$MYSQL_PASS --all-databases > /tmp/mysql-all-backup.sql

# 3. 压缩备份文件(节省空间,加快传输)
tar -zcvf /tmp/all-backup-$(date +%Y%m%d).tar.gz /tmp/vm-* /tmp/mysql-all-backup.sql

# 4. 推送备份到备份机(局域网传输,速度极快)
scp /tmp/all-backup-$(date +%Y%m%d).tar.gz root@$BACKUP_HOST:$BACKUP_DIR

# 5. 清理主力机临时备份(避免占满空间)
rm -rf /tmp/vm-* /tmp/mysql-* /tmp/all-backup-*.tar.gz

echo "备份完成!备份文件已推送至备份机:$BACKUP_HOST:$BACKUP_DIR"

给脚本授权(主力机执行)

bash

运行

chmod +x /root/pve-auto-backup.sh  # 脚本放在/root目录,方便管理

四、设置 PVE 定时任务(自动触发备份)

利用 PVE 自带的定时任务,每天自动执行备份脚本,无需手动操作:

bash

运行

# 1. 编辑定时任务配置
crontab -e
# 2. 添加一行(每天凌晨2点执行备份,避开使用高峰)
0 2 * * * /root/pve-auto-backup.sh
# 保存退出(按esc,输入:wq)

说明:每天凌晨 2 点,主力机会自动完成备份、压缩、推送,备份机接收后自动存储,全程无需干预。


五、备份机维护(简单易操作)

  1. 定期清理备份机旧备份(避免硬盘满),在备份机执行:

bash

运行

# 删除超过30天的备份文件
find /backup -name "all-backup-*.tar.gz" -mtime +30 -delete
  1. 每周检查一次备份是否成功(主力机执行):

bash

运行

ssh root@192.168.29.11 "ls /backup | grep $(date +%Y%m%d)"

若能看到当天的备份文件,说明备份正常。


六、关键注意事项(局域网专属)

  1. 确保局域网稳定,避免主力机 / 备份机断网(断网会导致备份推送失败);

  2. 备份机只做备份,不跑业务,避免占用资源影响备份稳定性;

  3. 若主力机重启,重启后定时任务会自动恢复,无需重新配置;

  4. 每月手动验证一次备份恢复(比如恢复一个虚拟机测试),确保备份可用。


七、补充:PVE 主力机 RAID1(ZFS Mirror)后期加硬盘说明

针对你提出的 “主力机做好 RAID1 后,后加硬盘是否只能两块一起加” 的疑问,结合你主力机采用的 ZFS Mirror(PVE 原生推荐),明确结论及操作逻辑如下,贴合你的多盘主力机架构:

1. 核心结论

不是必须两块一起加,分两种常用场景(均适配 PVE ZFS RAID1,无需复杂操作)。

2. 场景 1:给现有 ZFS RAID1 池扩容(单块添加即可)

若你主力机已做好 ZFS RAID1(比如 sda+sdb),后续只想加 1 块新硬盘(如 sdc),无需再找第二块,可以直接将这 1 块硬盘加入现有 RAID1 池,实现扩容且保持镜像保护。操作命令(主力机执行):

bash

运行

# 1. 清空新硬盘(以sdc为例,务必确认硬盘编号,避免误操作)
sgdisk --zap-all /dev/sdc
wipefs -a /dev/sdc
# 2. 复制现有RAID1硬盘的分区表(以sda为原有硬盘为例)
sgdisk -R /dev/sdc /dev/sda
sgdisk -G /dev/sdc  # 生成新UUID,避免冲突
# 3. 将新硬盘加入现有ZFS RAID1池(假设池名为rpool,系统默认池名)
zpool attach rpool /dev/sda3 /dev/sdc3
# 4. 查看同步进度(同步完成后,即实现扩容且保持RAID1镜像)
zpool status

3. 场景 2:新增一组独立的 ZFS RAID1(需两块一起加)

若你不想给现有 RAID1 池扩容,而是想新增一组独立的 RAID1(比如用于单独存放虚拟机镜像、备份文件),则需要两块硬盘一起添加,创建新的 ZFS Mirror 池,操作命令(主力机执行):

bash

运行

# 1. 清空两块新硬盘(以sdc、sdd为例)
sgdisk --zap-all /dev/sdc
sgdisk --zap-all /dev/sdd
wipefs -a /dev/sdc
wipefs -a /dev/sdd
# 2. 创建新的ZFS RAID1池(池名自定义,比如new-vm-pool)
zpool create -f -o ashift=12 -o compression=lz4 new-vm-pool mirror /dev/sdc /dev/sdd
# 3. 将新池添加到PVE Web界面(方便管理虚拟机存储)
# 操作:Datacenter → Storage → Add → ZFS,选择new-vm-pool即可

4. 场景 2 新增 RAID1 与原 RAID1 的操作区别

场景 2 中新增的独立 ZFS RAID1(新 RAID1),与原先已有的 ZFS RAID1(原 RAID1),在 PVE 操作中核心区别是「独立管理、存储隔离」,具体如下:

  • 创建操作区别:原 RAID1(如 rpool)通常自动关联 PVE 系统盘,无需手动添加到存储列表;新 RAID1 需手动创建池,再手动添加到 PVE 存储列表才能使用。

  • 存储与管理区别:两者是独立的 ZFS 池,存储空间互不占用,可分别设置权限、压缩模式;扩容需单独操作对应池,互不干扰。

  • 日常操作区别:备份、维护需针对对应池操作(如查看状态需区分池名),但核心操作逻辑一致,均支持图形界面和命令行。

5. 关键说明与纠正

  • 优先推荐场景 1(单块加硬盘扩容),贴合你 “后期加硬盘” 的需求,无需额外找第二块硬盘,且不影响现有 RAID1 的稳定性;

  • 纠正认知:不能在 ZFS 池里任意添加硬盘,也无法实现 “任意添加即自动组成 RAID1 扩容”。只有将新硬盘附加到现有 ZFS Mirror 的虚拟设备(vdev),才能自动加入镜像组;若新增独立 vdev,不会自动组成 RAID1。

  • ZFS Mirror 本质是 “两两镜像”,单块添加时,会自动与现有 RAID1 中的硬盘形成新的镜像关系,同步完成后形成多向镜像,始终保持 RAID1 保护;

  • 新增硬盘建议与现有硬盘同容量、同型号,避免因性能差异影响同步速度,若容量不同,镜像 vdev 可用容量以最小硬盘为准。


八、补充:所有操作的图形界面(PVE Web)实现方法

上述所有命令行操作,均可以通过 PVE Web 图形界面(浏览器访问,默认地址:https:// 主力机 IP:8006)完成,操作更直观,无需输入命令:

1. 确认局域网互通(图形界面验证)

登录主力机 PVE Web 界面,点击左侧「Datacenter」→「Nodes」→ 选中主力机节点 → 顶部「Shell」,在网页终端中执行 ping 命令,或直接访问备份机 PVE Web 界面,能正常打开即说明互通。

2. 主力机免密登录备份机(图形界面操作)

  1. 主力机 Web 界面进入「Shell」→ 右上角「齿轮」→「SSH Keys」→「Generate」,生成无密码密钥;

  2. 复制公钥,登录备份机 Web 界面,进入「Shell」→「SSH Keys」→「Add」,粘贴公钥保存;

  3. 主力机终端执行ssh root@备份机IP,无需输密码即成功。

3. 备份机创建备份目录(图形界面操作)

备份机 Web 界面进入「Shell」→「File Manager」,在根目录逐层创建backupbackup/pve-vmbackup/mysqlbackup/website目录,选中backup目录设置权限为 775。

4. 自动备份脚本相关(图形界面替代方案)

  • 虚拟机备份:主力机 Web 界面选中虚拟机 →「Backup」→「Backup Now」,选择全量、压缩,批量备份可在「Datacenter」→「Backup」→「Add」设置;

  • MySQL 备份:虚拟机内通过 phpMyAdmin 导出,或 PVE 主机终端执行 mysqldump 命令;

  • 备份推送:可通过 File Manager 手动上传,或设置备份机共享存储,主力机直接将备份存储到共享位置。

5. 定时任务设置(图形界面操作)

主力机 Web 界面「Datacenter」→「Backup」→「Add」,选择备份存储、执行时间(如每天凌晨 2 点)、需备份的虚拟机,设置全量、压缩,点击「Create」即可。

6. 备份机维护(图形界面操作)

  • 清理旧备份:备份机 File Manager 中手动删除过期文件,或在「Backup」中设置保留 30 天自动清理;

  • 检查备份:查看备份机 /backup 目录是否有当天文件,或主力机「Backup」中查看任务状态为「OK」。

7. ZFS RAID1 后期加硬盘(图形界面操作)

  • 场景 1(现有池扩容):主力机「Datacenter」→「Storage」→ 选中现有 ZFS 池 →「Edit」→「Add Disk」,选择新硬盘,等待同步完成;

  • 场景 2(新增独立池):「Datacenter」→「Storage」→「Add」→「ZFS」,设置池名、选择 Mirror 模式、勾选两块新硬盘,开启压缩,创建后添加到存储列表。


九、补充:网站服务器与显卡性能的关联说明

结合你 “做网站服务器” 的需求,明确结论:绝大多数常规网站服务器,与显卡性能完全无关,无需额外配置独立显卡:

  1. 网站服务器核心任务是处理 HTTP 请求、数据库读写、静态文件传输,完全由 CPU 和内存承担,不依赖显卡图形计算能力;

  2. 常规网站(企业官网、博客、小型电商等),CPU 集成显卡完全足够,独立显卡无法被网站服务利用,属于资源浪费;

  3. 仅当网站涉及在线图片渲染、视频转码、AI 生成内容等特殊需求时,才需要独立显卡,常规场景无需考虑;

  4. 部署网站服务器时,优先保证 CPU 多核性能(如 Ryzen 9 HX 系列)和充足内存,搭配 ZFS RAID1 保障数据安全,CPU 集成显卡即可满足所有需求。


十、补充:Ryzen 9 9955HX vs Intel i9-14900HX 适配 PVE 重载主力机对比

核心结论:Ryzen 9 9955HX 更适配你的 PVE 重载主力机(多虚拟机、网站服务器、多盘 ZFS RAID1 场景),详细对比如下:

表格

对比维度(PVE 核心需求)

Ryzen 9 9955HX

Intel i9-14900HX

适配性点评(贴合你的场景)

核心 / 线程规格(多虚拟机并发)

16 核 32 线程,L3 缓存 76MB

24 核 32 线程(8P+16E),L3 缓存 36MB

Ryzen 全大核 + 大缓存,多线程负载更稳定,无小核调度卡顿,优于 Intel 混合架构

虚拟化性能(PVE 核心)

支持 AMD-V,默认开启,零配置,兼容性极佳

支持 Intel VT-x,Linux 下需手动配置,偶发启动异常

Ryzen 虚拟化零调试,更适配 PVE 免维护需求,避免手动调试麻烦

功耗与散热(紧凑机身适配)

4nm 制程,TDP 55W,峰值 80W,风冷可压制

10nm 制程,TDP 55W,峰值 115W,需水冷,易过热降频

Ryzen 散热需求低,适配多盘紧凑机身,长期运行更稳定

多盘扩展适配(ZFS RAID1)

接口充足,原生适配多盘,ZFS 同步更快

接口较少,3 块以上硬盘需额外加扩展卡

Ryzen 无需额外投入扩展卡,降低成本和故障点,适配后期扩容

性价比(同预算性能)

市场价约 3800-4200 元

市场价约 4500-5000 元,高出 20%

Ryzen 以更低价格提供更适配 PVE 的性能,性价比更高

长期稳定性(PVE 重载需求)

与 PVE 兼容性极佳,系统更新无需重新适配

偶发系统更新后虚拟化异常,需手动调试

Ryzen 更适合长期 24 小时运行,减少后期维护成本

单核性能(特殊场景)

睿频 5.7GHz,略低 5%-8%

睿频 5.8GHz,略强


评论