Configuração do servidor
Observação: No exemplo que vamos utilizar, nosso servidor de backup não contará com um jukebox (autoloader) , sera utilizado uma unidade de tape simples, no qual as trocas de fitas são manuais.
A) Inicialmente copie os arquivos de exemplos para o diretorio de configuração do amanda:
# mkdir /usr/local/etc/amanda/fugspbr
# cp /usr/local/share/examples/amanda/* /usr/local/etc/amanda/fugspbr
Voce deve editar o arquivo amanda.conf e seta-lo corretamente, certifique-se de utilizar um device no-rewind, no caso do FreeBSD /dev/nsa0. Vejamos abaixo alguns dos parametros que voce deve setar.
###################INICIO#######################
#
# Nome a ser utilizado nos relatórios.
org "fugspbr"
# Lista os usuarios que irão receber os relatórios.
mailto "ebrandi,operator"
# Usuario sob o qual o dump ira rodar, precisa de permissão nos devices.
dumpuser "operator"
# Numero máximo de clientes que poderão fazer o backup em paralelo.
inparallel 4
# Define o numero de tapes a serem utilizados durante a execução do amdump
runtapes 1
# Define como serão trocadas as fitas, no nosso caso manualmente.
tpchanger "chg-manual" # the tape-changer glue script
# Define qual o device que sera utilizado pelo amanda.
tapedev "/dev/nsa0"
# Define o diretorio no qual o database do amanda sera mantido.
infofile "/var/adm/amanda/fugspbr/curinfo"
# Define o diretorio no qual os logs do amanda serão gerados
logdir "/var/adm/amanda/fugspbr"
# Define o diretorio no qual o index do amanda será armazenado
indexdir "/usr/adm/amanda/fugspbr/index"
# Define o label template a ser utilizado pelo amanda, no nosso exemplo
# de fugspbr-001 a fugspbr-999
labelstr "^fugspbr-[0-9][0-9][0-9]*$"
# Define o numero de dias de um ciclo normal de dump
dumpcycle 4 weeks
# Define o numero de vezes que o amdump será executado no ciclo de dump adotado.
runspercycle 20
# Define o numero de tapes em rotação, em geral (runspercycle + 25 %)
tapecycle 25 tapes
# Define o numero minimo de dias em cada nivel do dump.
bumpdays 1 # minimum days at each level
# Define o volume de dados do backup incremental diario, em MB, apartir
# do qual o dump mudará de nivel, no exemplo quando o backup nivel 1
# atingir 20 Mb o proximo backup sera nivel 2.
bumpsize 20 Mb
# threshold = bumpsize * bumpmult^(level-1) , esta formula define quando ocorrerá
# a transição para os proximos niveis do backup. No nosso exemplo:
# 1 -> 2 quando atingir 20 Mb
# 2 -> 3 quando atingir 40 Mb
# 3 -> 4 quando atingir 80 Mb
# 4 -> 5 quando atingir 160 MB
bumpmult 2
# Define o tempo em segundos que o amanda pode gastar para levantar quais
# arquivos backupear de cada FS
etimeout 300
# Define o tempo idle, em segundos, antes de um dump ser abortado.
dtimeout 1800
# Define o tempo maximo, em segundos, que o amcheck aguarda por cada cliente.
ctimeout 30
# Define a banda maxima em KB/s que pode ser consumida na rotina de backup.
netusage 600 Kbps
# Define o tamanho do buffer a ser alocado para a unidade de fita, em blocos de 32 K.
tapebufs 20
# Define o tipo de unidade de fita a ser utilizada.
tapetype HP-DAT
# Define uma area temporaria para os dados serem armazenados antes de
# serem gravados no Tape.
holdingdisk hd1 {
comment "Area temporaria do backup"
directory "/dumps/amanda" # Diretorio a ser utilizado
use 290 Mb # Espaço maximo que pode ser alocado
}
# Define as caracteristicas da sua unidade de fita.
# Os demais tipos podem ser vistos em /usr/local/share/amanda/TAPETYPES
define tapetype HP-DAT {
comment "DAT tape drives"
length 1930 mbytes
filemark 111 kbytes
speed 468 kbytes
}
# Define a largura de banda disponivel para backups locais
define interface local {
comment "Disco Local"
use 1000 kbps
}
# Define a largura de banda disponivel para backups via xl0
define interface xl0 {
comment "100 Mbps ethernet"
use 600 kbps
}
#
# Define os tipos de dump
# Alguns exemplos default:
#
define dumptype global {
comment "Global definitions"
}
define dumptype always-full {
global
comment "Full dump of this filesystem always"
compress none
priority high
dumpcycle 0
}
define dumptype root-tar {
global
program "GNUTAR"
comment "root partitions dumped with tar"
compress none
index
priority low
}
define dumptype user-tar {
root-tar
comment "user partitions dumped with tar"
priority medium
}
define dumptype high-tar {
root-tar
comment "partitions dumped with tar"
priority high
}
define dumptype comp-root-tar {
root-tar
comment "Root partitions with compression"
compress client fast
}
define dumptype comp-user-tar {
user-tar
compress client fast
}
define dumptype holding-disk {
global
comment "The master-host holding disk itself"
holdingdisk no # do not use the holding disk
priority medium
}
define dumptype comp-user {
global
comment "Non-root partitions on reasonably fast machines"
compress client fast
priority medium
}
define dumptype nocomp-user {
comp-user
comment "Non-root partitions on slow machines"
compress none
}
define dumptype comp-root {
global
comment "Root partitions with compression"
compress client fast
priority low
}
define dumptype nocomp-root {
comp-root
comment "Root partitions without compression"
compress none
}
define dumptype comp-high {
global
comment "very important partitions on fast machines"
compress client best
priority high
}
define dumptype nocomp-high {
comp-high
comment "very important partitions on slow machines"
compress none
}
define dumptype nocomp-test {
global
comment "test dump without compression, no /etc/dumpdates recording"
compress none
record no
priority medium
}
define dumptype comp-test {
nocomp-test
comment "test dump with compression, no /etc/dumpdates recording"
compress client fast
}
################# FIM ################
B) Configurando o Cron
Adicione as linhas abaixo no seu /etc/crontab:
0 16 * * * root /usr/local/bin/amcheck -m fugspbr
0 0 * * * root /usr/local/bin/amdump fugspbr
Com estas linhas, as 16:00 horas o amcheck vai verificar se existe uma fita disponivel no tape, em caso negativo ele envia uma msg para as pessoas listas na variavel "mailto" avisando. A meia noite os backup serão iniciados.
C) Configurando o services:
Adicione as seguintes linhas ao seu /etc/services:
amanda 10080/udp
amandaidx 10082/tcp
amidxtape 10083/tcp
D) Configurando o inetd.
Para habilitar o uso dos recursos de indexação será necessario adicionar as seguintes linhas ao seu /etc/inetd.conf.
amandaidx stream tcp nowait operator /usr/local/libexec/amanda/amindexd amindexd
amidxtape stream tcp nowait operator /usr/local/libexec/amanda/amidxtaped amidxtaped
amanda dgram udp wait operator /usr/local/libexec/amanda/amandad amandad
Lembre-se de dar um kill -HUP no pid do inet
E) Configurando o .amandahosts
Para voce realizar o backup do servidor é necessario adicionar o nome do servidor no arquivo ~operator/.amandahosts