Mudanças entre as edições de "Backup em HD usando o Amanda"
(11 revisões intermediárias por 3 usuários não estão sendo mostradas) | |||
Linha 23: | Linha 23: | ||
Esse parâmetros podem ser alterados no /etc/amanda/DailySet1/amanda.conf, na seção: | Esse parâmetros podem ser alterados no /etc/amanda/DailySet1/amanda.conf, na seção: | ||
− | dumpcycle | + | dumpcycle 1 week |
tapecycle 28 tapes | tapecycle 28 tapes | ||
Linha 29: | Linha 29: | ||
dumpcycle 2 weeks | dumpcycle 2 weeks | ||
− | tapecycle | + | tapecycle 28 |
− | As fitas virtuais ficarão em /backups e o usuário com que o Amanda irá rodar é o | + | As fitas virtuais ficarão em /backups e o usuário com que o Amanda irá rodar no Ubuntu é o usuário "backup" e grupo "backup" (mas no Mandriva é usuário "amanda" e grupo "disk"). Este usuário e grupo são criados ao instalar-se os pacotes do Amanda no Ubuntu, porém pode variar em outras distribuições. |
− | Resta agora decidir o tamanho que cada fita virtual terá. Nesse exemplo escolhemos 40 GB por fita, o que dá um espaço alocado de 1,12 TB para ''backups''. Não necessariamente você deverá dispor deste espaço imediatamente. | + | Resta agora decidir o tamanho que cada fita virtual terá. Nesse exemplo escolhemos 40 GB por fita, o que dá um espaço alocado de 1,12 TB para ''backups''. Não necessariamente você deverá dispor deste espaço imediatamente. Saiba que '''o tamanho da fita (''slot'') deve ser maior que a maior partição a ser feito o ''backup''''' definida em disklist, mais adiante. |
==Instalação e Configuração: Servidor== | ==Instalação e Configuração: Servidor== | ||
Linha 45: | Linha 45: | ||
cp -rf /etc/amanda/DailySet1 /etc/Amanda/Cefet | cp -rf /etc/amanda/DailySet1 /etc/Amanda/Cefet | ||
− | Agora edite o arquivo /etc/amanda/Cefet/amanda.conf, edite/apague seu conteúdo deixando-o no formato do modelo abaixo. Lembrando que o que vem depois do sinal # é considerado comentário e será ignorado pelo Amanda: | + | Agora edite o arquivo '''/etc/amanda/Cefet/amanda.conf''', edite/apague seu conteúdo deixando-o no formato do modelo abaixo. Lembrando que o que vem depois do sinal # é considerado comentário e será ignorado pelo Amanda: |
org "Cefet" # Nome descritivo para as mensagens | org "Cefet" # Nome descritivo para as mensagens | ||
Linha 90: | Linha 90: | ||
} | } | ||
− | Crie o arquivo /etc/amanda/Cefet/changer.conf para definir as características das "fitas" e coloque o seguinte: | + | Crie o arquivo '''/etc/amanda/Cefet/changer.conf''' para definir as características das "fitas" e coloque o seguinte: |
multieject 0 | multieject 0 | ||
Linha 107: | Linha 107: | ||
slot 28 file:/backups/Cefet28 | slot 28 file:/backups/Cefet28 | ||
− | Agora a vez é do /etc/amanda/Cefet/disklist, que irá definir quais máquinas terão quais diretórios armazenados, lembre-se que, caso queira fazer ''backup'' de algum diretório do próprio servidor, ele deve aparacer na lista. | + | Crie o arquivo de exeções: |
+ | touch /etc/amanda/Cefet/exclude.gtar | ||
+ | |||
+ | Agora a vez é do '''/etc/amanda/Cefet/disklist''', que irá definir quais máquinas terão quais diretórios armazenados, lembre-se que, caso queira fazer ''backup'' de algum diretório do próprio servidor, ele deve aparacer na lista. | ||
# O nome da máquina deve ser o que está no DNS (ou no /etc/hosts) | # O nome da máquina deve ser o que está no DNS (ou no /etc/hosts) | ||
Linha 117: | Linha 120: | ||
Os nomes das máquinas clientes devem estar definidas no seu /etc/hosts ou no seu DNS. | Os nomes das máquinas clientes devem estar definidas no seu /etc/hosts ou no seu DNS. | ||
− | A seguir iremos criar os diretórios das fitas virtuais | + | A seguir iremos '''criar os diretórios e sub-diretórios das fitas virtuais''': |
− | |||
− | |||
− | |||
− | |||
mkdir -p /backups/Cefet01/data | mkdir -p /backups/Cefet01/data | ||
Linha 133: | Linha 132: | ||
chown -R amanda:disk /etc/amanda | chown -R amanda:disk /etc/amanda | ||
− | + | Edite o '''/var/lib/amanda/.amandahosts''' para permitir o acesso do usuário que irá realizar o ''backup'' e restauração de arquivos, no caso o amanda para ''backup'' e o root para restauro. Acrescente essas linhas: | |
− | |||
− | |||
#servidor usuário | #servidor usuário | ||
Linha 142: | Linha 139: | ||
maquina1.meudominio.com.br amanda | maquina1.meudominio.com.br amanda | ||
maquina2.meudominio.com.br amanda | maquina2.meudominio.com.br amanda | ||
+ | localhost root | ||
+ | localhost.localdomain root | ||
+ | maquina1.meudominio.com.br root | ||
[...] | [...] | ||
− | O Amanda não é um servidor propriamente dito, ele simplesmente acesse e resposnde a determinadas portas. É necessário então iniciar os serviços de rede do Amanda, para que o ''backup'' e os ''restores'' possam ser feitos. Isso é definido através do super-servidor xinet. Ao instalarmos o Amanda o Mandriva já configurou o xinet, mas deixou suas portas "travadas" por questão de segurança, devemos "destravá-las". Para isto basta editarmos os arquivos /etc/xinetd.d/amanda, /etc/xinetd.d/amandaidx e /etc/xinetd.d/amidxtape e habilitarmos os serviços, mudando a diretiva diseble de '''yes''' para '''no''' nos 3 arquivos. | + | O Amanda não é um servidor propriamente dito, ele simplesmente acesse e resposnde a determinadas portas. É necessário então iniciar os serviços de rede do Amanda, para que o ''backup'' e os ''restores'' possam ser feitos. Isso é definido através do super-servidor xinet. Ao instalarmos o Amanda o Mandriva já configurou o xinet, mas deixou suas portas "travadas" por questão de segurança, devemos "destravá-las". Para isto basta editarmos os arquivos '''/etc/xinetd.d/amanda''', '''/etc/xinetd.d/amandaidx''' e '''/etc/xinetd.d/amidxtape''' e habilitarmos os serviços, mudando a diretiva diseble de '''yes''' para '''no''' nos 3 arquivos. |
disable = no | disable = no | ||
Linha 154: | Linha 154: | ||
su - amanda | su - amanda | ||
− | Crie o arquivo de lista de tapes, que será posteriormente preenchido pelo Amanda: | + | '''Crie o arquivo de lista de tapes''', que será posteriormente preenchido pelo Amanda: |
touch /etc/amanda/Cefet/tapelist | touch /etc/amanda/Cefet/tapelist | ||
− | Agora vamos etiquetar as fitas virtuais, para uso do Amanda: | + | Agora vamos '''etiquetar as fitas virtuais''', para uso do Amanda: |
/usr/sbin/amlabel Cefet Cefet01 slot 1 | /usr/sbin/amlabel Cefet Cefet01 slot 1 | ||
Linha 165: | Linha 165: | ||
[...] | [...] | ||
/usr/sbin/amlabel Cefet Cefet28 slot 28 | /usr/sbin/amlabel Cefet Cefet28 slot 28 | ||
+ | Vamos editar a agendada de tarefas (cron) para realizar os ''backups'' às 23 h de segunda a sexta-feira, por exemplo. Edite ('''crontab -e''') o crontab e acrescente a seguinte linha: | ||
+ | 0 23 * * 1-5 /usr/sbin/amdump Cefet | ||
==Instalação e Configuração: Clientes== | ==Instalação e Configuração: Clientes== | ||
Linha 207: | Linha 209: | ||
Caso tenha algum aviso de arquivo ou diterório faltando, crie-os e mude seu dono e grupo para '''amanda:disk'''. Repita o teste. | Caso tenha algum aviso de arquivo ou diterório faltando, crie-os e mude seu dono e grupo para '''amanda:disk'''. Repita o teste. | ||
− | ==[[ | + | ==[[Backup – uso do software Amanda | Como usar alguns recursos do Amanda]]== |
+ | |||
+ | {{POINF}} |
Edição atual tal como às 08h28min de 11 de março de 2010
Esta é uma adaptação do tutorial Backup em HD com Amanda, objetivando adequar o mesmo a realidade do Mandriva e mudando a quantidade de "fitas".
Realizando backups em HD com Amanda
Todo administrador de sistemas sabe que o backup é uma parte vital da segurança e garantir sua realização e integridade é crítico no seu cotidiano.
Existem muitas alternativas de backups destinadas a todos os tamanhos de rede e bolso, e o Amanda (Advanced Maryland Automatic Network Disk Arquiver) é sempre citado como uma alternativa livre e gratuita.
Porém o Amanda é comumente utilizado para realizar backups em fita, o que nem é sempre econômico, já que hoje em dia HDs são muito baratos e certamente mais práticos para uma pequena empresa utilizar.
É perfeitamente possível ter um Amanda realizando backups no disco rígido, e como realizar isso é a que nos propomos neste artigo.
Estratégia de backups e definições
Iremos criar no HD 25 fitas "virtuais", que serão diretórios no HD. O Amanda considera que será rodado uma vez por dia.
O Amanda pode realizar backups completos (full) e incrementais. Você pode decidir a freqüência e a retenção (por quanto tempo ficarão armazenados) desses backups.
Nesse artigo escolhemos realizar um backup completo uma vez por semana e incrementais seis vezes por semana, criando um ciclo semanal.
A retenção é feita por quatro semanas, com uma fita virtual por backup.
Esse parâmetros podem ser alterados no /etc/amanda/DailySet1/amanda.conf, na seção:
dumpcycle 1 week tapecycle 28 tapes
Se quiser realizar dois backups completos em um mês, por exemplo, altere para:
dumpcycle 2 weeks tapecycle 28
As fitas virtuais ficarão em /backups e o usuário com que o Amanda irá rodar no Ubuntu é o usuário "backup" e grupo "backup" (mas no Mandriva é usuário "amanda" e grupo "disk"). Este usuário e grupo são criados ao instalar-se os pacotes do Amanda no Ubuntu, porém pode variar em outras distribuições.
Resta agora decidir o tamanho que cada fita virtual terá. Nesse exemplo escolhemos 40 GB por fita, o que dá um espaço alocado de 1,12 TB para backups. Não necessariamente você deverá dispor deste espaço imediatamente. Saiba que o tamanho da fita (slot) deve ser maior que a maior partição a ser feito o backup definida em disklist, mais adiante.
Instalação e Configuração: Servidor
No servidor instale o Amanda. A versão 2.4.5 foi utilizada neste tutorial:
urpmi amanda
Após feita a instalação, vamos configurá-lo. Como primeiro passo recomenda-se fazer uma cópia de todo o diretório de configuração do Amanda para um com nome sugestivo para o seu caso. Em nosso exemplo vou utilizar Cefet.
cp -rf /etc/amanda/DailySet1 /etc/Amanda/Cefet
Agora edite o arquivo /etc/amanda/Cefet/amanda.conf, edite/apague seu conteúdo deixando-o no formato do modelo abaixo. Lembrando que o que vem depois do sinal # é considerado comentário e será ignorado pelo Amanda:
org "Cefet" # Nome descritivo para as mensagens mailto "sysadmin@dominio.com" # Email de quem irá receber os logs. Pode ser mais de 1 separado por espaço dumpuser "amanda" # Usuário dono dos backups inparallel 4 # Procesos em paralelo netusage 600 # Uso máximo de banda em Kbps dumpcycle 4 weeks # Número de dias de um ciclo completo tapecycle 28 tapes # Número de "fitas" runtapes 1 # Quantas fitas usar por ciclo tpchanger "chg-multi" # Script controlador de fitas changerfile "/etc/amanda/Cefet/changer.conf" # Configuração das fitas tapetype HARD-DISK # Tipo de armazenamento labelstr "^Cefet[0-9][0-9]*$" # Expressão regular das etiquetas das fitas infofile "/var/lib/amanda/Cefet/curinfo" # Diretório de dados logfile "/var/log/amanda/Cefet/log" # Diretório de log indexdir "/var/lib/amanda/Cefet/index" # Diretório de índice amrecover_changer "chg-multi" # Seleciona as fitas automaitcamente no restore # definição de arquivamento com dump define dumptype hard-disk-dump { comment "Backup no HD - usando dump" holdingdisk no index yes options compress-fast, index, exclude-list "/etc/amanda/Cefet/exclude.gtar" priority high } # Definição do armazenamento com tar define tapetype HARD-DISK { comment "HD" length 40000 mbytes # 40 GB de espaço } # Definição de armazenamento com 'tar' define dumptype hard-disk-tar { program "GNUTAR" hard-disk-dump comment "Backup para disco - usando tar" }
Crie o arquivo /etc/amanda/Cefet/changer.conf para definir as características das "fitas" e coloque o seguinte:
multieject 0 gravity 0 needeject 0 ejectdelay 0 statefile /var/lib/amanda/Cefet/changer-status firstslot 1 lastslot 28 slot 01 file:/backups/Cefet01 slot 02 file:/backups/Cefet02 [...] slot 28 file:/backups/Cefet28
Crie o arquivo de exeções:
touch /etc/amanda/Cefet/exclude.gtar
Agora a vez é do /etc/amanda/Cefet/disklist, que irá definir quais máquinas terão quais diretórios armazenados, lembre-se que, caso queira fazer backup de algum diretório do próprio servidor, ele deve aparacer na lista.
# O nome da máquina deve ser o que está no DNS (ou no /etc/hosts) cliente.dominio.com /home hard-disk-tar cliente.dominio.com /var hard-disk-tar cliente.dominio.com /etc hard-disk-tar [...]
Os nomes das máquinas clientes devem estar definidas no seu /etc/hosts ou no seu DNS.
A seguir iremos criar os diretórios e sub-diretórios das fitas virtuais:
mkdir -p /backups/Cefet01/data mkdir -p /backups/Cefet02/data [...] mkdir -p /backups/Cefet28/data
Acerte a permissão de modo que o usuário de amanda possa escrever nesses diretórios:
chown -R amanda:disk /backups chown -R amanda:disk /etc/amanda
Edite o /var/lib/amanda/.amandahosts para permitir o acesso do usuário que irá realizar o backup e restauração de arquivos, no caso o amanda para backup e o root para restauro. Acrescente essas linhas:
#servidor usuário localhost amanda localhost.localdomain amanda maquina1.meudominio.com.br amanda maquina2.meudominio.com.br amanda localhost root localhost.localdomain root maquina1.meudominio.com.br root [...]
O Amanda não é um servidor propriamente dito, ele simplesmente acesse e resposnde a determinadas portas. É necessário então iniciar os serviços de rede do Amanda, para que o backup e os restores possam ser feitos. Isso é definido através do super-servidor xinet. Ao instalarmos o Amanda o Mandriva já configurou o xinet, mas deixou suas portas "travadas" por questão de segurança, devemos "destravá-las". Para isto basta editarmos os arquivos /etc/xinetd.d/amanda, /etc/xinetd.d/amandaidx e /etc/xinetd.d/amidxtape e habilitarmos os serviços, mudando a diretiva diseble de yes para no nos 3 arquivos.
disable = no
Reinicie o serviço xinet:
/etc/init.d/xinetd restart
Os próximos comandos serão dados como o usuário amanda:
su - amanda
Crie o arquivo de lista de tapes, que será posteriormente preenchido pelo Amanda:
touch /etc/amanda/Cefet/tapelist
Agora vamos etiquetar as fitas virtuais, para uso do Amanda:
/usr/sbin/amlabel Cefet Cefet01 slot 1 /usr/sbin/amlabel Cefet Cefet02 slot 2 /usr/sbin/amlabel Cefet Cefet03 slot 3 [...] /usr/sbin/amlabel Cefet Cefet28 slot 28
Vamos editar a agendada de tarefas (cron) para realizar os backups às 23 h de segunda a sexta-feira, por exemplo. Edite (crontab -e) o crontab e acrescente a seguinte linha:
0 23 * * 1-5 /usr/sbin/amdump Cefet
Instalação e Configuração: Clientes
A configuração no servidor está completa. Agora iremos para um cliente Linux, que pode ser o desktop de alguém ou seu Servidor Web, por exemplo. Caso esse cliente também esteja rodando Mandriva:
urpmi amanda-client
Agora, edite o '/var/lib/amanda/.amandahosts':
# nome da maquina usuario servidor.dominio.com amanda
Note que o nome do servidor deve estar definido no /etc/hosts do cliente ou no seu DNS interno. O mais fácil é definir no /etc/hosts, nesse formato:
192.168.1.110 servidor.dominio.com servidor
Estamos quase lá. É preciso que o seu cliente esteja escutando na rede para que, quando o servidor se conectar, ele consiga transferir os dados. Como explicado anteriormente, isso pode ser feito via xinet. Neste caso devemos editar o /etc/xinetd.d/amanda e mudarmos a diretirva disable conforme abaixo:
disable = no
Reinicie o serviço xinet:
/etc/init.d/xinetd restart
Testes
O teste mais básico e rápido para se fazer é com o amcheck.
/usr/sbin/amcheck Cefet
Se tudo correu bem você deve obter algo do tipo:
Amanda Tape Server Host Check ----------------------------- amcheck-server: slot 2: date 20071002 label Cefet02 (active tape) amcheck-server: slot 3: date X label Cefet03 (new tape) NOTE: skipping tape-writable test Tape Cefet03 label ok WARNING: tapecycle (28) <= runspercycle (28). Server check took 0.250 seconds Amanda Backup Client Hosts Check -------------------------------- Client check: 1 host checked in 10.099 seconds, 0 problems found (brought to you by Amanda 2.4.5)
Caso tenha algum aviso de arquivo ou diterório faltando, crie-os e mude seu dono e grupo para amanda:disk. Repita o teste.
Como usar alguns recursos do Amanda