opencore0.6.4_Bacula9.4部署

一、部署环境

服务器端

系统版本IP注释
centos7.6192.168.3.6最小化安装
软件版本用途下载地址
mysql5.7.28数据库MYSQL官方下载地址
Bacula9.4.4备份安装包Bacula官方下载地址
Baculum-API9.4.4web管理通过yum安装

二、系统基础环境配置

2.1 关闭防火墙

(测试环境,生产环境开启相关端口)

# vi /etc/selinux/config   //将SELINUX=enforcing改为SELINUX=disabled

# setenforce 0              //临时关闭,重启失效
# systemctl stop firewalld //关闭防火墙服务
# systemctl disable firewalld //关闭防火墙随机启动服务

2.2 安装基础软件包

#yum install -y wget lrzsz net-tools gcc gcc-c++ perl perl-devel  //可以先安装wget后更新阿里源在安装比较快

软件用途
wget下载文件的工具,用于更换阿里源及下载软件包
lrzsz上传下载工具,用于把本地软件包上传到服务器
net-tools网络工具,bacula依赖。
gcc gcc-c++C 和 C++ 编译器,bacula依赖环境
perl perl-develmysql依赖的编译环境

三、Mysql5.7.28数据库安装

3.1 前期工作

centos7.6系统自带mariadb-libs(MariaDB/MySQL客户端所需的共享库),会与mysql-community-common包冲突必须卸载掉。

# rpm -qa|grep mariadb          //查询是否安装及安装包名

mariadb-libs-5.5.64-1.el7.x86_64
#rpm -e --nodeps mariadb-libs-5.5.64-1.el7.x86_64 //--nodeps强制删除包

3.2 Mysql下载及官方说明文档

3.2.1官方下载

下载RPM Bundle完整包。保存本地后上传到服务器,也可用wget直接在服务器下载。

fa0fee5d74d8222782a483bba591b0c9.png

3.2.1官方文档说明

https://dev.mysql.com/doc/refman/5.7/en/binary-installation.html本次使用YUM默认安装,如需其他参数可看官方文档。

3.3 数据库安装

3.3.1 上传解压

#rz           //弹出上传窗户选择文件上传

#mkdir mysql   //创建文件夹
#tar xvf mysql-5.7.28-1.el7.x86_64.rpm-bundle.tar -C mysql //解压到mysql文件夹
#cd mysql
#ls //可看到下图文件

1b6ff3610b65c53e1aac7e556bb45779.png

3.3.2  YUM安装

#rpm -ivh mysql-community-server-5.7.28-1.el7.x86_64.rpm mysql-community-client-5.7.28-1.el7.x86_64.rpm mysql-community-devel-5.7.28-1.el7.x86_64.rpm mysql-community-common-5.7.28-1.el7.x86_64.rpm mysql-community-libs-5.7.28-1.el7.x86_64.rpm mysql-community-libs-compat-5.7.28-1.el7.x86_64.rpm

软件包说明
mysql-community-client-5.7.28-1.el7.x86_64.rpm数据库客户端
mysql-community-libs-5.7.28-1.el7.x86_64.rpmMySQL客户端所需的共享库
mysql-community-libs-compat-5.7.28-1.el7.x86_64.rpm兼容库
mysql-community-server-5.7.28-1.el7.x86_64.rpm数据库服务端
mysql-community-common-5.7.28-1.el7.x86_64.rpmMySQL配置
mysql-community-devel-5.7.28-1.el7.x86_64.rpm开发库

3.3.3 启动mysql服务

#systemctl start mysqld.service       //启动mysql

#systemctl enable mysqld.service    //添加开机启动

3.3.4 修改mysql密码

#grep "password"  /var/log/mysqld.log     //查看临时密码,复制随机密码

66da104eed058dfe2c0a2778c52ba1ac.png

# mysql -uroot -p          //进入数据库回车,黏贴密码进入

a0501978-5530-eb11-8da9-e4434bdf6706.svg

# mysql> set global validate_password_policy = 0 ; //验证策略改为最低

# mysql> set global validate_password_length=1;    //修改密码长度
# mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456'; //设置新密码

3.3.5创建bacula 数据库帐号密码

#mysql>grant all privileges on *.* to bacula@'%' identified by 'bacula';    创建bacula帐号

注释:bacula@'%'    允许远程登录,bacula@localhost 允许本地登录 。mysql5.7 '%'包含localhost

四、bacula安装

4.1 上传及安装

#rz  上传

#tar zxvf bacula-9.4.4.tar.gz
#cd bacula-9.4.4
#./configure --with-mysql //默认安装目录/etc/bacula 可自己定义路径 –prefix=/usr/local/bacula
#make && make install //注意看有没有报错
#make install-autostart //自动启动守护进程

4.2 配置数据库

#cd /etc/bacula     //安装完后,进入安装后目录可看到以下文件

#./create_bacula_database -ubacula -pbacula -P 3306         //以bacula帐号创建数据库,这里是数据库刚创建的帐号密码。

执行成功会提示:Creation of bacula database succeeded.

#./make_bacula_tables -ubacula -pbacula -P 3306     //以bacula帐号创建数据库表,这里是数据库刚创建的帐号密码。

执行成功会提示:Creation of Bacula MySQL tables succeeded.

4.3 bacula配置文件修改

4.3.1 bacula-dir.conf配置

此配置文件为bacula的全局配置文件,定义了备份相关的所有配置信息。

#vi /etc/bacula/bacula-dir.conf  

数据库资源配置
//查找到catalog{}位置,填入 dbpassword"数据库密码"

c560082e3fa6e7eab60ff98e2380d0c7.png

配置数据库信息

备份存储物理位置配置
//查找到Autochanger {}位置,填入Address="服务端IP"    有多个Autochanger需全部修改。

9cbed121afd4271a161c579e94a4603d.png

配置存储服务器IP

4.4 启动bacula

#/etc/bacula/bacula start     //启动bacula

#/etc/bacula/bacula status    //确认是否三个都起来

bacula-sd (pid 89518) is running...
bacula-fd (pid 89527) is running...
bacula-dir (pid 89535) is running...

进入bconsole控制台查看状态

#/etc/bacula/bconsole

* status

c3c0de5669d75c34a4367b9ec2f439ed.png

bconsole控制台

五、Baculum(api web)安装

5.1 添加存储库

添加baculum存储库,需选导入baculum公钥

#rpm --import http://bacula.org/downloads/baculum/baculum.pub

导入密钥后,下一步是添加存储库定义。首先,您必须创建以下文件:

#vi /etc/yum.repos.d/baculum.repo

对于CentOS 7,将以下内容黏贴在刚刚创建的文件中:
[baculumrepo]
name=Baculum CentOS repository
baseurl=http://bacula.org/downloads/baculum/stable/centosgpgcheck=1
enabled=1

5.2 安装Apache

# yum install -y httpd httpd-tools  //此处可不执行,后面yum baculum会自动安装此依赖

#systemctl enable httpd     //设置随机启动

5.3 安装PHP

本次安装版本php72w

# yum install -y epel-release  //安装epel源,简单理解安装一个软件商店

# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm     //获取PHP7.0的yum源
# yum install -y php56w php56w-bcmath php56w-common php56w-devel php56w-gd php56w-mbstring php56w-mysqlnd php56w-xml php56w-pgsql
软件包说明
mod_php72wApache HTTP服务器的PHP模块
php72w-bcmath用于使用bcmath库的PHP应用程序的模块
php72w-commonPHP的公共文件
php72w-devel构建PHP扩展所需的文件
php72w-gd一个用于PHP应用程序的模块,用于使用gd图形库
php72w-mbstring一个PHP应用程序的模块,需要多字节字符串处理
php72w-mysqlnd用于使用MySQL数据库的PHP应用程序的模块
php72w-xml用于使用XML的PHP应用程序的模块
php72w-pgsql一个用于PHP的PostgreSQL数据库模块

5.3 安装baculumWeb及baculumAPI

# yum install -y baculum-common baculum-api baculum-web baculum-api-httpd  baculum-web-httpd

baculum 分别提供httpd和lighttpd提供两种web服务。根据自己情况选择安装,本次安装httpd。

软件包说明
baculum-api带应用程序文件的 Baculum-API-main Baculum API 包
baculum-api-httpdApache HTTP Server配置文件
baculum-api-lighttpdLighttpd  服务器配置文件
baculum-commonBaculum API and Baculum Web 的常用文件
baculum-web应用程序文件的Baculum Web 包
baculum-web-httpdhttpd-Apache HTTP Server 的 Baculum Web 配置文件
baculum-web-lighttpdLighttpd 用于 Baculum  Web 的 Web 服务器配置文件

5.4 Apache权限

配置Apache访问控制台目录权限,官网文档

#vi /etc/sudoers.d/baculum

复制黏贴以下内容
Defaults:apache !requiretty
apache  ALL=NOPASSWD:  /usr/sbin/bconsole
apache  ALL=NOPASSWD:  /usr/sbin/bdirjson
apache  ALL=NOPASSWD:  /usr/sbin/bsdjson
apache  ALL=NOPASSWD:  /usr/sbin/bfdjson
apache  ALL=NOPASSWD:  /usr/sbin/bbconsjson

重新启动ApacheWeb服务器:

#service httpd restart

查看端口,确认是否都起来:

#netstat -nltp

d860625ce44d8d29f470a02282c644e4.png

端口信息

5.5 WEB页面配置

5.5.1 配置API信息

从Web浏览器访问baculumAPI:http://localhost:9096首次登录:admin
第一次密码:admin

安装php72w 后打开网页提示错误

632431a7401da7bcf4bcc65c33e737b3.png

网页报错

:[Warning] session_start(): open(/var/lib/php/… failed: Permission denied
解决方法  提权

# chmod 777 /var/lib/php/session     

A、配置数据库信息,数据库创建帐号bacula   此次设置密码bacula

8591308d259f751f502c346efd8ef7c7.png

API配置

B、配置控制台路径,如果测试没成功,可能访问权限问题,给Apache授权访问目录

#  chown -R apache: /etc/bacula/      //Apache写入权限

5ede5f1527431a6746c54a73a1d5c823.png

控制台路径

C、配置各组件信息,Directory path for new config files 配置文件的目录路径:  默认在安装路径  /etc/bacula

6cb683b97a22f3606b0da2276e9d4746.png

组件信息

D、API链接信息

998709e1bb9a9e933225ae7ac6657982.png

登录信息

E、完成API配置

184337594ac4a3e420905696204f0ad5.png

完成AIP配置

5.5.2 WEB配置

从Web浏览器访问baculumWeb:http://localhost:9095首次登录:admin
第一次密码:admin

e48b7350792861a0ed60e9475bfc0997.png

WEB配置

07d6c1463f13e84e1eba8fc22e8c0070.png

API配置

09fae907037b1cbea19469a519c2e474.png

配置WEB登录信息

f7ad572ccd017a78a37ff365f1707086.png

完成WEB配置

六、客户端安装

6.1 centos客户端安装

6.1.1 关闭防火墙(生产环境开启对应端口)

#systemctl stop firewalld

#systemctl disable firewalld

6.1.2安装依赖包

#rpm -qa | grep gcc*     //检查gcc gcc-c++环境是否安装

#yum install -y gcc gcc-c++      //安装gcc gcc-c++

6.1.3 安装bacula客户端

#rz    //上传之前下载的bacula软件包

# tar -zxvf bacula-9.4.4.tar.gz    //解压
# cd bacula-9.4.4 //进入目录
# ./configure --enable-client-only //默认安装在/etc/bacula/目录下,也可以加--prefix= 指定安装路径, --enable-client-only只安装客户端
#make&&make install

6.1.4 客户端配置

只需配置/etc/bacula/bacula-fd.conf

#vi /etc/bacula/bacula-fd.conf

以下红色部分需修改,蓝色拷贝


Director {b7501978-5530-eb11-8da9-e4434bdf6706.svg//与服务器端的bacula-dir.conf 内的第一个director名称一样b8501978-5530-eb11-8da9-e4434bdf6706.svg//客户端自动生成密码
}
#
# Restricted Director, used by tray-monitor to get the
#   status of the file daemon
#
Director {ba501978-5530-eb11-8da9-e4434bdf6706.svg//与服务器端的bacula-dir.conf 内的console名称一样bb501978-5530-eb11-8da9-e4434bdf6706.svg//与服务器端的bacula-dir.conf 内的console密码一样
Monitor = yes
}

#
# "Global" File daemon configuration specifications
#
FileDaemon {                          # this is me 定义客户端信息bc501978-5530-eb11-8da9-e4434bdf6706.svg//定义客户端名称
FDport = 9102                  # where we listen for the director
WorkingDirectory = /opt/bacula/working
Pid Directory = /var/run
Maximum Concurrent Jobs = 20
Plugin Directory = /usr/lib64
}

# Send all messages except skipped files back to Director
Messages {
Name = Standard
director = zabbix-dir = all, !skipped, !restored
}


6.1.5 服务端配置

编辑服务器/etc/bacula/bacula-dir.comf,(也可WEB添加)
新增以下内容


Client {        //此处定义的是一个客户端
Name = "zabbix-fd"
//定义cline的名称,用于JOB调用
Address = "192.168.3.8"
//需备份客户端主机的IP
FdPort = 9102
//需备份客户端主机bacula-fd.conf配置的端口
Password = "4dnxG0BYle3TGSnutkxV4xaasLe3mA7T6qbp9mp7xj62"
//客户端密码,客户端配置文件bacula-fd.conf里第一个Director的密码
Catalog = "MyCatalog"
//定义后台数据库,存储信息;
FileRetention = 5184000
//定义了文件信息在数据库的保存时间,如果AutoPrune为yes,bacula会自动清理,但是并不会删除备份数据;
JobRetention = 15552000
//定义了作业信息在数据库保留的时间,应该大于FileRetention指定的值;
AutoPrune = yes
//当达到指定的保持周期时,是否自动删除数据库中的记录,yes表示自动清除过期的Job
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值