关于bacula网络备份软件的安装以及配置1

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

最近在网上看到有一个强大的网络备份软件bacula,于是就找了一些资料来看,发现网上的资料寥寥无几啊,凭着自己的理解就在本地环境下面进行了测试,最后终于实现了网络的备份以及还原功能,当然此文章也有不足之处,之后会进行其他方面的一些更新.

 

       网络备份工具bacula配置

简介: Bacula,被誉为开源软件中最好的备份还原软件,它提供了企业级的客户机/服务器的备份解决方案,能够通过网络来管理文件的备份,恢复和核实工作.既有windows版本的,也有LinuxUnix.
 

关于bacula的组建介绍:

Directory: 管理所有备份,恢复,验证,和存档事务,定制备份和恢复文件的计划.
 
Storge: 指定进行存储和恢复文件属性和数据的物理备份媒介.
 
File: 安装在被备份机器上的程序,将被directory调用时候,它提供
       关于自己的操作系统、文件属性、数据等资料.
 
Console: directory进行通讯.
 
Catalog: 负责维护所有备份文件的索引和数据库.
 
Monitor: 监控directoryfilestorage的守护进程.

试验环境:

   使用2台服务器来做这个网络备份的测试环境,环境如下:
   10.10.2.226           作为directorystoragecatalog.
   10.10.2.162           作为file.

关于bacula的结构图:

 4.jpg

 

一.    Baculaserver上的安装以及配置

1.Baculaserver上的安装

bacula 的安装不是很复杂,我这里安装的是bacula2.4.3版本的.
#tar zxvf  bacula-2.4.3.tar.gz
#./configure  --with-mysql
#make&&make intall
默认情况下,bacula的安装路径为/etc/bacula.

2.创建mysql脚本

#./grant_mysql_privileges
#./ create_mysql_database
#./  make_mysql_tables
 

3.bacula的配置

在这里说明下,bacula的主要配置都在directory这个配置文件里面的,这个算是一个核心文件了,一定要搞清楚里面配置文件的配置项都代表什么意思,否则很难配置成功.
#####################################################################
directory 端的配置:
#more bacula-dir.conf
 
//directory 的全局配置
Director {                           
  Name = linux-0fdr-dir
  DirAddress=10.10.226           // 这里是directory端的ip
  DIRport = 9101                 // 这里是directory端的进程号
  QueryFile = "/etc/bacula/query.sql"
  WorkingDirectory = "/var/bacula/working"
  PidDirectory = "/var/run"
  Maximum Concurrent Jobs = 1
  Password = "MJ8SyFywMm+4ntJf2EupggRWIWE6LozmLfIKC8J9nYt7"        
  Messages = Daemon
}
 
//directory job配置
Job {
  Name =dbjob          //job 的名字,这个可以随便起,在后面的备份操作
                          的时候可以看到
  Client=dbfd         // 这里要和后面的clientname名字要一样
  Type=backup         // 可用类型有backup,restore,verify,admin
  FileSet=dbfs        // 这个要和后面的filesetname名字要一样
  Messages=Daemon     // 这个要与后面的messagename名字要一样
  Pool=dbpool         // 这个要与后面的poolname名字要一样
  Storage=dbsd        // 这个要与后面的storagename名字要一样
  Write Bootstrap = "/var/bacula/working/Client1.bsr"
  Level=Full      // 这里是备份类型,可用的值是FULL(完全备份),incremental(增量备份),differential(差异备份)
  schedule=dbscd     // 这里要与后面的schedulename名字要一样
}
 
//directory 的还原job配置
job{             
  Name=restrory
  Client=dbfd
  Type=Restore
  FileSet=dbfs
  Messages=Daemon
  Pool=dbpool
  Storage=dbsd
  Write Bootstrap = "/var/bacula/working/Client1.bsr"
  Where =/home/bacula/    // 还原的路径
 
}
 
 
FileSet {   
  Name =dbfs        // 这个名字是应用到job里面的
  Include{
    Options {
      Compression=GZIP   // 对备份文件进行gzip的压缩
      signature = MD5    // 验证方式为MD5码的方式
      Sparse=yes
    }
    File =/home/mysql_packup   // 需要备份的目录
  }
    
Exclude {                  //  排除的,不备份的内容
    File = /proc           // 不备份/proce
    File = /tmp         
    File = /.journal
    File = /.fsck
  }
}
 
Client {
  Name = dbfd              // 这里要与FD配置文件的name相同,并且应用在job里面的
  Address = 10.10.2.162   // 要备份的客户机IP
  FDPort = 9102
  Catalog = dbcatalog     // 记录客户机备份情况的日志名,后面会定义
  Password = "Nd+Yuqe+Kd5wBc1S9uMTEGTNqNIe1cupnfuOdwboej6Z"  // FD的密码一致 
File Retention = 30 days  // 保存在数据库目录多久轮询一次,这里是30
  Job Retention = 6 months   //job 保持周期,大于FRetention
  AutoPrune = yes            // FR/JR周期满了是否执行自动删除它们在数据库的目录
  #priority  =1              // 如果多个client,定义优先级1-1000,值越小越优先
}
 
Storage {
  Name =dbsd      // 必须与SD配置文件的name相同,这个应用到了job里面
  Address = 10.10.2.226         // 安装sd服务的服务器IP
  SDPort = 9103
  Password = "5jipKA7pekDel6BUjgIwD3LkPPBgxcecbLpLfl9puj0c"    // 要与SDpassword一样
  Device =dbdev          // 要与SD配置文件的devicename相同
  Media Type = File       // 要与SD配置文件deviceMedia Type相同
}
 
Pool {
  Name =dbpool           // 这个应用到了job里面
  Pool Type=backup      
  Maximum Volume Jobs = 1
  Recycle = yes
  AutoPrune = yes
  Volume Retention = 365 days
}
 
Schedule {              // 定时任务
  Name =dbscd           // 这个应用到了job里面
  Run = Full 1st sun at 23:05
  Run = Differential 2nd-5th sun at 23:05
  Run = Incremental mon-sat at 23:05
}
 
Catalog {
  Name =dbcatalog       // 这个应用到了job里面
  dbname = "bacula"; dbuser = "bacula"; dbpassword = ""
  DB Address=10.10.2.226    // 不要用localhost,数据库所在的IP
  DB Port=3306
}
 
Messages {
  Name = Daemon        // 这个应用到了job里面
  mailcommand = "/sbin/bsmtp -h localhost -f \"\(Bacula\) \<%r\>\" -s \"Bacula daemon message\" %r"
  mail = root@localhost = all, !skipped
  console = all, !skipped, !saved
  append = "/var/bacula/working/log" = all, !skipped
}
 
Console {
  Name = linux-0fdr-mon
  Password = "MJ8SyFywMm+4ntJf2EupggRWIWE6LozmLfIKC8J9nYt7"
  CommandACL = status, .status
}
 
#####################################################################


本文转自wiliiwin 51CTO博客,原文链接:http://blog.51cto.com/wiliiwin/199294
相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
28天前
|
监控 Linux Shell
【Shell 命令集合 网络通讯 】Linux 配置和管理网络流量的形状 shapecfg命令 使用指南
【Shell 命令集合 网络通讯 】Linux 配置和管理网络流量的形状 shapecfg命令 使用指南
38 0
|
28天前
|
网络协议 Shell Linux
【Shell 命令集合 网络通讯 】Linux 设置和配置PPP pppsetup命令 使用教程
【Shell 命令集合 网络通讯 】Linux 设置和配置PPP pppsetup命令 使用教程
36 0
|
28天前
|
缓存 网络协议 Linux
【Shell 命令集合 网络通讯 】Linux 配置DNS dnsconf 命令 使用教程
【Shell 命令集合 网络通讯 】Linux 配置DNS dnsconf 命令 使用教程
38 0
|
30天前
|
网络协议 网络虚拟化 数据中心
华为配置VXLAN构建虚拟网络实现相同网段互通示例(静态方式)
配置VXLAN构建虚拟网络实现相同网段互通示例(静态方式
|
28天前
|
域名解析 网络协议 Linux
【Shell 命令集合 网络通讯 】Linux 设置和管理网络接口配置信息 netconfig命令 使用指南
【Shell 命令集合 网络通讯 】Linux 设置和管理网络接口配置信息 netconfig命令 使用指南
49 1
|
25天前
|
监控 安全 网络安全
【软件设计师备考 专题 】网络软件
【软件设计师备考 专题 】网络软件
43 0
|
10天前
|
网络协议 Linux
在Linux中,管理和配置网络接口
在Linux中管理网络接口涉及多个命令,如`ifconfig`(在新版本中被`ip`取代)、`ip`(用于网络设备配置)、`nmcli`(NetworkManager的CLI工具)、`nmtui`(文本界面配置)、`route/ip route`(处理路由表)、`netstat/ss`(显示网络状态)和`hostnamectl/systemctl`(主机名和服务管理)。这些命令帮助用户启动接口、设置IP地址、查看连接和路由信息。不同发行版可能有差异,建议参考相应文档。
19 4
|
3天前
|
运维 网络架构
软件体系结构 - 网络拓扑结构
【4月更文挑战第14天】软件体系结构 - 网络拓扑结构
8 0
|
10天前
|
网络协议
centos8 网卡 Nmcli(是network的简写 Nmcli)配置网络
centos8 网卡 Nmcli(是network的简写 Nmcli)配置网络
14 0
|
29天前
|
存储 安全 网络安全
网络技术基础(20)——AAA原理与配置
【3月更文挑战第6天】华为设备的AAA框架实现网络安全管理,包括认证、授权、计费三要素,常使用RADIUS协议。用户、NAS(Network Access Server)和AAA服务器构成基本架构。认证方式有不认证、本地认证和远端认证,授权方式包括不授权、本地授权和远端授权,计费则为不计费和远端计费。RADIUS作为分布式协议,处理认证、计费和授权。常见应用场景如SSH登录,配置涉及创建认证方案、用户及服务类型。实验配置示例展示了SSH登录的AAA验证过程。