É possível permitir a autorregistro de agent ativo do Zabbix, após o qual o server pode começar a monitorá-los. Dessa forma, novos hosts podem ser adicionados para monitoramento sem configurá-los manualmente no server.
O autorregistro pode ocorrer quando um agent ativo previamente desconhecido solicita verificações.
Esse recurso pode ser muito útil para o monitoramento automático de novos nós em Cloud. Assim que você tiver um novo nó na Cloud, o Zabbix começará automaticamente a coleta de dados de desempenho e disponibilidade do host.
O autorregistro de agent ativo também suporta o monitoramento de hosts adicionados com verificações passivas. Quando o agent ativo solicita verificações, desde que tenha os parâmetros de configuração 'ListenIP' ou 'ListenPort' definidos no arquivo de configuração, eles são enviados ao server. (Se vários endereços IP forem especificados, o primeiro é enviado ao server.)
O server, ao adicionar o novo host autorregistrado, usa o endereço IP e a porta recebidos para configurar o agent. Se nenhum valor de endereço IP for recebido, o utilizado para a conexão de entrada é usado. Se nenhum valor de porta for recebido, 10050 é usado.
É possível especificar que o host deve ser autorregistrado com um nome DNS como a interface padrão do agent.
O autorregistro é reexecutado:
O intervalo de autorregistro do agent ativo para o server e proxy do Zabbix é de 120 segundos. Portanto, caso um host descoberto seja excluído, o autorregistro será reexecutado em 120 segundos.
Certifique-se de que o Zabbix server está identificado no arquivo de configuração do agent - zabbix_agentd.conf
A menos que você defina especificamente um Hostname em zabbix_agentd.conf, o hostname do sistema onde o agent está localizado será usado pelo server para nomear o host. O hostname do sistema no Linux pode ser obtido executando o comando 'hostname'.
Se Hostname for definido na configuração do Zabbix agent como uma lista de hosts separada por vírgulas, hosts serão criados para todos os hostnames listados.
Reinicie o agent após fazer qualquer alteração no arquivo de configuração.
Quando o server recebe uma solicitação de autoregistro de um agent, ele chama uma ação. Uma ação com fonte de evento "Autoregistro" deve ser configurada para o autoregistro de agent.
Configurar descoberta de rede não é necessário para que agents ativos se autoregistrem.
No frontend do Zabbix, vá para Alertas → Ações, selecione Ações de autoregistro e clique em Criar ação:
Se os hosts que irão se autoregistrar provavelmente serão suportados apenas para monitoramento ativo (como hosts que estão protegidos por firewall do seu Zabbix server), talvez você queira criar um template específico como Template_Linux-active para vincular.
Os hosts criados são adicionados ao grupo Hosts descobertos (por padrão, configurável em Administração → Geral → Outros). Se você deseja que os hosts sejam adicionados a outro grupo, adicione uma operação Remover do grupo de hosts (especificando "Hosts descobertos") e também adicione uma operação Adicionar ao grupo de hosts (especificando outro grupo de hosts), pois um host deve pertencer a um grupo de hosts.
Uma forma segura de autoregistro é possível configurando a autenticação baseada em PSK com conexões criptografadas.
O nível de criptografia é configurado globalmente em Administração → Geral → Autoregistro. É possível selecionar sem criptografia, criptografia TLS com autenticação PSK ou ambos (para que alguns hosts possam se registrar sem criptografia enquanto outros através de criptografia).
A autenticação por PSK é verificada pelo Zabbix server antes de adicionar um host. Se for bem-sucedida, o host é adicionado e as Conexões de/para o host são definidas apenas como 'PSK', com identidade/chave pré-compartilhada igual à configuração global de autoregistro.
Para garantir a segurança do autoregistro em instalações que usam proxies, a criptografia entre o Zabbix server e o proxy deve ser habilitada.
Os parâmetros de configuração HostInterface e HostInterfaceItem parâmetros de configuração permitem especificar um valor personalizado para a interface do host durante a autorregistro.
Mais especificamente, eles são úteis se o host deve ser autorregistrado com um nome DNS como interface de agent padrão em vez de seu endereço IP. Nesse caso, o nome DNS deve ser especificado ou retornado como valor dos parâmetros HostInterface ou HostInterfaceItem. Se o valor de um desses parâmetros mudar — por exemplo, de um endereço IP para um nome DNS ou vice-versa — a interface padrão do host autorregistrado será atualizada de acordo. Essa atualização é aplicada ao host existente, não criando um novo. Para enviar o novo valor, o agent deve ser reiniciado para que ele reinicie o processo de autorregistro.
Se os parâmetros HostInterface ou HostInterfaceItem não estiverem configurados, o parâmetro listen_dns será usado. Esse valor é determinado realizando uma consulta reversa de DNS do endereço IP do agent. Se o DNS reverso não estiver devidamente configurado ou retornar um nome inválido, isso pode resultar em autorregistro incorreto ou com falha devido a um valor de interface inválido.
Quando o agent envia uma solicitação de autorregistro para o server, ele envia seu hostname. Em alguns casos (por exemplo, nós em nuvem Amazon) um hostname não é suficiente para o Zabbix server diferenciar hosts descobertos. Os metadados do host podem ser usados opcionalmente para enviar outras informações de um agent para o server.
Os metadados do host são configurados no arquivo de configuração do agent - zabbix_agentd.conf. Existem 2 maneiras de especificar os metadados do host no arquivo de configuração:
Veja a descrição das opções no link acima.
O parâmetro HostMetadataItem pode retornar até 65535 pontos de código UTF-8. Um valor mais longo será truncado.
Observe que, no MySQL, o comprimento máximo efetivo em caracteres será menor se o valor retornado contiver caracteres multibyte. Por exemplo, um valor contendo apenas caracteres de 3 bytes será limitado a 21844 caracteres no total, enquanto um valor contendo apenas caracteres de 4 bytes será limitado a 16383 símbolos.
Uma tentativa de autorregistro ocorre toda vez que um agent ativo envia uma solicitação para atualizar verificações ativas para o server. O atraso entre as solicitações é especificado no parâmetro RefreshActiveChecks do agent. A primeira solicitação é enviada imediatamente após o agent ser reiniciado.
Usando metadados de host para distinguir entre hosts Linux e Windows.
Suponha que você gostaria que os hosts fossem registrados automaticamente pelo Zabbix server. Você possui agents Zabbix ativos (veja a seção "Configuração" acima) em sua rede. Existem hosts Windows e hosts Linux em sua rede e você possui os templates "Linux by Zabbix agent" e "Windows by Zabbix agent" disponíveis em seu frontend Zabbix. Portanto, no registro do host, você gostaria que o template Linux/Windows apropriado fosse aplicado ao host que está sendo registrado. Por padrão, apenas o nome do host é enviado para o server durante o registro automático, o que pode não ser suficiente. Para garantir que o template correto seja aplicado ao host, você deve usar metadados de host.
Configuração do frontend
A primeira coisa a fazer é configurar o frontend. Crie 2 ações. A primeira ação:
Você pode pular a operação "Adicionar host" neste caso. Vincular um template a um host requer adicionar o host primeiro, então o server fará isso automaticamente.
A segunda ação:
Configuração do agent
Agora você precisa configurar os agents. Adicione a seguinte linha aos arquivos de configuração do agent:
Dessa forma, você garante que os metadados do host conterão "Linux" ou "Windows", dependendo do host em que o agent está sendo executado. Um exemplo de metadados do host neste caso:
Linux: Linux server3 3.2.0-4-686-pae #1 SMP Debian 3.2.41-2 i686 GNU/Linux
Windows: Windows WIN-0PXGGSTYNHO 6.0.6001 Windows Server 2008 Service Pack 1 Intel IA-32Não se esqueça de reiniciar o agent após fazer qualquer alteração no arquivo de configuração.
Passo 1
Usando metadados do host para permitir alguma proteção básica contra hosts indesejados se registrando.
Configuração do frontend
Crie uma ação no frontend, usando algum código secreto difícil de adivinhar para impedir hosts indesejados:
Observe que este método sozinho não fornece proteção forte, pois os dados são transmitidos em texto simples. É necessário recarregar o cache de configuração para que as alterações tenham efeito imediato.
Configuração do agent
Adicione a seguinte linha ao arquivo de configuração do agent:
onde "Linux" é uma plataforma e o restante da string é o texto secreto difícil de adivinhar.
Não se esqueça de reiniciar o agent após fazer qualquer alteração no arquivo de configuração.
Passo 2
É possível adicionar monitoramento adicional para um host já registrado.
Configuração do frontend
Atualize a ação no frontend:
Configuração do agent
Atualize a próxima linha no arquivo de configuração do agent:
Não se esqueça de reiniciar o agent após fazer qualquer alteração no arquivo de configuração.