bacula是一款开源的跨平台网络备份工具,提供基于企业级的C/S的备份解决方案。可以对数据进行备份、恢复、以及完整性校验。同时,它还提供了许多高级存储管理功能。
支持多种备份方式:完全备份,增量备份,差异备份。
支持多种恢复方式:
可以恢复某个目录、文件到指定的位置,恢复时自动恢复数据的原始结构。
可以恢复所有数据到指定位置,恢复时自动恢复数据的原始结构。
可以保存恢复文件或目录的权限、属主、访问时间等属性。
可以恢复某个时间点的备份到指定位置,恢复时自动恢复数据的原始结构。
支持多种文件系统下的备份恢复:ext3、ext2、reiserfs、xfs、jfs、smbfs、iso9660、ntfs等)
支持各种备份介质:磁盘,磁带,磁盘阵列,光盘
支持多种操作系统:linux,windows,mac
强大的内部功能:
支持定时备份,无需人工干预
支持终端命令控制,更加灵活
支持正则表达式,可以对备份文件进行更严格的匹配
支持MD5和SHA1两种签名校验
支持压缩备份,备份效率更高,传输更快
支持报表自动绘制功能,可以自动生成备份报表和恢复报表
bacula架构
一个完整的bacula备份系统,由下面5个部分组成。
Director Daemon:以下简称Director,负责监听所有的备份、恢复、验证、存档事务,以及定制备份和恢复文件计划等,并将整个系统运行状况记录在一个 数据库中。支持Director Daemon的数据库有MySQL、PostgreSQL 和SQLite,推荐使用MySQL。Director的配置文件为bacula-dir.conf。
Storage Daemon:以下简称SD,在备份数据时,用来指定备份和恢复数据的存储介质(存储介质可以是本地磁盘,光纤磁盘阵列、磁带等),主要负责将数据备份到存储介质上。而在数据恢复时,负责将数据从存储介质中传送出去。SD的配置文件为bacula-sd.conf。
File Daemon:以下简称FD,是一个安装在需要备份数据的机器上的守护进程,在备份数据时,它负责把文件传出;在恢复数据时,它负责接收数据并执行恢复操作。FD的配置文件为bacula-fd.conf。
Console:是一个管理控制台,用户可以通过这个控制台连接到Director Daemon进行管理备份与恢复操作,有三种管理方式:基于文本的控制台界面、 GNOME的界面和wxWidgets的图形界面。Console 端的配置文件是bconsole.conf。
Monitor:一个进程监控端,负责监控Director Daemon、Storage Daemon和File Daemon的守护进程。
bacula备份恢复流程:
首选,通过Console连接到Director端,备份恢复操作开始。
接着,Director端从自己的数据库中调出记录信息,对存储端SD与客户端FD的任务进行协调。
然后,客户端FD负责验证Director的操作许可,如果验证通过,则允许连接存储端SD。
最后,客户端FD根据Director发出的请求去连接SD,将FD端的数据备份到存SD指定的存储介质上,或者将SD端存储介质中的数据传回到客户端FD指定的位置上,完成备份恢复过程。
需要注意的是,在bacula的整个备份恢复系统中,客户端FD和SD要保证网络连接畅通,为了保证备份以及恢复数据的速度和效率,最好让客户端FD和SD处在一个网段中。
Bacula各组件说明
Baula有三个服务,分别是bacula-sd管理storage、bacula-fd为bacula客户端、bacula-dir为bacula的核心组件机director。
Bacula默认是通过bconsole管理的,bconsole为命令行模式,对bacula进行常规的操作。
bacula-gui为bacula方出的web端 bacula管理工具;
Bacula-web为第三方出的web端bacula监控报表工具。
bacula服务端有如下配置文件:
bconsole.conf:bconsole的配置文件,定义可连接的director连接信息。即bconsole可以管理那些director;
bacula-dir.conf:director的配置文件,是bacula最主要的配置文件,定义了备份相关的所有配置;
bacula-fd.conf:为客户端的配置文件,定义了客户端的密码、客户端名称等配置;
bacula-sd.conf:为存储配置文件,定义了备份存储位置。
File Autochanger mtx-changer.conf 自动更换支持读写磁带
在baclua的5个组成部分中,3个主要配置文件是相互关联的,修改任何一个配置文件,另外两个文件都要进行相应的改动。
本文暂时没有评论,来添加一个吧(●'◡'●)