配置Veeam作为Homelab备份服务器

会定息日,吾与数友方乐游。忽有急书自糟糠之NAS来,盖其间空余殆尽而备份之事未完,遂辞友察之。

糟糠之NAS者,四槽之旧机也。以群晖善备份之能不见弃,行杂役于Homelab中。会去岁SSD价廉,Homelab中PC无不置之者。故空余之短愈甚,而槽位不加增。邻NAS愿以RAID Z2假之,然其非Btrfs不从也。

Veeam乃余偶得于红迪,其Agent具VSS+CBT之术,与群晖ABB相类。虽有专于广告之嫌,犹善备份之事,遂从之。

契机

TLDR:老黑群备份盘满了;虽然四槽JBOD全用来备份也不是不能用,但是我选择直接干掉它。

本来打算削一个只负责备份的人棍型黑裙丢宿主里,然后发现群晖的Active Backup for Business(下称ABB)完全不打算支持备份到其他存储这件事。这对白群晖用户来说非常合理,毕竟家里没比它更能存的了;可是却是不是很符合我的需求,我这是真的有比它更能存的。如果把更能存的挂载到宿主,再用宿主提供虚拟磁盘给群晖又有点太丑陋了,所以需要寻找一个新的替代方案。

核心需求:

  • Windows Agent必须使用快照+更改检测方式进行增量备份
  • 允许将备份数据存储到CIFS/NFS文件系统
  • 用户界面最好拟人一些,让普通人也会用

在r/homelab搜了一圈,看到挺多人提到Veeam,查了一下文档,它的Veeam Backup and Replication(下称VBR)基本符合需求,那就它了。

其实这玩意只能开Windows虚拟机装exe的安装方式实在是……太商业了。但是没找到其他替代品,那只能忍一下了。

安装流水账

虽然流水账,但是不写就没多少能写的了。大伙凑合着看吧。

新的虚拟机

Veeam这厮的安装环境要求很简单:Windows。没有linux兼容、没有容器、甚至没有开箱即用独立系统镜像。你的安装方式疑似有点太城市化了……

所以说这一节是在PVE装个Windows Server 2022。

准备好源自MAS的iso[1]、源自MVS dump的镜像哈希、源自fedorapeople.org的Windows VirtIO驱动,开工。

配置方面,可以用Veeam Calculators算一下。对于一般人,毫无新意的4c8g应当是够的。先分这么多,以后不够用了重启一下就好。存储和网络一定要VirtIO,别的随便配配吧。

安装流程直接参考Windows_2022_guest_best_practices,激活走MAS-KMS38方案。顺带干掉密码强度和有效期,启用自动登录,配置自动更新,再给管理员和机子改个名。

办假证的(可选)

Veeam Backup Enterprise Manager(下称VBEM)是VBR的一个可选组件,主要功能是提供Web管理界面。(默认只能使用VBR console应用连接备份服务器)

如果希望安装VBEM,就需要申请一份真实的试用证书。这是因为VBEM在安装时就需要验证证书有效性,而并没有破解者给出破解安装程序的方案,所以必须使用真实证书来安装VBEM。至于方法嘛……官网试用申请临时邮箱,申请试用然后注册完,就可以在管理面板下载到有效期一个月的试用证书。

另外从Products页面也可以下载到最新的软件本体,来都来了,顺道下了了事。截至本文撰文时,VBR最新版本是12.1.2.172_20240515

主角入场

这里下载破解文件。如果没有去办假证,那也可以从这里找到软件本体下载地址。

  • 首先安装VBR,安装时证书栏留空,剩下一路默认即可。如果希望安装VBEM,在VBR安装完成后再启动一次安装即可。
  • 待VBEM安装完成后访问https://SERVER_IP:9443,按照官方教程添加VBR实例。
 为什么要马上连接VBR?
错误的操作可能会导致VBEM登录时提示License is not installed or corrupted的提示,然而更新VBEM证书需要登录后进行。根据官方论坛民间教程,此时仅能通过被管理的VBR实例反向更新VBEM许可证。
因此,不及时连接VBR可能会陷入不得不使用真实证书重装VBEM的境地。
  • 装完之后开命令行,powershell运行Get-Service -DisplayName Veeam* | Stop-Service停止相关服务。部分服务有依赖关系,需要多次运行直到没有报错。
  • 复制破解中同名文件覆盖C:\Program Files\Common Files\Veeam\VeeamLicense.dll
  • Get-Service -DisplayName Veeam* | Start-Service恢复服务。
  • 安装破解证书:
    • 若安装了VBEM,则web管理界面右上角配置-许可安装证书。安装会提示推送证书到备份服务器,确认;自动更新证书对话框选则不自动更新。
    • 若仅安装VBR,则打开VBR Console,连接到服务。左上角菜单选择license,安装破解中.lic文件,取消掉下方的自动更新。
 关于更新
如果需要更新VBR&VBEM版本,则需要:
1. 禁用服务
2. 恢复原版VeeamLicense.dll
3. regedit备份并删除HKEY_LOCAL_MACHINE\SOFTWARE\Veeam\Veeam Backup and Replication\license项目
4. 安装更新
直接在破解版安装会因校验失败拒绝更新,因此首先移除破解,待更新完成后再恢复破解即可。

配置

VBEM虽然有Web界面,但其主要用于状态统计及恢复管理。想配置细节还得使用VBR Console。建议配置前在常用PC上安装VBR Console,然后替换VeeamLicense.dll没想到吧,console也会验证证书

配置备份存储库

首先创建一个备份用数据集,这里博主使用的是Truenas Scale。此处可以选择交给VBR压缩或者由存储压缩,这里我选择由VBR压缩,因此需要关闭数据集的压缩配置。同时为备份服务器创建一个专用的账户,配置nologin并生成随机密码。随后为备份数据集去除非必要的权限,仅保留管理组及备份账户。

在配置好存储端之后,按照添加SMB(CIFS)存储库在VBR添加一个新的备份存储库。如果选择由存储压缩,则需要注意开启发送数据前解压缩选项。其他选项大部分默认即可。

安装备份代理

  • 在Physical Infrastructure下新建一个保护组,类型选择预装agent。
  • 在方便的地方生成自己需要的Agent安装包,并发送到希望备份的设备上。此处以一台Windows电脑为例。
  • 安装包中重要的内容包括:
    • GROUP_NAME.xml:配置文件,记录了Agent应当如何连接到VBR并加入保护组
    • Veeam_B&R_Endpoint_x64.msi:Agent安装包
    • NDP452 - xxx.exe:Agent依赖的.NET框架,如果没装过就装一下
    • Universal C Runtime:另一个依赖,Windows 8以下才需要
  • 打开一个管理员powershell
    • 运行.msi安装程序,一路默认即可。
    • & "C:\Program Files\Veeam\Endpoint Backup\Veeam.Agent.Configurator.exe" -setVBRsettings /p:"path/to/your.xml",加载VBR保护组配置

此时应当可以在保护组看到Agent信息已经同步,该为它创建一个备份配置了。需要注意的是:手动安装的Agent将更多的主导权交给了被保护的计算机而非VBR,例如无法接受远程下发的备份任务但可以本地发起或修改任务。

 关于可选的CBT驱动
一般来说,常规电脑并不需要安装专门的CBT驱动,细节请参考此文档
 对自动配置的失败尝试
按照默认的备份任务配置,理论来说只需在配置时添加受保护PC的管理员登录凭据,VBR会使用凭据自动安装Agent、配置并连接,无需在被保护机器上手动操作。
但实际上试图debug这个流程浪费了我生命中宝贵的八个小时。其中或许有用的步骤包括:
– 关掉各类杀毒软件,远程安装一个可以获取全盘信息的软件非常可疑
– 验证默认共享是否启用(我曾经使用dism++关掉了它)
– 设置LocalAccountTokenFilterPolicy,禁用远程UAC
– 尝试使用内置管理员Administrator,而不是普通的本地管理员
– 辱骂微软的权限管理体系以及将其设为默认配置方式的Veeam工程师
从结果来看,我在一台电脑上莫名其妙成功了一半,却又无法在另一台上复现。——这通常比完全无法成功更加恐怖
考虑到这种配置方式需要能使用凭据持续且稳定的连接,我选择手动安装Agent。如果想试试的可以参考此文档此文档

创建备份配置

在Veeam的备份配置分为代理备份任务代理备份策略两类。前者由VBR主动向Agent拉取备份,通常用于永远在线的服务器;后者会将配置下发到Agent,由Agent发送备份到目标,适用于一般个人设备。官方解释见此处

本节将为一台PC创建备份到VBR存储库的备份策略,配置流程可参考创建备份策略。我在默认配置基础上修改了以下设置:

  • job type选择Server,mode选择Managed by agent
  • 备份模式选择整机,目标选择Veeam backup repository,然后填写可以从PC访问到备份服务器的IP
  • 在存储界面配置目标存储库,并且选择保留机制。这里我选了7备份点、2周、6月、2年。
  • 高级选项:启用合成完整备份,开启健康检查,21天无备份警告
  • 备份缓存128G,用于在Agent连接不到VBR的时候暂存备份
  • 禁用app感知,这个功能主要用于保证sql之类的应用在备份快照时的状态一致性,没有数据库就用不到
  • 启用文件索引,有索引就可以通过web界面直接搜索
  • 配置自动备份时间和重试次数

配置好之后,应当能在PC的Agent控制面板看到新的备份任务,同时About中也应能看到Server Edition的授权。Agent默认6小时与VBR同步一次;如果本地没有更新,可以运行& "C:\Program Files\Veeam\Endpoint Backup\Veeam.Agent.Configurator.exe" -syncnow手动同步。

后记

只有真正痛苦过才发觉群晖的ABB确实很友好

就VBR这个资源占用(4c8g服务器)、配置耗时(大概两天半)和复杂度(堪称未解之谜的Agent自动安装),看起来适用场景只能是中型以上、有复杂备份需求、有ActiveDirectory专家的公司。

相比起来,ABB装个应用、填一下NAS地址,再配一下保留策略,耗时也就十分钟,这完全不是一个量级。有些想原谅群晖的价格了。

VBR自由度真的很高,功能也很全。但这一切值得吗?

参考

  1. ^MSDN itellyou烂完了,bt下完了还得传到宿主,终于找到个新来源
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇