gitops: observability stack (Loki/Promtail/Grafana), Grafana Ingress, Argo multi-source
- Add gitops/observability umbrella chart with vendored Helm deps - Grafana Ingress: Traefik, letsencrypt-prod, grafana.k8s.selair.it + root_url - Argo Application: spec.sources (onelab + onelab-obs) - OneLab: configuration secret override, compliance/LDAP values, logs.path /logs - Docs: OBSERVABILITY, BOOTSTRAP, README, instance-overrides example Made-with: Cursor
This commit is contained in:
128
gitops/observability/values.yaml
Normal file
128
gitops/observability/values.yaml
Normal file
@@ -0,0 +1,128 @@
|
||||
# Umbrella chart: Loki (SingleBinary + filesystem) + Promtail + Grafana.
|
||||
# Keep hostPath below in sync with persistence.hostPath.logs in gitops/values/k3s-example.yaml.
|
||||
|
||||
loki:
|
||||
deploymentMode: SingleBinary
|
||||
loki:
|
||||
auth_enabled: false
|
||||
commonConfig:
|
||||
replication_factor: 1
|
||||
storage:
|
||||
type: filesystem
|
||||
schemaConfig:
|
||||
configs:
|
||||
- from: "2024-04-01"
|
||||
store: tsdb
|
||||
object_store: filesystem
|
||||
schema: v13
|
||||
index:
|
||||
prefix: loki_index_
|
||||
period: 24h
|
||||
limits_config:
|
||||
retention_period: 168h
|
||||
ingestion_rate_mb: 16
|
||||
ingestion_burst_size_mb: 32
|
||||
singleBinary:
|
||||
replicas: 1
|
||||
persistence:
|
||||
enabled: true
|
||||
size: 10Gi
|
||||
backend:
|
||||
replicas: 0
|
||||
read:
|
||||
replicas: 0
|
||||
write:
|
||||
replicas: 0
|
||||
ingester:
|
||||
replicas: 0
|
||||
querier:
|
||||
replicas: 0
|
||||
queryFrontend:
|
||||
replicas: 0
|
||||
queryScheduler:
|
||||
replicas: 0
|
||||
distributor:
|
||||
replicas: 0
|
||||
compactor:
|
||||
replicas: 0
|
||||
indexGateway:
|
||||
replicas: 0
|
||||
bloomCompactor:
|
||||
replicas: 0
|
||||
bloomGateway:
|
||||
replicas: 0
|
||||
ruler:
|
||||
replicas: 0
|
||||
minio:
|
||||
enabled: false
|
||||
lokiCanary:
|
||||
enabled: false
|
||||
test:
|
||||
enabled: false
|
||||
chunksCache:
|
||||
enabled: false
|
||||
resultsCache:
|
||||
enabled: false
|
||||
|
||||
promtail:
|
||||
config:
|
||||
clients:
|
||||
- url: http://{{ .Release.Name }}-loki-gateway.{{ .Release.Namespace }}.svc.cluster.local/loki/api/v1/push
|
||||
snippets:
|
||||
extraScrapeConfigs: |
|
||||
- job_name: onelab-host-log-files
|
||||
static_configs:
|
||||
- targets:
|
||||
- localhost
|
||||
labels:
|
||||
job: onelab-files
|
||||
__path__: /onelab-host-logs/**/*
|
||||
extraVolumes:
|
||||
- name: onelab-host-logs
|
||||
hostPath:
|
||||
path: /opt/onelab/logs
|
||||
type: DirectoryOrCreate
|
||||
extraVolumeMounts:
|
||||
- name: onelab-host-logs
|
||||
mountPath: /onelab-host-logs
|
||||
readOnly: true
|
||||
|
||||
# Grafana Ingress: align host/TLS with gitops/values/k3s-example.yaml ingress (Traefik + cert-manager).
|
||||
grafana:
|
||||
adminUser: admin
|
||||
adminPassword: changeme
|
||||
persistence:
|
||||
enabled: true
|
||||
size: 2Gi
|
||||
service:
|
||||
type: ClusterIP
|
||||
# Required when served behind Ingress (redirects, OAuth callbacks).
|
||||
grafana.ini:
|
||||
server:
|
||||
domain: grafana.k8s.selair.it
|
||||
root_url: https://grafana.k8s.selair.it/
|
||||
ingress:
|
||||
enabled: true
|
||||
ingressClassName: traefik
|
||||
annotations:
|
||||
cert-manager.io/cluster-issuer: letsencrypt-prod
|
||||
hosts:
|
||||
- grafana.k8s.selair.it
|
||||
path: /
|
||||
pathType: Prefix
|
||||
tls:
|
||||
- secretName: grafana-tls-k8s-selair
|
||||
hosts:
|
||||
- grafana.k8s.selair.it
|
||||
datasources:
|
||||
datasources.yaml:
|
||||
apiVersion: 1
|
||||
datasources:
|
||||
- name: Loki
|
||||
type: loki
|
||||
uid: loki
|
||||
url: http://{{ .Release.Name }}-loki-gateway.{{ .Release.Namespace }}.svc.cluster.local
|
||||
access: proxy
|
||||
isDefault: true
|
||||
jsonData:
|
||||
maxLines: 1000
|
||||
Reference in New Issue
Block a user