如何使用CentOS的Amanda设置集中备份服务器
Amanda(Advanced Maryland自动网络磁盘Archiver)是世界上最受欢迎的开源备份和恢复软件,可保护多百万服务器和桌面运行各种版本的Linux,UNIX,BSD,Mac OS-X和Microsoft Windows操作全世界的系统。
Amanda支持录像带,磁盘,光学介质和更换器。
它为我们提供了将磁盘存储作为备份介质的功能。
配置,启动和验证备份将在30分钟内完成备份周期。
Amanda已在一个独立机器到数百名客户端的环境中成功使用。
它可以从昂贵的专有备份软件和这些自定义备份脚本中保存我们,这些脚本在最糟糕时期具有倾向于打破。
在本文中,我们将展示如何:
- 安装和配置Amanda Backup Server。
- 设置备份参数。
- 验证配置并验证备份。
- 安装和配置Amanda Linux客户端进行备份。
第1步:在CentOS上安装Amanda 7
我们将通过在CentOS 7服务器上安装Amanda Backup Server来从我们的第一步开始。
使用root用户凭据打开CentOS 7主机的命令行终端并设置其IP和FQDN。
运行以下命令以设置Amanda Backup Server的主机名。
# hostnamectl set-hostname amanda-server
# vi /etc/hosts 192.168.10.177 amanda-server amanda-server.theitroad.com
确保我们已连接到Internet以安装更新和Amanda Server Packages。
运行以下命令以使用最新的更新和修补程序更新系统。
# yum update
更新系统后,可以使用"yum"命令启动Amanda Backup Server的安装,因为它的软件包可用其默认拨EPEL存储库。
通过运行以下命令并按'y'键继续进行其安装,包括其依赖项。
[root@amanda-server ~]# yum install amanda*
Amanda将由Xinetd执行,因此我们需要将其安装在系统上的Amanda中的一些所需包装。
# yum install xinetd gnuplot perl-ExtUtils-Embed
第2步:启动Xinetd服务
现在我们在CentOS 7操作系统上安装了Xinetd和Amanda Backup Server。
让我们使用如下所示的命令启动'xinetd'服务。
[root@amanda ~]# service xinetd restart
使用以下命令验证其成功安装后的Amanda安装。
[root@amanda ~]# amadmin --version amadmin-3.3.3
第3步:Amanda配置设置
首先,我们将使某些目录Uisng root用户,但确保并确认Amanda用户,可能是"Amandabackup"或者"Amanda"或者"备份",具体取决于我们安装的Amanda如何。
我们正在使用默认的"amandabackup"以分配以下目录结构的所有权。
[root@amanda ~]# mkdir -p /amanda /etc/amanda
[root@amanda ~]# chown amandabackup /amanda /etc/amand
现在切换到"Amandabackup"用户并运行以下命令。
[root@amanda ~]# su - amandabackup
-bash-4.2$mkdir -p /amanda/vtapes/slot{1,2,3,4}
-bash-4.2$mkdir -p /amanda/holding
-bash-4.2$mkdir -p /amanda/state/{curinfo,log,index}
-bash-4.2$mkdir -p /etc/amanda/MyConfig
因此,所有数据都将在"/Amanda"文件夹下,但我们可以随时随地放置它们。
现在,我们将在"/etc/amanda/myconfig /'目录中添加"amanda.conf"文件,其中包含以下内容。
这是Amanda,Advanced Maryland自动网络磁盘Archiver的主要配置文件。
允许使用最佳编辑器打开此配置文件,并将以下内容放其中。
请记住,如果Amanda用户有另一个名称,则应适当地编辑"垃圾箱"。
-bash-4.2$vi /etc/amanda/MyConfig/amanda.conf
org "MyConfig" infofile "/amanda/state/curinfo" logdir "/amanda/state/log" indexdir "/amanda/state/index" dumpuser "amandabackup" tpchanger "chg-disk:/amanda/vtapes" labelstr "MyData[0-9][0-9]" autolabel "MyData%%" EMPTY VOLUME_ERROR tapecycle 4 dumpcycle 3 days amrecover_changer "changer" tapetype "TEST-TAPE" define tapetype TEST-TAPE { length 100 mbytes filemark 4 kbytes } define dumptype simple-gnutar-local { auth "local" compress none program "GNUTAR" } holdingdisk hd1 { directory "/amanda/holding" use 50 mbytes chunksize 1 mbyte }
有许多配置参数可以控制Amanda程序的行为。
所有有默认值,因此如果默认值合适,则无需在Amanda.conf中指定参数。
我们可以在"/etc/amanda/dailyset1 /'目录下找到原始Amanda配置文件。
接下来,我们将添加一个具有单个磁盘列表条目(DLE)的"磁盘列表"文件。
"磁盘列表"文件确定Amanda将备份哪些磁盘。
该文件包含includeDile指令或者磁盘表条目(DLE)。
一般用法是将DLE描述为分区或者文件系统。
-bash-4.2$vi /etc/amanda/MyConfig/disklist
localhost /etc simple-gnutar-local
使用':wq!'保存并关闭文件当我们使用"VI"或者"Vim"编辑器时。
所以,我们已经完成了配置让我们移动到下一步。
第4步:检查Amanda配置
Amanda有一个良好的实用程序,称为"Amcheck",可以为我们检查配置。
运行它以测试为我们提供配置结果的配置。
请注意,几乎所有Amanda命令都将配置名称作为我们的案例中的第一个参数,它是"myconfig"。
让我们运行以下命令来检查磁带主机服务器配置。
-bash-4.2$amcheck MyConfig
Amcheck在Amanda磁带服务器主机和Amanda客户端主机上运行许多自检。
在磁带服务器主机上,AMCHECK可以通过在夜间AMDUMP开始时使用的相同磁带检查,以验证安装下一个运行的正确磁带。
它还可以在所有客户端主机上进行自检,以确保每个主机正在运行,并且要备份的文件系统上的权限是正确的。
我们可以指定许多主机/磁盘表达式,仅检查匹配表达式的磁盘。
如果没有给出任何表达式,则检查所有磁盘。
第5步:运行测试备份
测试结果是积极的,因为我们已经看到没有发现迫使我们前进的这种错误。
运行备份的工具是'amdump'。
只需要配置名称,它不会在其外面打印到终端的任何内容。
让我们作为Amanda用户运行,如下所示。
-bash-4.2$amdump MyConfig
几秒钟,你可能会没有输出。
在下一行上,运行以下命令,该命令应在输出中给出"0"。
如果我们看到以外的其他东西,则备份失败。
-bash-4.2$echo $? 0
Amdump是Amanda备份过程的主要界面。
它加载指定的配置,并尝试备份"磁盘列表"指定的每个磁盘。
Amdump通常由"Cron"运行,我们将在下步步骤中向我们展示。
但是,如果你看到零以外的东西,那么它意味着备份失败。
在这种情况下,我们可以通过使用"amreport"命令以及配置文件,查看备份发生的内容的方便报告。
-bash-4.2$amreport MyConfig
AmReport将生成Amanda备份运行的摘要报告,如下图所示。
第6步:Amanda备份计划
每天执行"Amdump",可以通过Cron守护程序安排。
没有人想记得每晚都要运营备份。
这就是我们有Cron的原因!让我们添加以下行。
-bash-4.2$crontab -e
0 17 * * * amandabackup /usr/sbin/amcheck -m MyConfig 15 2 * * * amandabackup /usr/sbin/amdump MyConfig
保存并关闭CRONTAB编辑器。
这些行将每天在17:00和2:15安排备份。
如果我们登录到root用户,那么我们可以使用以下命令为Amada用户添加Cron作业。
# su amadabackup -c "crontab -e"
但取决于我们如何安装的Amanda,我们可能需要在发现发行版的amanda工具的位置之后更改"/usr/sbin"到其他内容。
我们可以使用命令行上的"哪个AMCHECK"来查找进程位置。
# which amcheck /usr/sbin/amcheck
Amcheck可以给我们发电子邮件给我们在CRONTAB中使用的"-m"标志的问题,AMDUMP会愉快地向我们发送每晚报告。
自动化如果你从未发现有些东西被打破了。
因此,只需将"邮件"配置添加到"Amanda.conf"文件中。
-bash-4.2$vi /etc/amanda/MyConfig/amanda.conf
mailto "[email protected]" :wq!
第7步:Amanda Backup客户端安装
在本节中,我们将介绍如何安装和配置我们的虚拟机才能由Amanda备份服务器备份,我们刚刚在以前的步骤中设置。
我们将使用另一个CentOS 7服务器来设置Amanda客户端备份安装。
要安装Amanda客户端包运行以下命令。
[root@centos-bk1 ~]# yum install amanda-client xinetd
第8步:Amanda Backup客户端配置
用于指定Amanda Server位置的'/var/lib/amanda/.amandahosts'文件使打开相同的文件并添加以下条目,然后保存更改。
[root@centos-bk1 ~]# vi /var/lib/amanda/.amandahosts
amanada_server amandabackup :wq!
然后,确保相同的文件'/var/lib/amanda/.amandahosts'必须包含允许使用amrecover命令的每个Amanda客户端的主机名的条目,并且必须以root身份运行"amRecover"。