O que há de novo no Zabbix 5.0

Em meados de maio foi lançada a versão Zabbix 5.0, e organizamos uma série de encontros online em diversos idiomas com o objetivo de demonstrar claramente à comunidade todas as mudanças e inovações. Convidamos você a ler o relatório de Alexey Vladyshev, diretor executivo e criador do Zabbix, no qual ele descreve passo a passo o que há de novo no Zabbix 5.0.

O que há de novo no Zabbix 5.0

Zabbix 4.2 e Zabbix 4.4

Vamos começar com as mudanças que apareceram na versão Zabbix 4.0 em relação ao uso das versões LTS.
Na versão Zabbix 4.2, lançada em abril de 2019, surgiram os seguintes recursos:

  • Monitoramento de aceleração de alta frequência que permite escalonamento e maior NVPS, significando detecção e alertas mais rápidos de problemas sem sobrecarregar o Zabbix.
  • Coletando dados usando um agente HTTP.
  • Suporte para coleta de dados do Prometheus Pro.
  • O pré-processamento suporta validação e JavaScript, o que permite transformar quaisquer dados coletados.
  • Pré-processamento do lado do proxy, que permite um dimensionamento mais eficiente com proxies.
  • Gerenciamento aprimorado de tags - metainformações no nível do evento e do problema, com as quais é conveniente trabalhar, porque as tags são suportadas tanto no nível do modelo quanto no nível do host.

Em setembro passado, foi lançado o Zabbix 4.4, que oferecia os seguintes recursos:

  • Novo agente Zabbix.
  • Suporte a webhook para alertas e notificações, permitindo integração com sistemas externos.
  • Suporte ao TimescaleDB.
  • A base de conhecimento integrada para métricas e gatilhos tornou-se visível para os usuários do Zabbix. Por exemplo, os usuários podem usar descrições de itens e gatilhos em Monitoramento > Dados mais recentes.
  • Um novo padrão para modelos.

Zabbix5.0

Hoje falaremos sobre o lançamento LTS do Zabbix 5.0, que terá suporte por 5 anos. O suporte para a versão 4.4 termina após um mês. A versão LTS do Zabbix 3.0 terá suporte por mais 3,5 anos.

O Zabbix fornece monitoramento de muitas coisas, cuja lista pode ser especificada na página http://www.zabbix.com/integrations, onde são apresentados templates e plugins de monitoramento, inclusive para o novo agente.

O que há de novo no Zabbix 5.0
Modelos disponíveis para monitoramento e integração

Além disso, existem possibilidades de integração com diversos sistemas, incluindo sistemas de tickets, sistemas ITSM e sistemas de entrega de mensagens utilizando Webhook.

O que há de novo no Zabbix 5.0
Opções de integração

O Zabbix 5.0 expandiu o suporte integrado para integração com vários sistemas de tickets, bem como sistemas de alerta:

O que há de novo no Zabbix 5.0
Integração com vários sistemas

A lista de modelos integrados para monitoramento de aplicativos e dispositivos foi ampliada:

O que há de novo no Zabbix 5.0
Modelos integrados para monitoramento de aplicativos e dispositivos

Todas as atualizações estão disponíveis para download em Repositório Git.

Qualquer usuário ou desenvolvedor pode participar do Zabbix com produtos prontos – templates ou plugins, através de um procedimento simples:

  1. Assinatura do Acordo Contributivo Zabbix (ZCA) em https://www.zabbix.com/developers.
  2. Publicar uma solicitação pull em https://git.zabbix.com.
  3. Revisão da aplicação pela equipe de desenvolvimento. Se um plugin ou template estiver em conformidade com os padrões Zabbix, ele será incluído no produto e o trabalho de tal desenvolvedor será oficialmente suportado pela equipe Zabbix.

Zabbix é um software de código aberto que pode ser visualizado, estudado e modificado. O usuário tem a oportunidade de usar livremente o produto, participar do refinamento do programa ou usar o código para seus próprios novos programas. Por outro lado, a equipe Zabbix faz todos os esforços para garantir que o Zabbix possa ser facilmente instalado em diversas plataformas.

Os desenvolvedores Zabbix oferecem pacotes para quase todas as distribuições mais populares e diversas plataformas de virtualização. Além disso, o Zabbix pode ser instalado em uma nuvem pública com um clique. O Zabbix também está disponível nas plataformas Red Hat Openshift ou OpenStack.

O que há de novo no Zabbix 5.0
Pacotes Zabbix para distribuições e plataformas

Suporte Zabbix Agent 2 para Windows e Linux

O novo Zabbix Agent 2 é uma das melhores soluções do mercado.

  • Oferece uma estrutura baseada em plugins e suporta scripts de coleta de dados que podem ser executados por horas.
  • Suporta varreduras ativas paralelas e conexões persistentes com sistemas externos, o que é útil, por exemplo, para monitoramento eficaz de bancos de dados.
  • Suporta traps e eventos, o que é importante para monitorar, por exemplo, dispositivos MQTT.
  • A nova versão do agente é fácil de instalar (já que o novo agente suporta todas as funcionalidades anteriores).

Além disso, o novo agente do Zabbix 5.0 oferece suporte para armazenamento persistente de dados. Anteriormente, as informações não enviadas eram armazenadas apenas na memória buffer do agente, mas na nova versão é possível configurar o armazenamento dessas informações em disco.

O que há de novo no Zabbix 5.0
Armazenamento permanente de dados

Isto é importante no caso de monitoramento de sistemas críticos e comunicações instáveis, pois uma grande quantidade de dados críticos é armazenada antes de ser enviada ao servidor Zabbix. A opção também é útil para conexões via satélite que podem não estar disponíveis por longos períodos de tempo.
IMPORTANTE! O Zabbix 5.0 mantém suporte para o Zabbix Agent 1.

Mudanças de segurança no Zabbix 5.0

1. A nova versão suporta proxy HTTP para webhook, que permite fazer conexões do servidor Zabbix com sistemas de alerta externos de forma mais segura e controlada.

Caso você precise integrar um servidor Zabbix em uma rede local com um sistema externo, por exemplo, JIRA na nuvem, você pode manter a conexão através de um proxy HTTP, o que melhora a controlabilidade e confiabilidade da conexão.

2. Tanto para o agente antigo quanto para o novo, é possível selecionar quais cheques devem estar disponíveis em um determinado agente. Por exemplo, você pode limitar o número de verificações, essencialmente criando listas brancas e negras, e definir chaves suportadas.

  • Lista de permissões para verificações relacionadas ao MySQL
    AllowKey=mysql[*] 
    DenyKey=*
  • Lista negra para negar todos os scripts de shell
    DenyKey=system.run[*]
  • Lista negra para negar acesso a /etc/password
    DenyKey=vfs.file.contents[/etc/passwd,*]

3. É possível selecionar algoritmos de criptografia para todos os componentes do Zabbix para evitar o uso de cifras inseguras para conexões TLS. Isto é importante para monitorar ambientes onde se aplicam determinados padrões de segurança.

O que há de novo no Zabbix 5.0
Selecionando algoritmos de criptografia para conexões TLS

4. O Zabbix 5.0 introduziu suporte para conexões criptografadas com o banco de dados. Atualmente, apenas conexões criptografadas com PostgreSQL e MySQL estão disponíveis.

O que há de novo no Zabbix 5.0
Conexões de banco de dados criptografadas

5. O Zabbix 5.0 mudou de MD5 para SHA256 para armazenar hashes de senhas de usuários no banco de dados, pois este é o algoritmo mais seguro no momento.

6. O Zabbix 5.0 suporta macros de usuário secretas para armazenar qualquer informação sensível, como senhas e tokens de API, às quais os usuários finais não têm acesso.

O que há de novo no Zabbix 5.0
Macros secretas

7. Todas as conexões do Zabbix com sistemas externos e conexões internas com agentes são seguras. A criptografia é suportada usando certificados TLS ou usando uma criptografia de chave pré-compartilhada para conexão com agentes e proxies ou HTTPS. A segurança do lado do agente pode ser aprimorada por meio de listas brancas e negras. A interface funciona via HTTPS.

O que há de novo no Zabbix 5.0
Conexões seguras

8. Suporte SAML para fornecer um ponto único de autenticação com um provedor de serviços de identidade confiável, para que as credenciais do usuário não saiam do firewall.

O que há de novo no Zabbix 5.0
Identidade SAML

O suporte SAML permite integrar o Zabbix com vários provedores de serviços de identidade locais e em nuvem, como Microsoft ADFS, OpenAM, SecurAuth, Okta, Auth0, bem como Azure, AWS ou Google Cloud Platform.

Facilidade de uso do Zabbix 5.0

1. Interface de usuário otimizada para telas amplas. Movemos o menu da parte superior, onde sempre há espaço para espaço, para o lado esquerdo da tela. O menu ainda é exibido nos modos completo, mínimo e oculto.

O que há de novo no Zabbix 5.0
Interface otimizada para tela ampla

2. Copiando widgets de painéis permite criar novos PAINÉIS muito rapidamente. Para fazer isso, você precisa selecionar o widget desejado no PAINEL, clicar em Copiar

O que há de novo no Zabbix 5.0
Copiando um widget

e insira o widget no painel desejado.

O que há de novo no Zabbix 5.0
Colando um widget copiado

3. Exportar gráficos. Para copiar o gráfico e enviá-lo, por exemplo, por email, você pode obter o gráfico no formato PNG selecionando o widget desejado e clicando Baixe a imagem.

O que há de novo no Zabbix 5.0
Exportar gráficos

4. Filtrar por tags: problema por gravidade e hosts problemáticos. Tornou-se possível, por exemplo, coletar dados sobre todos os problemas associados a um nó de rede em um data center.

O que há de novo no Zabbix 5.0
Filtrar por tags

5. Suporte para módulos para estender a interface Zabbix. Para instalar um módulo independente, você precisa copiá-lo para um diretório específico. Os módulos permitem expandir a funcionalidade existente da interface, criar novas páginas, alterar a estrutura do menu, por exemplo, adicionar itens.

Qualquer usuário pode escrever e integrar um módulo. Para isso, o módulo é copiado para a pasta de módulos, após o que fica visível na interface, onde pode ser ligado e desligado.

O que há de novo no Zabbix 5.0
Adicionando um novo módulo

6. Facilidade de navegação pelos recursos associados aos nós da rede. Em Monitoramento > Hosts é exibida uma lista de dispositivos que o Zabbix monitora: hosts, serviços, dispositivos de rede, etc. Além disso, é possível navegar rapidamente pelas telas, gráficos e problemas de dispositivos específicos.

Removemos as guias Monitoramento > Gráficos e Monitoramento > Webs, e toda a navegação é feita através Monitoramento > Hosts. As informações exibidas podem ser filtradas, inclusive por tags, o que permite exibir dispositivos desabilitados

O que há de novo no Zabbix 5.0
Navegando em recursos relacionados a nós de rede

Por exemplo, você pode selecionar dispositivos classificados como serviços de usuário final selecionando ‘e eficaz', bem como definir o nível de importância desses problemas.

O que há de novo no Zabbix 5.0
Opções de filtragem

7. Nova operação de pré-processamento – ‘Substituir’ permite que você faça diversas coisas úteis que antes só podiam ser feitas usando expressões regulares, que são bastante complexas para muitos usuários.
Substituir permite que você substitua realmente uma string ou caractere por outro, permitindo simplesmente converter os dados recebidos em formato de texto em uma representação numérica.

O que há de novo no Zabbix 5.0
Substituir operador

8. Operador JSONPath, que permite extrair nomes de atributos de uma forma conveniente

O que há de novo no Zabbix 5.0
Operador para JSONPath

9. Exibir mensagens de e-mail do Zabbix. Nas versões anteriores, todos os emails do Zabbix na pasta Caixa de entrada foram exibidos em uma lista. A partir do Zabbix 5.0, as mensagens serão agrupadas por problema.

O que há de novo no Zabbix 5.0
Agrupando mensagens de e-mail do Zabbix

10. Suporte a macros personalizadas para IPMI para nome de usuário e senha. Se macros secretas forem usadas para nome de usuário e senha, o acesso ao seu valor será negado.

O que há de novo no Zabbix 5.0
Suporte para macros personalizadas

11. Mudança em massa de macros de usuário para nós de rede. Na nova versão, você pode abrir uma lista de modelos, selecionar uma lista de hosts e adicionar macros ou alterar os valores das macros existentes,

O que há de novo no Zabbix 5.0
Adicionar e editar macros personalizadas

e também excluir determinadas ou todas as macros dos modelos selecionados para nós de rede.

O que há de novo no Zabbix 5.0
Removendo macros individuais ou de todos os usuários

12. Controle do formato da mensagem no nível do método de notificação. Em Tipos de mídia aba apareceu Modelos de mídia com modelos de mensagens.

O que há de novo no Zabbix 5.0
Modelos de Método de Notificação

Você pode definir diferentes modelos para diferentes tipos de mensagens.

O que há de novo no Zabbix 5.0
Definindo um modelo para um tipo de mensagem

Nas versões anteriores, era necessário gerenciar essas mensagens no nível de ação, definindo as mensagens e o item padrão.

O que há de novo no Zabbix 5.0
Gerenciando modelos no nível da atividade

Na nova versão, tudo pode ser definido em nível global e, em nível de mensagem, as configurações globais podem ser reescritas.

O que há de novo no Zabbix 5.0
Gerencie modelos globalmente

Para a maioria dos usuários, é suficiente definir formatos de modelo no nível do método de mídia. Além disso, após importar um novo método de notificação, todos os formatos de modelo correspondentes já fazem parte dele.

13. Uso mais amplo de JavaScript. JavaScript é usado para pré-processamento de scripts, Webhook, etc. Na linha de comando, trabalhar com JavaScript não é fácil.
Zabbix 5.0 usa um novo utilitário - zabbix_js, que executa JavaScript que aceita dados, os processa e gera valores de saída.

O que há de novo no Zabbix 5.0
Utilitário zabbix_js

O que há de novo no Zabbix 5.0
Exemplos de uso do utilitário zabbix_js

14. Suporte para operações de texto com expressões de gatilho permite verificar as versões dos componentes instalados, comparar valores com quaisquer constantes, e a constante pode ser uma macro personalizada,

{host:zabbix.version.last()}="5.0.0"
{host:zabbix.version.last()}="{$ZABBIX.VERSION}

compare o último valor com o anterior, por exemplo, quando se trata de dados de texto,

{host:text.last()}<>{host.text.prev()}

ou

{host:text.last(#1)}<>{host.text.prev(#2)}

ou compare valores de texto de diferentes métricas.

{hostA:textA.last()}={hostB:textB.last()}

15. Automação e descoberta.

  • Novas verificações JMX estão disponíveis para recuperar e descobrir uma lista de contadores JMX, o que é muito útil para, por exemplo, monitorar aplicações Java, bem como automatizar a criação de itens de monitoramento, métricas, gatilhos e gráficos.
    jmx.get[]

    и

    jmx.discovery[]

    O que há de novo no Zabbix 5.0
    Verificações JMX

  • A nova versão possui uma chave para monitorar contadores de desempenho do Windows, que é suportada por agentes antigos e novos em russo e inglês e permite, por exemplo, detectar o número de processadores, sistemas de arquivos, serviços, etc.

    O que há de novo no Zabbix 5.0
    Monitorando contadores de desempenho do Windows usando uma chave contador_perf

  • O monitoramento ODBC ficou muito mais fácil. Anteriormente, todos os parâmetros para monitoramento ODBC tinham que ser descritos em um arquivo externo /etc/odbc.ini, que não era acessível pela interface do Zabbix. Na nova versão, quase todos os parâmetros podem fazer parte da chave métrica.

    O que há de novo no Zabbix 5.0
    Chave métrica com descrição dos parâmetros

    Na nova versão, você pode definir o nome do servidor e a porta em nível métrico, e o nome e a senha para acesso usando macros secretas para segurança.

    O que há de novo no Zabbix 5.0
    Usando macros secretas

  • Ao utilizar o protocolo IPMI para monitoramento de equipamentos, tornou-se possível criar templates mais simples para automação utilizando ipmi.get.

    O que há de novo no Zabbix 5.0
    ipmi.get

16. Testando elementos de dados da interface. O Zabbix 5.0 introduziu a capacidade de testar alguns itens e, mais importante, modelos de itens da interface.

O que há de novo no Zabbix 5.0
Testando Elementos de Dados

Quaisquer problemas que surjam são exibidos na interface.

O que há de novo no Zabbix 5.0
Exibindo problemas na interface

Um algoritmo semelhante é usado para modelos de itens. Além disso, se algum item de dados não for suportado, você poderá descobrir por que ele falhou simplesmente clicando Test.

17. Testando métodos de notificação, que apareceu no Zabbix 4.4, é preservado, o que é importante na integração do Zabbix com outros sistemas, por exemplo, sistemas de tickets.

O que há de novo no Zabbix 5.0
Testando métodos de notificação

18. Suporte para macros personalizadas para protótipos de itens. Você pode usar macros LLD para definir valores de macro personalizados.

O que há de novo no Zabbix 5.0
Usando macros LLD para definir valores de macro personalizados

19. Suporte de dados Float64, que são necessários principalmente para monitorar valores muito grandes, são necessários no Zabbix para suportar dados recebidos de agentes Prometheus.
Se você instalar o Zabbix 5.0, a migração automática dos dados para o padrão Float64 não ocorre. O usuário ainda tem a opção de usar tipos de dados antigos. Os scripts de migração Float64 são executados manualmente e alteram os tipos de dados nas tabelas históricas. A substituição automática não é usada porque leva muito tempo.

20. Escalabilidade aprimorada do Zabbix 5.0: otimização da interface e eliminação de gargalos

  • As listas suspensas, por exemplo para seleção de hosts, foram eliminadas porque esse recurso não é escalonável.
  • Existem limites “integrados” para tamanhos de mesa Visão geral.
  • Novas oportunidades surgiram em Monitoramento > Hosts > Gráficos.
  • A função de paginação apareceu (Monitoramento > Hosts > Web) onde não estava.

21. Compressão melhorada
A compactação no Zabbix é baseada em uma extensão para PostgreSQL - TimescaleDB (desde Zabbix 4.4). O TimescaleDB fornece particionamento automático de banco de dados e melhora o desempenho do banco de dados porque o desempenho do TimescaleDB é praticamente independente do tamanho do banco de dados.

No Zabbix 5.0 Administração > Geral > Limpeza Você pode configurar, por exemplo, a compactação de dados com mais de 7 dias. Isso reduz significativamente o espaço em disco necessário (em quase dez vezes, segundo os usuários), o que melhora a economia de espaço em disco e melhora o desempenho.

O que há de novo no Zabbix 5.0
Compactação com TimescaleDB

22. Configurando SNMP no nível da interface. No Zabbix 5.0, em vez de três tipos de elementos de dados, apenas um é usado - agente SNMP. Todos os atributos SNMP foram movidos para o nível da interface do host, o que torna possível simplificar modelos, alternar entre versões SNMP, etc.

O que há de novo no Zabbix 5.0
Configurando o SNMP no nível da interface

23. Dependência do monitoramento da disponibilidade dos nós da rede na disponibilidade de um proxy permite exibir o problema de disponibilidade de proxy como prioridade em caso de indisponibilidade de nós da rede ao monitorar usando um gatilho com a função sem dados:

{HostA:item.nodata(1m)}=1

O que há de novo no Zabbix 5.0
A disponibilidade dos nós da rede é determinada pela disponibilidade do proxy

Função sem dados por padrão leva em consideração a disponibilidade do proxy. Para uma verificação mais rigorosa que não leva em consideração a disponibilidade do proxy, é utilizado o segundo parâmetro - rigoroso:

{HostA:item.nodata(1m,strict)}=1

24. Gerenciando regras de descoberta de baixo nível. O Zabbix 5.0 introduziu um filtro LLD que permite visualizar regras de detecção não suportadas

O que há de novo no Zabbix 5.0
Filtro LLD

25. Capacidade de não reconhecer o problema (desconhecer) permite corrigir erros e é útil na criação de fluxos de trabalho que dependem da confirmação do problema.

O que há de novo no Zabbix 5.0
Desconhecer o problema

26. Alteração das regras de descoberta de baixo nível — a capacidade de adicionar exceções ao detectar objetos como resultado do monitoramento de sistemas de arquivos, o que permite a detecção de baixo nível para criar ou não certos objetos, gatilhos, elementos de dados, etc., alterar a gravidade dos problemas, adicionar tags para determinados objetos , exclua objetos, por exemplo, sistemas de arquivos temporários, da pesquisa, altere o intervalo de atualização de dados, etc.

O que há de novo no Zabbix 5.0
Exclusão da detecção de baixo nível de sistemas de arquivos temporários

Por exemplo, você pode alterar o nível de prioridade do acionador para sistemas de arquivos Oracle descobertos e deixar o nível de prioridade do acionador para outros sistemas de arquivos no mesmo nível.

O que há de novo no Zabbix 5.0
Alterando o nível de prioridade dos acionadores para sistemas de arquivos individuais

27. Novas macros no Zabbix 5.0 permitem melhorar a qualidade do monitoramento.

O que há de novo no Zabbix 5.0
Novas macros no Zabbix 5.0

28. Outras inovações no Zabbix 5.0:

O que há de novo no Zabbix 5.0
Melhorias no Zabbix 5.0

29. Fim do suporte
O que há de novo no Zabbix 5.0
Funcionalidade não suportada

Conclusão

Atualizar para o Zabbix 5.0 é muito fácil! Instale e execute novos binários de servidor e arquivos de front-end, e o servidor atualizará automaticamente seu banco de dados.
Informações sobre o procedimento de atualização do Zabbix estão disponíveis em:
https://www.zabbix.com/documentation/current/manual/installation/upgrade_notes_500

IMPORTANTE!

  1. A atualização dos dados históricos para o formato Float64 é opcional.
  2. Os dados do TimescaleDB são somente leitura.
  3. Versão mínima necessária do PHP7.2.
  4. DB2 não é suportado como backend para servidor Zabbix

(!) Vídeos e slides de apresentações de Alexey Vladyshev e outros palestrantes do Zabbix Meetup Online (Russo) podem ser visualizados aqui.

Fonte: habr.com

Adicionar um comentário