Sådan installeres og konfigureres Collectd og Collectd-Web til overvågning af serverressourcer i Linux


Collectd-web er et web-front-end overvågningsværktøj baseret på RRDtool ( R ound- R obin D atabase Værktøj) , som fortolker og grafisk udsender de data, der er indsamlet af Collectd-tjenesten på Linux-systemer.

Collectd-tjenesten leveres som standard med en enorm samling af tilgængelige plug-ins i standardkonfigurationsfilen, hvoraf nogle som standard allerede er aktiveret, når du har installeret softwarepakken.

Collectd-web CGI-scripts, der fortolker og genererer de grafiske html-sidestatistikker, kan simpelthen udføres af Apache CGI-gatewayen med minimale konfigurationer, der kræves på Apache-webserver-siden.

Imidlertid kan den grafiske webgrænseflade med de genererede statistikker også udføres af den uafhængige webserver, der tilbydes af Python CGIHTTPServer-script, der leveres forudinstalleret med det primære Git-lager.

Denne vejledning dækker installationsprocessen for Collectd-tjenesten og Collectd-web-interface på RHEL/CentOS/Fedora og Ubuntu/Debian-baserede systemer med de minimale konfigurationer, der skal udføres for at køre tjenesterne og for at aktivere et Collectd-serviceplugin .

Gå venligst igennem følgende artikler i collectd-serien.

Trin 1: - Installer Collectd Service

1. Grundlæggende er Collectd-dæmonopgaven at indsamle og gemme datastatistikker på det system, den kører på. Collectd-pakken kan downloades og installeres fra standard Debian-baserede distributionslagre ved at udstede følgende kommando:

# apt-get install collectd			[On Debian based Systems]

På ældre RedHat-baserede systemer som CentOS/Fedora skal du først aktivere epel repository under dit system, så kan du installere collectd-pakke fra epel repository.

# yum install collectd

I den nyeste version af RHEL/CentOS 7.x kan du installere og aktivere epel repository fra standard yum repos som vist nedenfor.

# yum install epel-release
# yum install collectd

Bemærk: For Fedora-brugere er der ikke behov for at aktivere tredjepartsopbevaringssteder, simpel yum for at hente samlepakken fra standard yum-opbevaringssteder.

2. Når pakken er installeret på dit system, skal du køre kommandoen nedenfor for at starte tjenesten.

# 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]

Trin 2: Installer Collectd-Web og afhængigheder

3. Inden du begynder at importere Collectd-web Git-arkivet, skal du først sikre dig, at Git-softwarepakken og følgende krævede afhængigheder er installeret på din maskine:

----------------- 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

Trin 3: Importer Collectd-Web Git Repository og rediger standalone Python Server

4. På det næste trin skal du vælge og ændre biblioteket til en systemsti fra Linux-træhierarkiet, hvor du vil importere Git-projektet (du kan bruge /usr/local/ path), og kør derefter følgende kommando for at klone Collectd-web git repository:

# cd /usr/local/
# git clone https://github.com/httpdss/collectd-web.git

5. Når Git-arkivet er importeret til dit system, skal du gå videre og indtaste collectd-web-biblioteket og liste dets indhold for at identificere Python-server script ( runserver.py ), som vil blive ændret på næste trin. Tilføj også udførelsestilladelser til følgende CGI-script: graphdefs.cgi .

# cd collectd-web/
# ls
# chmod +x cgi-bin/graphdefs.cgi

6. Collectd-web standalone Python-server script er som standard konfigureret til kun at køre og binde på loopback-adresse (127.0.0.1).

For at få adgang til Collectd-web-interface fra en fjernbrowser skal du redigere scriptet runserver.py og ændre 127.0.1.1 IP-adressen til 0.0.0.0 for at binde på alle netværksgrænseflader IP-adresser.

Hvis du kun vil binde til en bestemt grænseflade, skal du bruge denne grænseflade IP-adresse (anbefales ikke at bruge denne mulighed, hvis din netværksgrænsefladesadresse dynamisk tildeles af en DHCP-server). Brug nedenstående skærmbillede som et uddrag af, hvordan det endelige runserver.py script skal se ud:

# nano runserver.py

Hvis du vil bruge en anden netværksport end 8888, skal du ændre PORT-variabelværdien.

Trin 4: Kør Python CGI Standalone Server og gennemse Collectd-web-interface

7. Når du har ændret det uafhængige Python-server script IP-adressebinding, skal du starte og starte serveren i baggrunden ved at udstede følgende kommando:

# ./runserver.py &

Valgfrit, som en alternativ metode kan du ringe til Python-tolk for at starte serveren:

# python runserver.py &