it-wiki:kubernetes:cluster_logging_loki
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
it-wiki:kubernetes:cluster_logging_loki [2025/09/04 11:39] – marko | it-wiki:kubernetes:cluster_logging_loki [2025/09/05 07:36] (aktuell) – [Installation von Loki] marko | ||
---|---|---|---|
Zeile 70: | Zeile 70: | ||
* **Microservice** | * **Microservice** | ||
(vgl. [[https:// | (vgl. [[https:// | ||
- | concepts/|]]Grafana Labs Documentation) | + | concepts/ |
\\ | \\ | ||
Zeile 315: | Zeile 315: | ||
memory: 128Mi | memory: 128Mi | ||
</ | </ | ||
+ | |||
+ | ===== Installation von Grafana mittels Helm-Chart ===== | ||
+ | Die Bereitstellung von Grafana erfolgt analog zu Loki über ein offizielles Helm-Chart. Auch hier kann wieder das selbe Repository von Grafana verwendet werden. | ||
+ | |||
+ | <code bash> | ||
+ | helm install grafana grafana/ | ||
+ | </ | ||
+ | |||
+ | Für die Installation empfiehlt sich die Verwendung einer vorbereiteten Konfigurationsdatei, | ||
+ | [[https:// | ||
+ | |||
+ | Für unsere kleine Übung verwenden wir am besten folgende Konfiguration. Diese beinhaltet bereits ein vorkonfiguriertes Dashboard. | ||
+ | '' | ||
+ | <code yaml> | ||
+ | # grafana-values.yaml - Erweiterte Version mit Dashboards | ||
+ | replicas: 1 | ||
+ | |||
+ | resources: | ||
+ | limits: | ||
+ | cpu: 300m | ||
+ | memory: 512Mi | ||
+ | requests: | ||
+ | cpu: 100m | ||
+ | memory: 256Mi | ||
+ | |||
+ | persistence: | ||
+ | enabled: true | ||
+ | size: 5Gi | ||
+ | storageClassName: | ||
+ | |||
+ | adminUser: admin | ||
+ | adminPassword: | ||
+ | |||
+ | # Service configuration | ||
+ | service: | ||
+ | type: ClusterIP | ||
+ | port: 80 | ||
+ | |||
+ | # Datasources | ||
+ | datasources: | ||
+ | datasources.yaml: | ||
+ | apiVersion: 1 | ||
+ | datasources: | ||
+ | - name: Loki | ||
+ | type: loki | ||
+ | url: http:// | ||
+ | access: proxy | ||
+ | isDefault: true | ||
+ | jsonData: | ||
+ | maxLines: 1000 | ||
+ | derivedFields: | ||
+ | - datasourceUid: | ||
+ | matcherRegex: | ||
+ | name: TraceID | ||
+ | url: " | ||
+ | |||
+ | # Dashboard providers | ||
+ | dashboardProviders: | ||
+ | dashboardproviders.yaml: | ||
+ | apiVersion: 1 | ||
+ | providers: | ||
+ | - name: ' | ||
+ | orgId: 1 | ||
+ | folder: ' | ||
+ | type: file | ||
+ | disableDeletion: | ||
+ | editable: true | ||
+ | updateIntervalSeconds: | ||
+ | allowUiUpdates: | ||
+ | options: | ||
+ | path: / | ||
+ | - name: ' | ||
+ | orgId: 1 | ||
+ | folder: ' | ||
+ | type: file | ||
+ | disableDeletion: | ||
+ | editable: true | ||
+ | updateIntervalSeconds: | ||
+ | allowUiUpdates: | ||
+ | options: | ||
+ | path: / | ||
+ | |||
+ | # Custom Dashboards | ||
+ | dashboards: | ||
+ | kubernetes: | ||
+ | kubernetes-cluster-overview: | ||
+ | json: | | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | ] | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | ], | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | ] | ||
+ | }, | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | }, | ||
+ | " | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | ], | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | ] | ||
+ | } | ||
+ | }, | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | ], | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | ], | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | } | ||
+ | |||
+ | kubernetes-namespace-logs: | ||
+ | json: | | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | }, | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | </ | ||
+ | |||
+ | ===== Testen des Cluster Loggings ===== | ||
+ | Um sich nun das Gesamtergebnis schnell anschauen zu können richtet man am besten ein Port-Forwarding zum Grafana WebUI auf Port 3000 ein. | ||
+ | <code bash> | ||
+ | kubectl port-forward service/ | ||
+ | </ | ||
+ | |||
+ | ==== Zugriff auf das Grafana-Webinterface ==== | ||
+ | |||
+ | Nach erfolgreicher Installation und korrekter Konfiguration kann auf das Grafana-Webinterface zugegriffen werden. | ||
+ | |||
+ | Nach Eingabe der entsprechenden Zugangsdaten erfolgt die Anmeldung am System. Anschließend steht die vollständige Benutzeroberfläche von Grafana zur Verfügung, über die beispielsweise ein Dashboard für Loki genutzt oder eingerichtet werden kann. |
it-wiki/kubernetes/cluster_logging_loki.1756985956.txt.gz · Zuletzt geändert: von marko