Bareos (备份、存档、恢复开源) 是一款分布式开源备份解决方案(根据 AGPLv3 许可),可以保存、存档和恢复来自所有主流操作系统的数据。
Bareos 自 2010 年以来就已存在,并且(主要)由位于德国科隆的 Bareos GmbH & Co. KG 公司开发。该供应商不仅以开源软件的形式提供进一步的开发,还提供订阅、专业支持、开发和咨询。本文介绍了 Bareos、其服务和基本备份概念。它还介绍了在哪里可以获得预构建的软件包以及如何加入 Bareos 社区。
模块化设计
Bareos 由多项服务和应用程序组成,这些服务和应用程序通过网络安全地通信:Bareos Director (Dir)、一个或多个存储守护进程 (SD) 以及安装在要备份的客户端计算机上的文件守护进程 (FD)。这种模块化设计使 Bareos 具有灵活性和可扩展性——您可以自行决定是将所有组件安装在一个系统上还是几百台计算机上,甚至在不同的位置。客户端-服务器软件将备份存储在各种物理和虚拟存储(HDD/SSD/SDS)、磁带库和云中。Bareos 包括多个插件,以支持虚拟基础设施、应用程序服务器(如数据库,例如 PostgreSQL、MySQL、MSSQL、MariaDB 等)和 LDAP 目录服务。
以下是 Bareos 组件、它们的功能以及它们如何协同工作

(Heike Jurzik, CC BY-SA 4.0)
Bareos Director
这是 Bareos 的核心组件和控制中心,它管理数据库(即目录)、客户端、文件集(定义备份中的数据)、插件配置、备份作业和计划、存储和介质池、作业前和作业后(在备份/还原作业之前或之后执行的程序)等等。
目录
数据库维护所有备份作业、已保存文件和备份卷的记录。Bareos 使用 PostgreSQL 作为数据库后端。
文件守护进程
文件守护进程 (FD) 在每台客户端计算机或虚拟层上运行,以处理备份和还原操作。在文件守护进程收到 Director 的指令后,它会执行这些指令,然后将数据传输到(或从)存储守护进程。Bareos 为各种操作系统提供客户端软件包,包括 Windows、Linux、macOS、FreeBSD、Solaris 和其他基于 Unix 的系统(应要求提供)。
存储守护进程
存储守护进程 (SD) 从一个或多个 FD 接收数据,并将数据存储在配置的备份介质上。SD 在处理备份设备的计算机上运行。Bareos 支持备份介质,如硬盘和闪存阵列、磁带和磁带库以及 S3 兼容的云解决方案。如果涉及到介质更换器,SD 也会控制该设备。在还原过程中,SD 会将正确的数据发送回请求的文件守护进程。为了提高灵活性、可用性和性能,可以有多个 SD,例如,每个位置一个。
作业和计划
Bareos 中的备份作业描述了要备份的内容(在客户端上的所谓 FileSet 指令中)、何时备份(Schedule 指令)以及将数据备份到何处(Pool 指令)。这种模块化设计使您可以定义多个作业并组合多个指令,例如 FileSets、Pools 和 Schedules。Bareos 允许您拥有两个不同的作业资源来管理各种服务器,但使用相同的 Schedule 和 FileSet,甚至可能是相同的 Pool。
计划不仅设置备份类型(完全备份、增量备份或差异备份),还描述了作业应该何时运行,即在一周或一个月中的不同日子。因此,您可以计划详细的计划,并在每周一运行完全备份,在本周的剩余时间运行增量备份等等。如果多个备份作业使用相同的计划,您可以设置作业优先级,从而告诉 Bareos 哪个作业应该首先运行。
加密通信
如前所述,所有 Bareos 服务和应用程序都通过网络相互通信。Bareos 提供带有预共享密钥或证书的 TLS/SSL,以确保加密数据传输。最重要的是,Bareos 可以在文件守护进程上加密和签名数据,然后再将备份发送到存储守护进程。客户端上的加密和签名是使用 RSA 私钥与 X.509 证书(公钥基础设施)结合实现的。在还原过程之前,Bareos 会验证文件签名并报告任何不匹配项。Director 和 Storage Daemon 都无法访问未加密的内容。
作为 Bareos 管理员,您可以使用命令行界面 (bconsole) 或您喜欢的 Web 浏览器 (Bareos WebUI) 与备份软件进行通信。多语言 Web 界面管理多个 Bareos Director 及其数据库。此外,还可以配置基于角色的访问,并创建具有 ACL(访问控制列表)的不同配置文件,以控制用户可以在 WebUI 中看到和执行的操作。

(Heike Jurzik, CC BY-SA 4.0)
WebUI 提供有关备份作业、客户端、文件集、池、卷等的概述和详细信息。也可以通过 Web 界面启动备份和还原作业。从 Bareos 21 开始,WebUI 提供时间线以显示选定的作业。此时间线使您可以轻松发现正在运行、已完成甚至失败的作业。这是一个很棒的功能,尤其是在较大的环境中,因为它使您可以检测计划中的间隙或识别哪些备份作业占用最多的时间。
软件包、支持和培训
使用 Bareos 没有许可费用。除了 Bareos 源代码(可在 GitHub 上获得)之外,供应商还在两个不同的存储库中提供 Bareos 软件包
拥有有效订阅的客户还可以从制造商处购买支持和咨询,或赞助新功能的开发。Bareos GmbH & Co. KG 拥有全球合作伙伴网络,提供多种语言的支持和培训。
加入 Bareos 社区
Bareos 是一个非常活跃的开源项目,拥有一个很棒的社区。该软件的源代码和Bareos 手册源代码托管在 GitHub 上,欢迎所有人贡献。Bareos 还提供两个邮件列表,一个用于用户 (bareos-users),另一个用于开发人员 (bareos-devel)。有关新闻和公告、技术指南、快速操作指南等,您还可以关注 Bareos 博客。
评论已关闭。