Zoeken op website

Installeer Glances, InfluxDB en Grafana om CentOS 7 te monitoren


Glances is een gratis open source, moderne, platformonafhankelijke, realtime top- en htop-achtige monitoringtool met geavanceerde functies. Het kan in verschillende modi draaien: als standalone, in client/server-modus en in webserver-modus.

InfluxDB is een open source en schaalbare tijdreeksdatabase voor statistieken, gebeurtenissen en realtime analyses.

Grafana is een open source, veelzijdige, krachtige, elegante en zeer uitbreidbare, platformonafhankelijke tool voor monitoring en metrische analyses, met prachtige en aanpasbare dashboards. Het is een de facto software voor data-analyse.

In dit artikel leggen we uit hoe je Glances, InfluxDB en Grafana installeert en configureert om de prestaties van een CentOS 7 te controleren sterke>server.

Stap 1: Installeer Glances in CentOS 7

1. Begin eerst met het installeren van de nieuwste stabiele versie van glances (v2.11.1) met behulp van PIP. Als u geen pip heeft, installeer deze dan als volgt, inclusief Python-headers die vereist zijn voor het installeren van psutil.

yum install python-pip python-devel	

2. Zodra je PIP en de Python-headers hebt, voer je de volgende opdracht uit om de nieuwste stabiele versie van glances te installeren en verifieer de versie.

pip install glances
glances -V

Glances v2.11.1 with psutil v5.4.7

Als alternatief kunt u, als u glances al geïnstalleerd heeft, deze upgraden naar de nieuwste versie met behulp van de volgende opdracht.

pip install --upgrade glances

3. Nu moet u blikken starten via systemd, zodat het als een service draait. Maak een nieuwe eenheid door een bestand met de naam glances.service te maken in /etc/systemd/system/.

vim /etc/systemd/system/glances.service

Kopieer en plak de volgende configuratie in het bestand glances.service. De --config specificeert het configuratiebestand, de --export-influxdb optie vertelt blikken om statistieken naar een InfluxDB-server te exporteren en de --disable-ip optie schakelt de IP-module uit.

[Unit]
Description=Glances
After=network.target influxd.service

[Service]
ExecStart=/usr/bin/glances --config /home/admin/.config/glances/glances.conf --quiet --export-influxdb --disable-ip
Restart=on-failure
RestartSec=30s
TimeoutSec=30s

[Install]
WantedBy=multi-user.target

Sla het bestand op en sluit het.

4. Laad vervolgens de configuratie van Systemd Manager opnieuw, start de service voor blikken, bekijk de status ervan en schakel deze in om automatisch te starten tijdens het opstarten.

systemctl daemon-reload 
systemctl start glances.service
systemctl status glances.service
systemctl enable glances.service

5. Vervolgens moet u het door de ontwikkelaar verstrekte configuratiebestand voor blikken downloaden met behulp van de wget-opdracht, zoals weergegeven.

mkdir ~/.config/glances/
wget https://raw.githubusercontent.com/nicolargo/glances/master/conf/glances.conf -P ~/.config/glances/ 

6. Om Glances-statistieken naar een InfluxDB-database te exporteren, hebt u de Python InfluxdDB-lib nodig, die u kan het installeren met behulp van de pip-opdracht.

sudo pip install influxdb

Stap 2: Installeer InfluxDB in CentOS 7

7. Vervolgens moet je de InfluxDB Yum-repository toevoegen om de nieuwste versie van het InfluxDB-pakket te installeren, zoals weergegeven.

cat <<EOF | sudo tee /etc/yum.repos.d/influxdb.repo
[influxdb]
name = InfluxDB Repository - RHEL $releasever
baseurl = https://repos.influxdata.com/rhel/$releasever/$basearch/stable
enabled = 1
gpgcheck = 1
gpgkey = https://repos.influxdata.com/influxdb.key
EOF

8. Nadat je de repository aan de YUM-configuratie hebt toegevoegd, installeer je het InfluxDB pakket door het uit te voeren.

yum install influxdb

9. Start vervolgens de InfluxDB service via systemd, bevestig dat deze actief is door de status ervan te bekijken en schakel de service in om automatisch te starten bij het opstarten van het systeem.

systemctl start influxdb
systemctl status influxdb
systemctl enable influxdb

10. Standaard gebruikt InfluxDB TCP-poort 8086 voor client-server-communicatie via de HTTP API van InfluxDB. U moet deze poort in uw firewall openen met behulp van firewall-cmd.

firewall-cmd --add-port=8086/tcp --permanent
firewall-cmd --reload

11. Vervolgens moet u een database maken in InfluxDB voor het opslaan van gegevens vanuit blik. Het influx commando dat is opgenomen in de InfluxDB-pakketten is de eenvoudigste manier om met de database te communiceren. Voer dus influx uit om de CLI te starten en automatisch verbinding te maken met de lokale InfluxDB-instantie.

influx

Voer de volgende opdrachten uit om een database met de naam glances te maken en de beschikbare databases te bekijken.

Connected to http://localhost:8086 version 1.6.2
InfluxDB shell version: 1.6.2
> CREATE DATABASE glances
> SHOW DATABASES
name: databases
name
----
_internal
glances
> 

Om de InfluxQL-shell te verlaten, typt u exit en drukt u op Enter.

Stap 3: Installeer Grafana in CentOS 7

12. Installeer nu Grafana vanuit de officiële YUM-repository en begin met het toevoegen van de volgende configuratie aan /etc/yum.repos.d/grafana.repo repositorybestand.

[grafana]
name=grafana
baseurl=https://packagecloud.io/grafana/stable/el/7/$basearch
repo_gpgcheck=1
enabled=1
gpgcheck=1
gpgkey=https://packagecloud.io/gpg.key https://grafanarel.s3.amazonaws.com/RPM-GPG-KEY-grafana
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt

13. Nadat u de repository aan de YUM-configuratie hebt toegevoegd, installeert u het Grafana-pakket door het uit te voeren.

yum install grafana

14. Nadat u Grafana heeft geïnstalleerd, laadt u de systemd manager-configuratie opnieuw, start u de grafana-server, controleert u of de service actief is door de status ervan te bekijken en schakelt u deze in om automatisch begin bij het opstarten.

systemctl daemon-reload 
systemctl start grafana-server 
systemctl status grafana-server 
systemctl enable grafana-server

15. Open vervolgens poort 3000 waarnaar de Grafana-server luistert, in uw firewall met behulp van de firewall-cmd.

firewall-cmd --add-port=3000/tcp --permanent
firewall-cmd --reload

Stap 4: Controleer CentOS 7-serverstatistieken via Grafana

16. Op dit punt kunt u de volgende URL gebruiken om toegang te krijgen tot de webinterface van Grafana, die doorverwijst naar de inlogpagina. Gebruik de standaardgegevens om in te loggen.

URL: http://SERVER_IP:3000
Username: admin 
Password: admin

U wordt gevraagd een nieuw wachtwoord aan te maken. Zodra u dat heeft gedaan, wordt u doorgestuurd naar het startdashboard, zoals weergegeven in de onderstaande schermafbeelding.

17. Klik vervolgens op Maak uw eerste gegevensbron, wat een InfluxDB-database zou moeten zijn. Voer onder Instellingen een geschikte naam in, bijvoorbeeld Glances Import, en gebruik vervolgens de volgende waarden voor de andere twee belangrijke variabelen (HTTP-URL en InfluxDB Database) zoals weergegeven in de schermafbeelding.

HTTP URL: http://localhost:8086
InfluxDB Details - Database: glances

Klik vervolgens op Opslaan en testen om verbinding te maken met de gegevensbron. U zou een feedback moeten ontvangen waarin staat: “Gegevensbron werkt”.

18. Nu moet u het Glances-dashboard importeren. Klik op het plusteken (+) en ga naar Importeren zoals weergegeven in de schermafbeelding.

17. U heeft de Glances Dashboard URL of ID nodig of upload het .JSON bestand dat u kunt vinden op Grafana.com. In dit geval gebruiken we het Glances Dashboard dat is gemaakt door de ontwikkelaar van Glances. De URL is https://grafana.com/dashboards/2387 of de ID is 2387.

18. Zodra het Grafana-dashboard is geladen, zoekt u onder opties naar blikken en kiest u een InluxDB-gegevensbron (Glances Import) die u eerder hebt gemaakt, en klikt u vervolgens op >Importeren zoals weergegeven in de volgende schermafbeelding.

19. Nadat u het Glances-dashboard succesvol heeft geïmporteerd, zou u grafieken moeten kunnen bekijken met de statistieken van uw server, zoals geleverd door blikken via influxdb.

Dat is het voor nu! In dit artikel hebben we uitgelegd hoe je de CentOS 7-server kunt monitoren met Glances, InfluxDB en Grafana. Als u vragen heeft of informatie wilt delen, kunt u het onderstaande opmerkingenformulier gebruiken.