Instalação do Grafana 11> com integração com Zabbix – (Debian 11 Bullseye/12 Bookworm)

O Grafana é um software livre que permite a visualização de formato de dados métricos. Ele permite criar painéis e gráficos a partir de várias fontes, e neste tutorial vamos aprender a instala-lo e integrar com o Zabbix.

Requisitos:

Debian
Instalação Debian 12 Bookworm
Instalação Debian 11 Bullseye
Zabbix:
Instalação do Zabbix 7 LTS + NGINX + PostgreSQL + Debian 12 Bookworm
Instalação do Zabbix 6 LTS + NGINX + PostgreSQL + Debian 12 Bookworm
Instalação do Zabbix 6 LTS + NGINX + PostgreSQL + Debian 11 Bullseye

Vamos baixar a key do repositório e adiciona-lo

# apt install gnupg2 apt-transport-https software-properties-common wget
# wget -q -O - https://apt.grafana.com/gpg.key | \
 gpg --dearmor | tee /etc/apt/keyrings/grafana.gpg > /dev/null
# echo "deb [signed-by=/etc/apt/keyrings/grafana.gpg]\
 https://apt.grafana.com stable main" > /etc/apt/sources.list.d/grafana.list

Atualize o repositório e instale o grafana

# apt update; apt install grafana -y 

Já aconteu dos desenvolvedores remover do repositório o pacote grafana, nesse caso acesse:
https://grafana.com/grafana/download?edition=oss e faça a instalação de forma manual.

Proxy com Nginx grafana

Se você esta usando como servidor web o Nginx para acessar o grafana através de um domínio faça: (se o seu for apache pule)

# vim /etc/nginx/sites-available/grafana.conf

Adicione:

server {
    listen 80;
    listen [::]:80;

    server_name grafana.remontti.com.br;

    # Descomente para restringir o acesso apenas aos IPs Listados
    # allow 127.0.0.1;
    # allow ::1;
    # allow 192.168.0.0/16;
    # allow 2801:db8::/32;
    # deny  all;
    # error_page  403   http://www.remontti.com.br;
 
    location / {
        proxy_pass http://127.0.0.1:3000;  # Porta padrão do Grafana
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_read_timeout 90;

        # Suporte a WebSocket
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_cache_bypass $http_upgrade;
    }
}

Cria o link para sites-enabled em seguida verifique as configurações e reinicie o serviço.

# ln -s /etc/nginx/sites-available/grafana.conf /etc/nginx/sites-enabled/
# nginx -t
# systemctl restart nginx

Proxy com Apache grafana

Se você esta usando como servidor web o Apache para acessar o grafana através de um domínio faça:

# a2enmod rewrite; a2enmod headers; a2enmod proxy ; a2enmod proxy_http ; 
mkdir /var/www/grafana
# vim /etc/apache2/sites-available/grafana.conf

Adicione:

<VirtualHost *:80>
	Protocols h2 http/1.1
	ServerName grafana.remontti.com.br
	ServerAdmin noc@remontti.com.br
	DocumentRoot /var/www/grafana

	ErrorDocument 403 http://www.remontti.com.br

	<Directory /var/www/grafana/>
		Options Indexes FollowSymLinks
		AllowOverride all
		# Descomente para restringir o acesso apenas aos IPs Listados
		# Require ip 127.0.0.1 ::1 200.200.200.0/26 2001:db8:cafe::/48
	</Directory>

	LogLevel warn

	ProxyPreserveHost On
	ProxyPass / http://127.0.0.1:3000/
	ProxyPassReverse / http://127.0.0.1:3000/

	ErrorLog ${APACHE_LOG_DIR}/grafana_error.log
	CustomLog ${APACHE_LOG_DIR}/grafana_access.log combined
	TransferLog ${APACHE_LOG_DIR}/grafana_access.log

</VirtualHost>

Ative a nova configuração e reinicie o Apache:

# a2ensite grafana
# systemctl restart apache2

Vamos fazer alguns ajustes:

# vim /etc/grafana/grafana.ini

Como utilizei um proxy irei executar o grafana apenas em modo localhost para que a porta 3000 fique aberta apenas para ele mesmo. Localize ;http_addr = e deixe assim:

http_addr = 127.0.0.1

Em ;domain = ajuste para seu domínio.

domain = grafana.remontti.com.br

E ajuste a ;root_url = %(protocol)s://%(domain)s:%(http_port)s/ para:

root_url = %(protocol)s://%(domain)s/

Instale o Plugin Zabbix

# grafana-cli plugins install alexanderzobnin-zabbix-app

É recomendado que mensalmente você faça atualizações dos plugins instalados, com o comando:

# grafana-cli plugins update-all

Depois da versão 11.1 existe um bug que acaba nao dando permissão para o usuário grafana ler/gravar em /var/lib/grafana/plugins, então corrija utilizando o comando:

# chown -R grafana: /var/lib/grafana/plugins

Agora sim colocamos o Grafana para iniciar junto com a inicialização, ativamos e inicializamos o serviço:

# systemctl daemon-reload
# systemctl enable grafana-server
# systemctl start grafana-server

Acesse em seu navegador seu “http://grafana._______.___.__” ou então http://IP_URL:3000 ou pela porta que você alterou. O nome de usuário padrão é admin e a senha padrão é admin.

Se caso perder a senha de admin pode resetar ela com o comando:

grafana-cli admin reset-admin-password admin


Ao fazer login pela primeira vez, você será solicitado a alterar sua senha.

Integração com a base de dados Zabbix

Acesse o Menu (1) Administration (2) Plugins(3) Localize o Zabbix e clique no mesmo.

Escreva na pesquisa (1) Zabbix e em seguida clique sobre (2)

Clique em Enable (1)

Volte ao Menu (1) abra Connections (2) Clique em Data sources (3)

Clique em Add data sourece

Escreve na busca (1) Zabbix e clique nele (2)

Agora em URL http://localhost/api_jsonrpc.php se você seguiu o tutorial do bloque para instalação do zabbix com domínio deve ter visto uma alias também para localhost, caso contrário informe os dados correto da URL do seu Zabbix.

Role mais um pouco e informe o usuário e senha do zabbix (eu gosto de criar um usuário só para isso)

Clique em Save & test (1) Se tudo ocorrer bem você receberá uma mensagem de sucesso (2)

Volte ao Menu, Connections, Data source (1) e clique em Add new data source (2)

Iremos adicionar o Postgresql para otimizar as consultas no zabbix, isso faz total diferença em otimização! Então pesquise (1) por Postgresql e clique sobre (2)

Informe os dados de conexão com o Postgres qual usou na instalação da base do zabbix.

Role para baixo e selecione a versão (1) do seu PostgreSQL. Para Debian 12 a versão é a 15, e para Debian 11 a versão é a 13. Em Seguida Clique em Save & Test (2) Se uma mensagem de sucesso (3) aparecer tudo funcionou!

Volte ao Menu, Connections, Data source (1) e clique em Zabbix (2)

Role até achar Direct DB Connection (1) e clique em enable (2), em Data Source selecione PostgreSQL (3) em seguida clique em Save & Test (4), você receberá uma mensagem de sucesso (5)

Agora vem a parte mais “legal” que é você montar seus gráficos, como isso é algo bem peculiar de cada um, o intuito aqui era ensinar instalar. Recomendo a leitura de Introdução ao Grafana-Zabbix do autor do plugin.

Simples né? Gostou e quer me ajudar? 🙂

Se quiser fazer uma doação para o café ficarei muito feliz pelo seu reconhecimento!

Se não puder doar pode deixar seu agradecimento nos comentário também ficarei feliz em saber que ajudei. Se tiver qualquer pergunta deixe-a também. Se preferir entrar em Contato clique aqui.

Abraço!

Fontes:
https://grafana.com/docs/grafana/latest/installation/debian/
https://grafana.com/grafana/plugins/alexanderzobnin-zabbix-app
https://www.zabbix.com/documentation/

Rudimar Remontti

Trabalho atualmente como Gerente de Redes em um Provedor de Internet no Rio Grande do Sul.

Você pode gostar...

14 Resultados

  1. Beto disse:

    Uma duvida, é interessante manter no mesmo servidor do zabbix o ideal é uma VM para cada aplicação (Zabbix / Grafana)
    Operação pequenininha, nada grandioso…

  2. Andre Cafalchio disse:

    Preciso de um Help, fiz toda a instalação correta, tanta do zabbix quanto da grafana, porem quando vou la habilitar o plugin do zabbix ele aparece para instalar e nao ativar. E se eu aperto para instalar ele da erro e nao vai para a frente.

  3. Roberto disse:

    Muito bom o tutorial!
    Porém para mim uso o zabbix 7.0 e instalei o Grafana 11, conforme descrito aqui, porém meu plugin não instala, aparece a mensagem de erro: Failed to install plugin

    Alguma dica?

  4. EUEMERSON OLIVEIRA disse:

    instalei o zabbix, e grafana no mesmo debian 12, porem o grafana depois de todas as configuraçoes não abre nem via ip na porta 3000 nem via nomes, da pagina recusada, alguem passou por isso?

  5. paulo disse:

    O meu estar dando esse erro na parte de colocar o URL no Data sources do grafana

  6. JEFFERSON MAXMILIANO OLIVEIRA DAS MERCES disse:

    no grafana na URL: http://127.0.0.1/api_jsonrpc.php. Colocando assim resolveu meu problema

  7. Franklin Oliveira disse:

    Tutoriais fantásticos como sempre!

  8. Pessoal ja venho trabalhando com o grafana a bastante tempo, mais hoje tive que instalar um novo e o mesmo funciona tudo tranquilo no pc e no celular vai de boa sem problemas , mais estou com um problema com a tv lg smart esta dando esse erro:
    alguem tem alguma solucao ???

    If you’re seeing this Grafana has failed to load its application files

    1. This could be caused by your reverse proxy settings.

    2. If you host grafana under subpath make sure your grafana.ini root_url setting includes subpath. If not using a reverse proxy make sure to set serve_from_sub_path to true.

    3. If you have a local dev build make sure you build frontend using: yarn start, yarn start:hot, or yarn build

    4. Sometimes restarting grafana-server can help

    5. Check if you are using a non-supported browser. For more information, refer to the list of [supported browsers](https://grafana.com/docs/grafana/latest/installation/requirements/#supported-web-browsers).

  9. Muito Bem organizado e bem explicado, porém, seguindo todo o passo-a-passo “ao pé da letra”, quando vamos adicionar o Datasource Zabbix, simplesmente da erro ( request failed, status: 404 Not Found ).
    Já tentei tudo o que pude imaginar. Teria alguma idéia do que eu possa fazer para deixar o Zabbix e o grafana rodando nos mesmos padrões ?

    Obs.: Apenas não fiz apontamento dns para o ip público do debian.

    • Eric disse:

      Aqui eu precisei mudar de http para https no api do zabbix e também usei o nome do subdomínio dele, pois por ip dava que n tinha certificado válido e deu td certo.
      Só queria saber quando preciso usar esse proxy grafana.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *