Zabbix é uma ferramenta dedicada ao monitoramento de infraestruturas de TI, como servidores, redes e aplicações, baseando-se em limiares predeterminados.

Incorporar inteligência artificial como complemento permitiria mitigar alertas baseados nesses limiares, oferecendo possíveis causas e soluções para os problemas. Isso guiaria o usuário na resolução de incidentes de maneira mais eficiente.

Neste artigo, vamos explicar como realizar a integração entre o Zabbix e a ferramenta de Inteligência Artificial (IA) da Google, o Gemini, utilizando a API disponibilizada pelo grupo, além de apresentar uma alternativa de widget personalizado para uso.

Primeiros passos para integração

Para implementar essa funcionalidade, é possóvel encontrar o repositório no GitHub baseado no modelo Google Gemini. Além disso, é necessário criar uma conta no Google AI Studio para obter a API requerida.

Configuração do script no Zabbix

No Zabbix, partindo da versão 7.0, acesse:

“Alerts” > “Scripts” > “Create Script”.

Para essa funcionalidade, atribuímos um nome como “Possível causa e solução”.

A seguir, configuramos os parâmetros com o evento do trigger e a API gerada no AI Studio.

Copie e cole o script do repositório mencionado no campo “Script“. Confira o resultado na imagem:

Aplicação no painel de problemas

Após a configuração, acesse o painel de alertas e selecione um alerta específico.

Clique em “AI Assistant” e, depois, na funcionalidade que nomeamos anteriormente como “Possível Causa e Solução”.

Nas imagens a seguir, apresentamos um exemplo de um agente instalado em um notebook:

Possível causa:

Possível solução:

A IA será capaz de fornecer uma solução com alta precisão de cada problema apresentado, permitindo otimizar os limiares predeterminados de maneira progressiva.

Utilizando o widget personalizado com IA:  “O que você faria?”

A criação de dashboards personalizados precisos para o usuário é fundamental. Pensando nisso, propomos a criação de um widget baseado em IA chamado “O que você faria?”, que analisa o estado atual do problema apresentado no Zabbix.

Este conceito integra todas as funcionalidades presentes no widget (tais como Resumo, Perspectivas, Diagnóstico, Comparação, Previsão), já que o prompt utilizado pode indicar se é necessário realizar ajustes no plano estratégico ou prever tendências futuras baseadas nos dados do painel construído.

Para exemplificar como o widget “O que você faria?” funciona, vamos considerar a análise do uso de disco em nosso Zabbix Server.

Criação de widgets personalizados na página oficial do Zabbix.

Uma vez tendo o conhecimento para o projeto, no backend do nosso Zabbix Server, localizamos o caminho:

/usr/share/zabbix/widgets/

A partir disso, criamos uma pasta chamada insights e copiamos o repositório disponível neste link.

É necessário colocar a API do Gemini no arquivo “assets/js/class.widget.php.js” no campo “YOUR_API_KEY”.

No frontend, vá até “Administration” > “General” > “Modules”.

No canto superior direito, clique em “Scan Directory”.

Já temos nosso widget pronto para utilização:

Após realizar o “Scan Directory”, é necessário habilitar o widget, pois ele vem desabilitado por padrão.

Importância de usar IA no Zabbix

Imagine um cenário com 100 servidores monitorados. Os limiares de desempenho, serviços do Windows ou outros serviços específicos poderiam gerar cerca de 50 alertas semanais.

Com o uso de IA, é possível reduzir esse número para menos da metade, graças à coleta semanal de possíveis causas e soluções. Esse enfoque não só permite resolver problemas mais rapidamente, como também minimiza os ajustes necessários no Zabbix Server, melhorando, assim, a saúde geral do monitoramento.

Implementando localmente a IA  

Utilizando um servidor dedicado com modelos de IA de código aberto como HuggingFace, é possível implementar a IA localmente, criando um banco de dados e coletando as possíveis causas e soluções dos eventos.

A IA aprende com eventos repetitivos, possibilitando a oferta de respostas mais precisas no futuro. A análise de possíveis tendências tem como base os alertas gerados.

Assim, não só otimizamos os alertas, mas também a inteligência artificial para compreender e resolver os problemas.

Conclusão

O modelo que usamos é voltado para projetos. Estamos em constante evolução da IA e devemos utilizar aquela que melhor conhecemos.

Cada linguagem é distinta devido à orientação dos prompts utilizados para as respostas e ao aprendizado que podemos fornecer, seja fazendo solicitações às plataformas específicas de inteligência artificial ou utilizando-a localmente.

 

Inscrever-se
Notificar de
6 Comments
mais antigos
mais recentes Mais votado
Feedbacks embutidos
Ver todos os comentários
Marcello Azeredo
22 dias atrás

Excelente trabalho e tem me ajudado muito.
Se me permite uma pergunta, como fica o arquivo widget.view.php ?

Marcello Azeredo
22 dias atrás
Responder para  Cesar Caceres

Me refiro ao conteúdo do arquivo widge.view.php para poder exibir o menu drop down com as opções e a caixa de texto com a resposta do Gemini. Como ficou o seu código?

caixa
Marcello Azeredo
21 dias atrás
Responder para  Cesar Caceres

Sim, mas eu devo estar fazendo algo errado, pois o widget não exibe nada. Por isso achei que fosse necessário um PHP que exiba o dorpdown.
Pra mim, depois que eu escolho o widget, ele não aparece nem o menu dropdown. Você não precisou criar um arquivo “/usr/share/zabbix/widgets/insights/views/widget.view.php” ?

caixa
6
0
Adoraria saber sua opinião, comente.x