Diferente de outros concorrentes, o Bacula (mesmo na versão Enterprise) possui Catálogo de metadados do backup em formato aberto. Com a crescente evolução da ciência de dados, isso é indispensável na obtenção de informações essenciais para a qualidade do serviço, previsão de problemas, visibilidade de gargalos e monitoração efetiva.
Como exibido na Figura 1, este artigo fornece um modelo de monitoração dos metadados em banco PostgreSQL do Bacula com o Grafana.
Figura 1. Template Grafana Bacula do Brasil
O nosso template exibe as seguintes informações:
- Total e list de jobs em execução.
- Jobs travados.
- Listagem dos últimos 500 Jobs terminados.
- Hora atual e último acesso do Director ao Catálogo.
- Espaço ocupado pelo banco de dados do Bacula no Disco.
- Transações por segundo médias do banco.
- Número de Clientes e Pools Configuradas.
- Ocupação de todos os volumes de backup (ex.: no Disco).
- Número total de volumes.
- Velocidade média dos backups, agregada por tipo de Job.
- Redução percentual média por compressão ou deduplicação dos backups, agregada por tipo de Job.
- Somatório do tamanho de todos os backups realizados para um mesmo Job.
Grafana
O Grafana é uma ferramenta de visualização de código aberto que pode ser usada em vários armazenamentos de dados diferentes, mas é mais comumente usada junto com o Graphite, o InfluxDB e também o Elasticsearch e o Logz.io. Ele contém um analisador único que permite fácil edição de métricas e funções.
Instalação
Existem pacotes de instalação e repositórios para vários sistemas operacionais no site do Grafana. No nosso caso, fizemos a instalação no CentOS 7 64 bits usando os seguintes comandos [1,2].
sudo yum localinstall https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-5.2.2-1.x86_64.rpm sudo yum install -y initscripts fontconfig freetype* urw-fonts firewall-cmd --permanent --zone=public --add-port=3000/tcp service firewalld restart sudo service grafana-server start sudo systemctl enable grafana-server.service grafana-cli plugins install grafana-piechart-panel
Nesse caso, já instalamos o plugin grafana-piechart-panel, utilizado pelo nosso template.
Para acessar o banco de dados PostgreSQL do Bacula, crie um usuário pgsql com apenas acesso leitura. Por exemplo:
CREATE USER grafanareader WITH PASSWORD 'password'; GRANT USAGE ON SCHEMA public TO grafanareader; GRANT SELECT ON all tables in schema public TO grafanareader;
Acesse o grafana pelo endereço: http://ip_servidor:3000. O usuário e senha iniciais são: admin/admin.
Conforme mostrado na Figura 2, crie um Datasource de acesso ao PostgreSQL hospedeiro do banco Bacula. Utilize no entanto o usuário grafanareader criado no passo anterior.
Figura 2. Criação Datasource Bacula Pgsql
Faça o download do nosso template de dashboard (json) AQUI [3]. Descompacte-o.
De acordo com a Figura 3, importe o dashboard através do arquivo json.
Figura 3. Importação Dashboard
Pronto! Desfrute dos painéis configurados e faça as modificações que quiser.
Trabalhos Futuros
O Grafana pode se integrar com o Collectd ou até mesmo com o Zabbix, fornecendo informações úteis sobre os recursos computacionais do servidor Bacula e do estado de execução de seus daemons, mas isso deve requerer o uso de outros datasources e será objeto de trabalhos futuros.
Outros Templates
- Grafana Dashboards by Molinux (PostgreSQL, Zabbix). https://github.com/molinux/grafana
- Bacula by hapito (MySQL). https://grafana.com/dashboards/4427
Referências
[1] https://grafana.com/grafana/download?platform=linux
[2] http://docs.grafana.org/installation/rpm/
[3] https://github.com/molinux/grafana
Disponível em: PortuguêsEnglish (Inglês)Español (Espanhol)
select JobID,Name,JobStatus,StartTime,Level,JobFiles,JobBytes FROM Job WHERE JobStatus=’R’ And Type=’B’ ORDER BY StartTime DESC;
não lista a quantidade files e bytes, fica sempre em zero.