Files
italiadatacenter/add-on/monitoring/files/04-loki-alloy-values.yaml
alessandro barucci 1a2cca2cd2 varie
2026-08-09 17:03:02 +02:00

106 lines
2.7 KiB
YAML

# =====================================================================
# Loki + Grafana Alloy — log aggregation
#
# Loki:
# helm repo add grafana https://grafana.github.io/helm-charts
# helm repo update
# helm install loki grafana/loki -n monitoring -f loki-values.yaml
#
# Alloy (raccolta log, DaemonSet su ogni nodo RKE2):
# helm install alloy grafana/alloy -n monitoring -f alloy-values.yaml
#
# Questo file contiene ENTRAMBI i set di values, separati da "---";
# salvali in due file distinti se preferisci due comandi helm separati.
# =====================================================================
# ---------------------------------------------------------------------
# loki-values.yaml (modalità single-binary, adatta a partire in piccolo;
# per HA/produzione a lungo termine valutare la modalità "simple scalable"
# con backend object storage S3-compatibile, es. MinIO)
# ---------------------------------------------------------------------
deploymentMode: SingleBinary
loki:
auth_enabled: false
commonConfig:
replication_factor: 1
storage:
type: filesystem
singleBinary:
replicas: 1
persistence:
enabled: true
storageClass: longhorn # <-- CAMBIA con la tua storageClass
size: 50Gi
resources:
requests:
cpu: 200m
memory: 512Mi
limits:
memory: 1Gi
# Disabilita i componenti "scalable" non necessari in modalità SingleBinary
read:
replicas: 0
write:
replicas: 0
backend:
replicas: 0
gateway:
enabled: false
test:
enabled: false
---
# ---------------------------------------------------------------------
# alloy-values.yaml (DaemonSet che raccoglie log da tutti i nodi/pod
# e li invia a Loki)
# ---------------------------------------------------------------------
alloy:
configMap:
content: |
discovery.kubernetes "pods" {
role = "pod"
}
discovery.relabel "pods" {
targets = discovery.kubernetes.pods.targets
rule {
source_labels = ["__meta_kubernetes_namespace"]
target_label = "namespace"
}
rule {
source_labels = ["__meta_kubernetes_pod_name"]
target_label = "pod"
}
rule {
source_labels = ["__meta_kubernetes_pod_container_name"]
target_label = "container"
}
}
loki.source.kubernetes "pods" {
targets = discovery.relabel.pods.output
forward_to = [loki.write.default.receiver]
}
loki.write "default" {
endpoint {
url = "http://loki.monitoring.svc.cluster.local:3100/loki/api/v1/push"
}
}
controller:
type: daemonset
resources:
requests:
cpu: 100m
memory: 128Mi
limits:
memory: 256Mi