Grafana Loki konfigurieren
Dieser Leitfaden enthält Anweisungen zur Konfiguration von Loki zum Sammeln von Protokollen und Grafana zum Abfragen und Anzeigen von Protokollen für einen Milvus-Cluster.
In diesem Leitfaden erfahren Sie, wie Sie:
- Loki und Promtail auf einem Milvus-Cluster mit Helm bereitstellen.
- Konfigurieren Sie den Objektspeicher für Loki.
- Abfragen von Protokollen mit Grafana.
Voraussetzungen
- Sie haben einen Milvus-Cluster auf K8s installiert.
- Sie haben die erforderlichen Tools, einschließlich Helm und Kubectl, installiert.
Loki bereitstellen
Loki ist ein von Prometheus inspiriertes System zur Protokollaggregation. Setzen Sie Loki mit Helm ein, um Protokolle von Ihrem Milvus-Cluster zu sammeln.
1. Hinzufügen des Grafana Helm Chart Repository
Fügen Sie das Chart-Repository von Grafana zu Helm hinzu und aktualisieren Sie es:
helm repo add grafana https://grafana.github.io/helm-charts
helm repo update
2. Konfigurieren Sie den Objektspeicher für Loki
Wählen Sie eine der folgenden Speicheroptionen und erstellen Sie eine loki.yaml
Konfigurationsdatei:
Option 1: Verwendung von MinIO für die Speicherung
loki: commonConfig: replication_factor: 1 auth_enabled: false minio: enabled: true
Option 2: Verwendung von AWS S3 für die Speicherung
Im folgenden Beispiel ersetzen Sie
<accessKey>
und<keyId>
durch Ihren eigenen S3-Zugangsschlüssel und Ihre ID,s3.endpoint
durch den S3-Endpunkt unds3.region
durch die S3-Region.loki: commonConfig: replication_factor: 1 auth_enabled: false storage: bucketNames: chunks: loki-chunks ruler: loki-ruler admin: loki-admin type: 's3' s3: endpoint: s3.us-west-2.amazonaws.com region: us-west-2 secretAccessKey: <accessKey> accessKeyId: <keyId>
3. Loki installieren
Führen Sie die folgenden Befehle aus, um Loki zu installieren:
kubectl create ns loki
helm install --values loki.yaml loki grafana/loki -n loki
Promtail bereitstellen
Promtail ist ein Protokollsammelagent für Loki. Er liest Logs von Milvus-Pods und sendet sie an Loki.
1. Promtail-Konfiguration erstellen
Erstellen Sie eine promtail.yaml
Konfigurationsdatei:
config:
clients:
- url: http://loki-gateway/loki/api/v1/push
2. Promtail installieren
Installieren Sie Promtail mit Helm:
helm install --values promtail.yaml promtail grafana/promtail -n loki
Abfrage von Protokollen mit Grafana
Setzen Sie Grafana ein und konfigurieren Sie es für die Verbindung mit Loki zur Abfrage von Protokollen.
1. Grafana bereitstellen
Installieren Sie Grafana mit den folgenden Befehlen:
kubectl create ns monitoring
helm install my-grafana grafana/grafana --namespace monitoring
Bevor Sie auf Grafana zugreifen können, müssen Sie das Passwort admin
abrufen:
kubectl get secret --namespace monitoring my-grafana -o jsonpath="{.data.admin-password}" | base64 --decode ; echo
Leiten Sie dann den Grafana-Port an Ihren lokalen Rechner weiter:
export POD_NAME=$(kubectl get pods --namespace monitoring -l "app.kubernetes.io/name=grafana,app.kubernetes.io/instance=my-grafana" -o jsonpath="{.items[0].metadata.name}")
kubectl --namespace monitoring port-forward $POD_NAME 3000
2. Loki als Datenquelle in Grafana hinzufügen
Sobald Grafana läuft, müssen Sie Loki als Datenquelle hinzufügen, um Logs abzufragen.
- Öffnen Sie einen Webbrowser und navigieren Sie zu
127.0.0.1:3000
. Melden Sie sich mit dem Benutzernamenadmin
und dem zuvor erhaltenen Passwort an. - Wählen Sie im Menü auf der linken Seite Verbindungen > Neue Verbindung hinzufügen.
- Wählen Sie auf der nun angezeigten Seite Loki als Datenquellentyp. Sie können loki in die Suchleiste eingeben, um die Datenquelle zu finden.
- Geben Sie in den Einstellungen für die Loki-Datenquelle den Namen und die URL an, und klicken Sie dann auf Speichern und testen.
Datenquelle
3. Milvus Logs abfragen
Nachdem Sie Loki als Datenquelle hinzugefügt haben, fragen Sie Milvus Logs in Grafana ab:
- Klicken Sie im Menü auf der linken Seite auf Explore.
- Wählen Sie in der oberen linken Ecke der Seite die Datenquelle loki.
- Verwenden Sie den Label-Browser, um Labels auszuwählen und Logs abzufragen.
Abfrage