Como instalar e configurar ‘Collectd’ e ‘Collectd-Web’ para monitorar recursos do servidor no Linux
Collectd-web é uma ferramenta de monitoramento front-end da web baseada em RRDtool (Round-Robin Ddatabase Ferramenta), que interpreta e gera saída gráfica dos dados coletados pelo serviço Collectd em sistemas Linux.
O serviço Collectd vem por padrão com uma enorme coleção de plug-ins disponíveis em seu arquivo de configuração padrão, alguns deles sendo, por padrão, já ativados após a instalação do pacote de software.
Os scripts Collectd-web CGI que interpretam e geram as estatísticas gráficas da página HTML podem ser simplesmente executados pelo gateway Apache CGI com o mínimo de configurações necessárias no lado do servidor web Apache.
Porém, a interface gráfica web com as estatísticas geradas também pode ser executada pelo servidor web autônomo oferecido pelo script Python CGIHTTPServer que vem pré-instalado com o repositório principal Git .
Este tutorial abordará o processo de instalação do serviço Collectd e da interface Collectd-web no RHEL/CentOS/Fedora e Ubuntu/Debian< Sistemas baseados em com as configurações mínimas necessárias para executar os serviços e ativar um plug-in de serviço Collectd.
Leia os seguintes artigos da série collectd.
Passo 1: – Instalar o serviço Collectd
1. Basicamente, a tarefa do daemon Collectd é coletar e armazenar estatísticas de dados no sistema em que ele é executado. O pacote Collectd pode ser baixado e instalado a partir dos repositórios de distribuição padrão baseados no Debian emitindo o seguinte comando:
No Ubuntu/Debian
apt-get install collectd [On Debian based Systems]
No RHEL/CentOS 6.x/5.x
Em sistemas mais antigos baseados em RedHat, como CentOS/Fedora, primeiro você precisa habilitar o repositório epel em seu sistema, então você pode instalar o pacote collectd do repositório epel.
yum install collectd
No RHEL/CentOS 7.x
Na versão mais recente do RHEL/CentOS 7.x, você pode instalar e habilitar o repositório epel a partir dos repositórios yum padrão, conforme mostrado abaixo.
yum install epel-release
yum install collectd
Nota: Para usuários do Fedora, não há necessidade de habilitar nenhum repositório de terceiros, basta usar o yum para obter o pacote collectd dos repositórios yum padrão.
2. Assim que o pacote estiver instalado em seu sistema, execute o comando abaixo para iniciar o serviço.
service collectd start [On Debian based Systems]
service collectd start [On RHEL/CentOS 6.x/5.x Systems]
systemctl start collectd.service [On RHEL/CentOS 7.x Systems]
Etapa 2: Instale o Collectd-Web e as dependências
3. Antes de começar a importar o repositório Git Collectd-web, primeiro você precisa garantir que o pacote de software Git e as seguintes dependências necessárias estejam instalados na sua máquina:
----------------- On Debian / Ubuntu systems -----------------
apt-get install git
apt-get install librrds-perl libjson-perl libhtml-parser-perl
----------------- On RedHat/CentOS/Fedora based systems -----------------
yum install git
yum install rrdtool rrdtool-devel rrdtool-perl perl-HTML-Parser perl-JSON
Etapa 3: importar o repositório Git Collectd-Web e modificar o servidor Python independente
4. Na próxima etapa, escolha e altere o diretório para um caminho do sistema na hierarquia da árvore Linux onde você deseja importar o projeto Git (você pode usar /usr/local/
caminho) e execute o seguinte comando para clonar o repositório git Collectd-web:
cd /usr/local/
git clone https://github.com/httpdss/collectd-web.git
5. Depois que o repositório Git for importado para o seu sistema, vá em frente e entre no diretório collectd-web e liste seu conteúdo para identificar o script do servidor Python (runserver.py
), que será modificado na próxima etapa. Além disso, adicione permissões de execução ao seguinte script CGI: graphdefs.cgi
.
cd collectd-web/
ls
chmod +x cgi-bin/graphdefs.cgi
6. O script de servidor Python independente do Collectd-web é configurado por padrão para ser executado e vinculado somente no endereço de loopback (127.0.0.1).
Para acessar a interface Collectd-web a partir de um navegador remoto, você precisa editar o script runserver.py
e alterar o IP 127.0.1.1. Endereço para 0.0.0.0, para vincular todos os endereços IP das interfaces de rede.
Se você deseja vincular apenas a uma interface específica, use o endereço IP dessa interface (não é aconselhável usar esta opção caso o endereço da sua interface de rede seja alocado dinamicamente por um servidor DHCP). Use a captura de tela abaixo como um trecho de como o script runserver.py
final deve ficar:
nano runserver.py
Se você quiser usar outra porta de rede que não seja 8888, modifique o valor da variável PORT.
Etapa 4: execute o servidor autônomo Python CGI e navegue na interface Collectd-web
7. Depois de modificar a ligação do endereço IP do script do servidor Python independente, prossiga e inicie o servidor em segundo plano emitindo o seguinte comando:
./runserver.py &
Opcional, como método alternativo você pode chamar o interpretador Python para iniciar o servidor:
python runserver.py &