Sie können Host Access for the Cloud-Sitzungsserver mit Prometheus und Grafana überwachen. Beide Werkzeuge sind kostenlose Open-Source-Lösungen und können in Docker-Containern ausgeführt werden, was eine einfache Bereitstellung ermöglihcht. Jeder Sitzungsserver stellt einen Prometheus-Endpunkt bereit, der Metriken zum Server präsentiert. Prometheus kann zum Analysieren von Daten von diesem Endgerät und fortwährenden Speichern dieser Daten, auch von mehreren Sitzungsservern, konfiguriert werden. Grafana stellt dann ein Dashboard bereit, mit dem die Daten mit nur wenigen Einrichtungsschritten abgerufen und grafisch dargestellt werden können.
Voraussetzungen:
Docker und Docker Compose müssen installiert sein.
Schritte:
Erstellen Sie eine Docker Compose-Datei (.yml), die Grafana- und Prometheus-Images enthält.
Verknüpfen Sie Prometheus mit dem Prometheus-Endpunkt des Sitzungsservers.
Konfigurieren Sie die Grafana-Datenquelle zur Kommunikation mit Prometheus und importieren Sie die vorkonfigurierten Dashboards.
Konfigurieren Sie die Grafana-Dashboards..
Greifen Sie auf Grafana zu.
Schritt 1. Docker Compose-Datei erstellen
Erstellen Sie die Datei docker-compose.yml file mit Grafana- und Prometheus-Images.
docker-compose.yml
version: "3.1"
services:
grafana:
build: grafana
ports:
- '3000:3000'
prometheus:
image: prom/prometheus:v2.6.1
ports:
- '9090:9090'
volumes:
- ./config/prometheus.yml:/etc/prometheus/prometheus.yml
- ./prometheus:/prometheus
networks:
monitoring:
aliases:
- prometheus
networks:
monitoring:
Schritt 2. Prometheus mit dem Prometheus-Endpunkt von HACloud verknüpfen
Um Prometheus mit dem Endpunkt zu verknüpfen, generieren Sie eine Datei prometheus.yml.
In diesem Beispiel wird die Datei „prometheus.yml“ im Konfigurationsverzeichnis gespeichert.
Diese Beispielkonfiguration ermöglicht das Analysieren von Daten vom Prometheus-Endpunkt mit HTTP oder HTTPS (TLS).
Falls TLS auf dem Sitzungsserver deaktiviert ist, entfernen Sie tls_config und ändern Sie das Schema in der Beispielkonfiguration zu http.
Konfigurieren Sie session-server-hostname (den Hostnamen des Sitzungsservers).
HINWEIS:Aufgrund des Docker-Networking muss dies die eigentliche IP-Adresse oder der Hostname des Sitzungsserver-Hostcomputers sein. Diese IP-Adresse kann üblicherweise mit ifconfig/ipconfig abgerufen werden.
Passen Sie die Ports je nach Bedarf an.
config/prometheus.yml
scrape_configs: - ']
- job_name: 'HACloud Session Server with TLS'
scrape_interval: 15s
scheme: https
tls_config:
insecure_skip_verify: true
metrics_path: actuator/prometheus
static_configs:
- targets: ['session-server-hostname:7443']
Schritt 3. Kommunikation zwischen Prometheus und der Datenquelle konfigurieren
Die Kommunikation zwischen der lokalen Instanz von Prometheus und der Grafana-Datenquelle kann im Grafana-Docker-Image konfiguriert werden. Vorab geladene Dashbaords sind beim Starten verfügbar.
grafana/Dockerfile
FROM grafana/grafana:5.3.2
ADD ./provisioning /etc/grafana/provisioning
ADD ./config.ini /etc/grafana/config.ini
ADD ./dashboards /var/lib/grafana/dashboards
grafana/config.ini
[paths]
provisioning = /etc/grafana/provisioning
grafana/provisioning/datasources/all.yml
datasources:
- name: 'Prometheus'
type: 'prometheus'
access: 'browser'
url: 'http://localhost:9090'
is_default: true
editable: false
grafana/provisioning/dashboards/all.yml
- name: 'default'
org_id: 1
folder: ''
type: 'file'
options:
folder: '/var/lib/grafana/dashboards'
Schritt 4. Grafana-Dashboards konfigurieren
Die JSON-Beispieldatei hilft Ihnen beim Einstieg in die Konfiguration Ihrer Grafana-Dashboards.
So sorgen Sie dafür, dass Ihr Docker-Container das Dashboard beim Start lädt:
Suchen Sie HACloudSessionservers.json im Verzeichnis hacloud/utilities/grafana.
Kopieren Sie HACloudSessionservers.json in Ihr Verzeichnis grafana/dashboards.
5. Schritt. Auf Grafana zugreifen
Starten Sie den Docker-Container mit dem Befehl docker-compose up -d.
Überprüfen Sie mit http://localhost:9090/targets, ob die Prometheus-Ziele die Sitzungsserver erfolgreich analysieren.
Greifen Sie mit http://localhost:3000 auf Grafana zu.
Benutzername und Passwort lauten admin. Der Benutzername und das Passwort können in mit Docker-Umgebungsvariablen konfiguriert werden.
Stoppen Sie den Docker-Container mit dem Befehl docker-compose down .