Cluster Logs
Kubernetes-Cluster-Logs erfassen Log-Ausgaben aller Pods/Container clusterweit und leiten sie an ein zentrales Logging-Backend (z.B. Grafana Loki) weiter.
Alloy als Log-Sammler
Alloy wird als DaemonSet auf jedem Node deployed und liest die Container-Logs direkt vom Dateisystem.
Grafana Cloud Loki-Integration einrichten unter:
https://grafana.com/orgs/trutzonline/hosted-logs/838274#sending-logs
Das dort generierte Skript erstellt automatisch:
- Ein Alloy-DaemonSet
- Die passende
config.alloy - Kubernetes RBAC (ServiceAccount, ClusterRole)
# Skript von Grafana Cloud ausführen
kubectl apply -f grafana-cloud-loki.yaml
kubectl get daemonset -n monitoring
kubectl get pods -n monitoring -o wide
Logs in Grafana Cloud abfragen
LogQL-Abfragen in Grafana → Explore → Loki:
# Alle Logs eines Namespaces
{namespace="default"}
# Logs der rolldice-App
{namespace="default", app_kubernetes_io_name="rolldice"}
# Fehler-Logs clusterweit
{cluster="k3s"} |= "error"
# Log-Rate über Zeit
rate({namespace="default"}[5m])
Node-Logs
Logs der Kubernetes-Systemkomponenten auf dem Node:
ssh -i schulung root@[ip-node]
journalctl -u k3s -f # k3s Control-Plane Logs
journalctl -u k3s-agent -f # k3s Worker-Node Logs