Saudações, Habr!
Mais recentemente, a empresa em que trabalho começou a oferecer o Veeam como a principal ferramenta de backup. E tudo ficaria bem, mas mesmo no processo de familiarização, aconteceu o seguinte:
- As ferramentas da Veeam são aprimoradas no Windows, incluindo a implantação de um repositório centralizado;
- no Linux, existe apenas um agente Veeam;
Com base nisso, verifica-se que, se a organização usar apenas Linux, você não verá nenhum relatório. Ou compramos e instalamos o Windows, e já nele instalamos e configuramos tudo o que é necessário e a partir daí obtemos informações completas sobre os resultados do agente Veeam (Linux). Ou vamos a cada carro e vemos como foi o próximo "dia útil" do agente.
E chegou o dia em que havia uma pequena organização que usa apenas Linux e que realmente precisa fazer backups e, de preferência, de graça. Mas diariamente para monitorar como o agente trabalhava lá, quero centralmente, em vez de ataques maciços em servidores.
Para resolver esse problema, tive que ir às Perguntas frequentes no site da Veeam e ler o que podemos obter usando o console e os comandos disponíveis do agente veeam. A partir da leitura, nasceu um pequeno script do Bash que analisa o resultado da última tarefa e um espaço livre em uma pasta de rede projetada para armazenar backups.
Na verdade, quero compartilhar esse script. Eu aviso imediatamente, não sou bom em scripts, portanto críticas e sugestões são bem-vindas.
Como resultado do script, um relatório será preparado da seguinte maneira:
Start check on 10.09.2019 at 14:13:30 ------------------------------------------------------ Check Schedule job name: HP from Host: hp ------------------------------------------------------ Every day At: 23:00 Run automatically: enabled ------------------------------------------------------ Check latest session Job name: HP from Host: hp ------------------------------------------------------ Backup session ID: {555ebf40-2fb9-47cc-baf0-7192c0ae896e} Job name: HP Job ID: {435117d7-ace8-4009-9c51-b00e8174c252} State: Success Start time: 2019-09-06 22:43:19 End time: 2019-09-07 00:02:14 ------------------------------------------------------ Stop check on 10.09.2019 at 14:13:30 ------------------------------------------------------ Check files in backup repository: media media ------------------------------------------------------ Check free space on backup repository: % C //share/backup 1,8T 96G 1,7T 6% /media/backup_repository ------------------------------------------------------
Dependendo do método escolhido, o relatório será enviado por correio ou por telegrama (meu caso):

Resta adicionar a tarefa ao crontab, por exemplo, todos os dias às 9h.
0 9 * * * / scripts / check_veeam_backup.sh> / dev / null # Verificação diária às 9hAgora, o script é executado todas as manhãs e, quando o dia de trabalho começa, todas as informações sobre o trabalho dos agentes e o espaço disponível no servidor de backup estão disponíveis.
O script não está indo bem, especialmente com um nome de usuário e senha para montar uma pasta de rede, acesso ao qual apenas um usuário especial tem acesso. Mas se você permitir que este usuário leia apenas, haverá uma vantagem clara. Seus backups nunca serão esfregados por esse usuário, mesmo que por acidente.