collectd - collectd

collectd
Logo der Software collectd.svg
Autor (es) original (is) Florian Forster
lançamento inicial 8 de julho de 2005 ; 15 anos atrás  ( 08/07/2005 )
Versão estável
5.12.0 / 3 de setembro de 2020 ; 7 meses atrás  ( 3 de setembro de 2020 )
Repositório Edite isso no Wikidata
Escrito em C
Sistema operacional Qualquer tipo Unix
Disponível em inglês
Modelo Planejamento de capacidade
Licença Licença MIT e Licença Pública Geral GNU , versão 2
Local na rede Internet collectd .org  Edite isso no Wikidata

collectd é um daemon Unix que coleta, transfere e armazena dados de desempenho de computadores e equipamentos de rede. Os dados adquiridos têm como objetivo ajudar os administradores de sistema a manter uma visão geral dos recursos disponíveis para detectar gargalos existentes ou iminentes.

A primeira versão do daemon foi escrita em 2005 por Florian Forster e foi desenvolvida como um projeto de código aberto gratuito . Outros desenvolvedores escreveram melhorias e extensões para o software que foram incorporadas ao projeto. A maioria dos arquivos do código-fonte são licenciados sob os termos da GNU General Public License , versão 2 (GPLv2), os arquivos restantes são licenciados sob outras licenças open source .

Operação

O collectd usa um design modular : O daemon em si implementa apenas infraestrutura para filtrar e retransmitir dados, bem como funções auxiliares, e requer muito poucos recursos, ele até roda em dispositivos integrados com OpenWrt . A aquisição e armazenamento de dados são tratados por plug-ins na forma de objetos compartilhados . Dessa forma, o código específico para um sistema operacional é mantido principalmente fora do daemon real. Os plug-ins podem ter suas próprias dependências, por exemplo, um sistema operacional específico ou bibliotecas de software . Outras tarefas executadas pelos plug-ins incluem o processamento de “notificações” e mensagens de log .

Os plug-ins de aquisição de dados, chamados de "plug-ins de leitura" na documentação do collectd, podem ser classificados em três categorias:

  • Os plug-ins do sistema operacional coletam informações como utilização da CPU, uso da memória ou número de usuários conectados a um sistema. Esses plug-ins geralmente precisam ser transferidos para cada sistema operacional. Nem todos esses plug-ins estão disponíveis para todos os sistemas operacionais.
  • Os plug-ins de aplicativo coletam dados de desempenho de ou sobre um aplicativo em execução no mesmo computador ou em um computador remoto, por exemplo, o Apache HTTP Server . Esses plug-ins geralmente usam bibliotecas de software, mas geralmente são independentes do sistema operacional.
  • Plug-ins genéricos oferecem funções básicas que o usuário pode empregar para realizar tarefas específicas. Os exemplos são a consulta de equipamentos de rede usando SNMP ou a execução de programas ou scripts personalizados.

Os chamados "plug-ins de gravação" oferecem a possibilidade de armazenar os dados coletados em disco usando arquivos RRD - ou CSV - ou de enviar dados pela rede para uma instância remota do daemon.

Networking

Incluído na distribuição do código-fonte do collectd está o chamado plug-in de "rede", que pode ser usado para enviar e receber dados de / para outras instâncias do daemon. Em uma configuração de rede típica, o daemon seria executado em cada host monitorado (chamado de "clientes") com o plug-in de rede configurado para enviar os dados coletados para um ou mais endereços de rede. Em um ou mais dos chamados "servidores", o mesmo daemon seria executado, mas com uma configuração diferente, para que o plug-in de rede recebesse dados em vez de enviá-los. Freqüentemente, o plug -in RRDtool é usado em servidores para armazenar os dados de desempenho.

O plug-in usa um protocolo de rede binário sobre UDP . Ambos, IPv4 e IPv6, são suportados como camada de rede . É possível usar endereçamento unicast (ponto a ponto) e multicast (ponto a grupo). A autenticação e a criptografia foram adicionadas ao protocolo com a versão 4.7.0, lançada em maio de 2009.

Veja também

Referências

links externos