Ein TIG-Stack ist eine Sammlung von Open-Source-Tools, darunter Telegraf, InfluxDB und Grafana. Es ist eines der beliebtesten Tools zur Überwachung einer Vielzahl von Datenquellen.
Telegraf ist ein Server-Agent, der zum Sammeln und Aggregieren von Daten und Berichtsmetriken verwendet wird. Es ist hochgradig skalierbar und ermöglicht Benutzern den Zugriff auf Metriken aus dem System.
Grafana ist ein Open-Source-Datenvisualisierungstool, das verschiedene Zeitreihendatenspeicher unterstützt, darunter Prometheus, Elasticsearch und InfluxDB.
InfluxDB ist eine Open-Source-Datenbank, die verwendet wird, um Daten zu speichern und sie dem Grafana-Dashboard zur Verfügung zu stellen. Es kann Sensoren und Geräte in Echtzeit automatisieren.
In diesem Tutorial lernen wir, wie man den TIG-Stack auf einem Ubuntu 20.04-Server installiert.
Voraussetzungen
- Ein frisches Ubuntu 20.04 VPS auf der Atlantic.net Cloud Platform
- Ein auf Ihrem Server konfiguriertes Root-Passwort
Schritt 1 – Erstellen Sie einen Atlantic.Net Cloud-Server
Melden Sie sich zunächst bei Ihrem Atlantic.Net Cloud Server an. Erstellen Sie einen neuen Server und wählen Sie Ubuntu 20.04 als Betriebssystem mit mindestens 2 GB RAM. Stellen Sie über SSH eine Verbindung zu Ihrem Cloud-Server her und melden Sie sich mit den oben auf der Seite hervorgehobenen Anmeldeinformationen an.
Sobald Sie sich bei Ihrem Ubuntu 20.04-Server angemeldet haben, führen Sie den folgenden Befehl aus, um Ihr Basissystem mit den neuesten verfügbaren Paketen zu aktualisieren.
apt-get update -y
Schritt 2 – Telegraf installieren
Zuerst müssen Sie Telegraf auf Ihrem System installieren. Standardmäßig ist Telegraf nicht im Standard-Repository von Ubuntu 20.04 verfügbar, daher müssen Sie das InfluxData-Repository zu Ihrem System hinzufügen.
Installieren Sie zunächst die erforderlichen Abhängigkeiten mit dem folgenden Befehl:
apt-get install gnupg2 software-properties-common -y
Als nächstes importieren Sie den GPG-Schlüssel mit dem folgenden Befehl:
wget -qO- https://repos.influxdata.com/influxdb.key | apt-key add -
Aktivieren Sie als Nächstes das lsb-Release und fügen Sie das InfluxData-Repository mit dem folgenden Befehl hinzu:
source /etc/lsb-release echo "deb https://repos.influxdata.com/${DISTRIB_ID,,} ${DISTRIB_CODENAME} stable" | tee /etc/apt/sources.list.d/influxdb.list
Aktualisieren Sie als Nächstes das Repository und installieren Sie Telegraf mit dem folgenden Befehl:
apt-get update -y apt-get install telegraf
Sobald die Installation abgeschlossen ist, starten und aktivieren Sie den Telegraf-Dienst mit dem folgenden Befehl:
systemctl enable --now telegraf systemctl start telegraf
Überprüfen Sie als Nächstes den Status von Telegraf mit dem folgenden Befehl:
systemctl status telegraf
Sie sollten die folgende Ausgabe erhalten:
telegraf.service - The plugin-driven server agent for reporting metrics into InfluxDB Loaded: loaded (/lib/systemd/system/telegraf.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2020-10-10 09:46:53 UTC; 23s ago Docs: https://github.com/influxdata/telegraf Main PID: 105155 (telegraf) Tasks: 8 (limit: 4691) Memory: 17.4M CGroup: /system.slice/telegraf.service └─105155 /usr/bin/telegraf -config /etc/telegraf/telegraf.conf -config-directory /etc/telegraf/telegraf.d 105155]: 2020-10-10T09:46:53Z I! Loaded outputs: influxdb
Schritt 3 – InfluxDB installieren
Wir haben das InfluxData-Repository im vorherigen Schritt hinzugefügt, sodass Sie InfluxDB installieren können, indem Sie einfach den folgenden Befehl ausführen:
apt-get install influxdb -y
Starten Sie nach der Installation von InfluxDB den InfluxDB-Dienst und ermöglichen Sie ihm, beim Systemneustart mit dem folgenden Befehl zu starten:
systemctl enable --now influxdb systemctl start influxdb
Überprüfen Sie als Nächstes den Status des InfluxDB-Dienstes mit dem folgenden Befehl:
systemctl status influxdb
Sie sollten die folgende Ausgabe erhalten:
influxdb.service - InfluxDB is an open-source, distributed, time series database Loaded: loaded (/lib/systemd/system/influxdb.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2020-10-10 09:48:22 UTC; 13s ago Docs: https://docs.influxdata.com/influxdb/ Main PID: 105724 (influxd) Tasks: 10 (limit: 4691) Memory: 10.3M CGroup: /system.slice/influxdb.service └─105724 /usr/bin/influxd -config /etc/influxdb/influxdb.conf
Schritt 4 – Grafana installieren
Importieren Sie zunächst den Grafana-Schlüssel mit dem folgenden Befehl:
wget -q -O - https://packages.grafana.com/gpg.key | apt-key add -
Fügen Sie als Nächstes das Grafana-Repository mit dem folgenden Befehl hinzu:
add-apt-repository "deb https://packages.grafana.com/oss/deb stable main"
Sobald das Repository hinzugefügt wurde, aktualisieren Sie das Repository und installieren Sie die neueste Version von Grafana mit dem folgenden Befehl:
apt-get update -y apt-get install grafana -y
Nachdem Grafana installiert wurde, laden Sie den systemd-Daemon mit dem folgenden Befehl neu:
systemctl daemon-reload
Starten Sie als Nächstes den Grafana-Dienst und ermöglichen Sie ihm, beim Systemneustart mit dem folgenden Befehl zu starten:
systemctl enable --now grafana-server systemctl start grafana-server
Überprüfen Sie als Nächstes den Status des Grafana-Dienstes mit dem folgenden Befehl:
systemctl status grafana-server
Sie sollten die folgende Ausgabe erhalten:
grafana-server.service - Grafana instance Loaded: loaded (/lib/systemd/system/grafana-server.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2020-10-10 09:50:26 UTC; 44s ago Docs: http://docs.grafana.org Main PID: 106788 (grafana-server) Tasks: 8 (limit: 4691) Memory: 19.4M CGroup: /system.slice/grafana-server.service └─106788 /usr/sbin/grafana-server --config=/etc/grafana/grafana.ini -- pidfile=/var/run/grafana/grafana-server.pid --packaging=deb>
Schritt 5 – InfluxDB konfigurieren
Als nächstes müssen Sie die InfluxDB-Datenbank konfigurieren, um die vom Telegraf-Agenten gesammelten Metriken zu speichern. Verbinden Sie zuerst die InfluxDB mit dem folgenden Befehl:
influx
Sie sollten die folgende Ausgabe erhalten:
Connected to http://localhost:8086 version 1.8.3 InfluxDB shell version: 1.8.3
Erstellen Sie als Nächstes eine Datenbank und einen Benutzer mit dem folgenden Befehl:
> create database telegrafdb > create user telegraf with password 'password' > grant all on telegrafdb to telegraf
Als nächstes überprüfen Sie die Datenbank mit dem folgenden Befehl:
> show databases
Sie sollten die folgende Ausgabe erhalten:
name: databases name ---- telegraf _internal telegrafdb
Überprüfen Sie als Nächstes die Benutzer mit dem folgenden Befehl:
> show users
Sie sollten die folgende Ausgabe erhalten:
user admin ---- ----- telegraf false
Verlassen Sie als Nächstes die InfluxDB-Konsole mit dem folgenden Befehl:
>exit
Schritt 6 – Telegraf Agent konfigurieren, um Systemmetriken zu sammeln
Als Nächstes müssen Sie den Telegraf-Agenten konfigurieren, um Systemmetriken zu sammeln. Hier werden wir den Telegraf-Agenten konfigurieren, um Systemmetriken zu erfassen, einschließlich Speichernutzung, Systemprozesse, Festplattennutzung, Systemlast, Systembetriebszeit und angemeldete Benutzer.
Mit dem folgenden Befehl können Sie eine benutzerdefinierte Telegraf-Konfigurationsdatei generieren:
telegraf config -input-filter cpu:mem:swap:system:processes:disk -output-filter influxdb > /etc/telegraf/telegraf.conf
Sobald die Konfigurationsdatei generiert ist, bearbeiten Sie die Konfigurationsdatei:
nano /etc/telegraf/telegraf.conf
Definieren Sie Ihre InfluxDB-Datenbankdetails:
[[outputs.influxdb]] urls = ["http://127.0.0.1:8086"] database = "telegrafdb" username = "telegraf" password = "password"
Speichern und schließen Sie die Datei und starten Sie dann den Telegraf-Dienst neu, um die Konfigurationsänderungen zu übernehmen:
systemctl restart telegraf
Als nächstes müssen Sie überprüfen, ob die Daten angezeigt werden oder nicht. Sie können den Konfigurationstest mit dem folgenden Befehl ausführen:
telegraf --config /etc/telegraf/telegraf.conf --test
Wenn alles korrekt ist, sollten Sie die folgende Ausgabe sehen:
2020-10-10T09:57:58Z I! Starting Telegraf 1.15.3 > mem,host=ubuntu2004 active=1144344576i,available=3518758912i,available_percent=85.25516847152974,buffered=164 536320i,cached=2911133696i,commit_limit=2559074304i,committed_as=1576108032i,dirty=6144 0i,free=731619328i,high_free=0i,high_total=0i,huge_page_size=2097152i,huge_pages_free=0i,hug e_pages_total=0i,inactive=1903452160i,low_free=0i,low_total=0i,mapped=218427392i,page_table s=3502080i,shared=651264i,slab=326660096i,sreclaimable=277262336i,sunreclaim=49397760i,sw ap_cached=24576i,swap_free=495136768i,swap_total=495411200i,total=4127326208i,used=3200 36864i,used_percent=7.754096668677951,vmalloc_chunk=0i,vmalloc_total=35184372087808i,vm alloc_used=6316032i,write_back=0i,write_back_tmp=0i 1602323878000000000 > system,host=ubuntu2004 load1=0,load15=0.05,load5=0.08,n_cpus=2i,n_users=4i 1602323878000000000 > disk,device=sda1,fstype=ext4,host=ubuntu2004,mode=rw,path=/ free=95962320896i,inodes_free=6365813i,inodes_total=6553600i,inodes_used=187787i,total=105 619841024i,used=5238685696i,used_percent=5.176515404753021 1602323878000000000 > diskio,host=ubuntu2004,name=sda1 io_time=351028i,iops_in_progress=0i,merged_reads=2995i,merged_writes=420522i,read_bytes=5 23574272i,read_time=3572i,reads=11978i,weighted_io_time=287724i,write_bytes=13355402240i, write_time=574952i,writes=587911i 1602323878000000000 > diskio,host=ubuntu2004,name=sda io_time=353848i,iops_in_progress=0i,merged_reads=2995i,merged_writes=420522i,read_bytes=5 25794304i,read_time=3581i,reads=12094i,weighted_io_time=288784i,write_bytes=13355402240i, write_time=593845i,writes=641651i 1602323878000000000 > kernel,host=ubuntu2004 boot_time=1602216148i,context_switches=13167299i,entropy_avail=2803i,interrupts=8104602i,pr ocesses_forked=107054i 1602323878000000000 > system,host=ubuntu2004 uptime=107730i 1602323878000000000 > system,host=ubuntu2004 uptime_format="1 day, 5:55" 1602323878000000000
Schritt 7 – Grafana-Datenquelle einrichten
Als Nächstes müssen Sie auf das Grafana-Dashboard zugreifen und eine Datenquelle hinzufügen, um die InfluxDB- und Telegraf-Metriken anzuzeigen.
Sie können auf das Grafana-Dashboard über die URL http://your-server-ip:3000 zugreifen /. Sie sollten die Anmeldeseite von Grafana sehen:
Geben Sie den Standard-Benutzernamen als Admin und das Passwort als Admin ein und klicken Sie dann auf Login Taste. Sie sollten den Bildschirm zum Zurücksetzen des Passworts sehen:
Hinweis:Seit Grafana Version 7.2.2 haben viele Benutzer den Standard admin gemeldet und Passwort funktioniert nicht. Geben Sie in diesem Fall Folgendes an der Eingabeaufforderung Ihres Servers ein:
grafana-cli admin reset-admin-password mynewpassword
Geben Sie Ihr neues Passwort ein und klicken Sie auf Senden Schaltfläche, um das Standardkennwort zu ändern. Sie sollten das Grafana-Dashboard auf der folgenden Seite sehen:
Um die Datenquelle hinzuzufügen, klicken Sie auf Ihre erste Datenquelle hinzufügen . Sie sollten den folgenden Bildschirm sehen:
Suchen Sie nach InfluxDB und klicken Sie auf Auswählen Taste. Sie sollten die folgende Seite sehen:
Legen Sie den Namen der InfluxDB fest , wählen Sie InfluxQL aus Definieren Sie in der Abfragesprache die URL der InfluxDB-Datenquelle, geben Sie die InfluxDB-Datenbankdetails an und klicken Sie auf Speichern und testen Taste. Sobald der Test erfolgreich ist, sollten Sie die folgende Seite sehen:
Schritt 8 – Grafana-Dashboard einrichten
An dieser Stelle haben wir InfluxDB als Datenquelle zum Grafana-Server hinzugefügt. Als nächstes müssen Sie das Grafana-Dashboard importieren.
Klicken Sie im Grafana-Dashboard auf das „+“ Menü auf der linken Seite und klicken Sie auf „Importieren ' Taste. Sie sollten die folgende Seite sehen:
Geben Sie die Grafana-ID 5955 ein und klicken Sie auf Laden Schaltfläche, um das Dashboard wie unten gezeigt zu laden.
Wählen Sie InfluxDB aus und klicken Sie auf Importieren Taste. Sie sollten das Grafana-Dashboard mit den vom Telegraf-Agenten gesammelten Systemmetriken sehen:
Schlussfolgerung
Herzliche Glückwünsche! Sie haben erfolgreich einen TIG-Stack auf dem Ubuntu 20.04-Server installiert und konfiguriert. Sie können jetzt das Dashboard erkunden und mit der Überwachung Ihres Servers mithilfe des TIG-Stacks beginnen. Probieren Sie es noch heute auf dem VPS-Hosting von Atlantic.Net aus!