# Loki Helm Values # Chart: https://grafana.github.io/helm-charts # Single binary deployment with S3 (MinIO) storage loki: # Use S3 storage (MinIO) storage: type: s3 s3: endpoint: minio.minio.svc.cluster.local:9000 s3ForcePathStyle: true insecure: true bucketNames: chunks: loki ruler: loki admin: loki # Single binary mode with 1 replica commonConfig: replication_factor: 1 path_prefix: /var/loki # Schema config - S3 backend schemaConfig: configs: - from: "2024-01-01" store: tsdb object_store: s3 schema: v13 index: prefix: index_ period: 24h # Limits limits_config: retention_period: 168h # 7 days ingestion_rate_mb: 10 ingestion_burst_size_mb: 20 max_streams_per_user: 10000 # Auth disabled for simplicity auth_enabled: false # Use single binary deployment (simpler) deploymentMode: SingleBinary singleBinary: replicas: 1 # Disable PVC - use emptyDir for WAL (data stored in MinIO) persistence: enabled: false # Soft anti-affinity for HA affinity: podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - weight: 100 podAffinityTerm: labelSelector: matchLabels: app.kubernetes.io/name: loki topologyKey: kubernetes.io/hostname extraVolumes: - name: data emptyDir: sizeLimit: 2Gi extraVolumeMounts: - name: data mountPath: /var/loki # Medium priority for observability priorityClassName: medium-priority resources: requests: cpu: 63m memory: 363Mi limits: memory: 363Mi # MinIO S3 credentials from secret extraEnv: - name: AWS_ACCESS_KEY_ID valueFrom: secretKeyRef: name: minio-s3-credentials key: AWS_ACCESS_KEY_ID - name: AWS_SECRET_ACCESS_KEY valueFrom: secretKeyRef: name: minio-s3-credentials key: AWS_SECRET_ACCESS_KEY # Disable components not needed in single binary mode backend: replicas: 0 read: replicas: 0 write: replicas: 0 # Gateway disabled (direct access) gateway: enabled: false # Disable all caching (use simple mode) chunksCache: enabled: false resultsCache: enabled: false # Loki Canary - disabled to reduce MinIO load lokiCanary: enabled: false # Monitoring monitoring: selfMonitoring: enabled: false grafanaAgent: installOperator: false serviceMonitor: enabled: true interval: 60s labels: release: prometheus relabelings: - targetLabel: cluster replacement: "mayne-cluster" # Test disabled test: enabled: false