# Prometheus configuration prometheus: prometheusSpec: retention: 30d retentionSize: "45GB" # Storage configuration storageSpec: volumeClaimTemplate: spec: accessModes: - ReadWriteOnce resources: requests: storage: 50Gi # storageClassName: "your-storage-class" # Uncomment and specify if needed # Resource limits resources: requests: cpu: 500m memory: 2Gi limits: cpu: 2000m memory: 4Gi # Scrape interval scrapeInterval: 30s evaluationInterval: 30s # Service configuration service: type: ClusterIP port: 9090 # Ingress (disabled by default) ingress: enabled: false # ingressClassName: nginx # hosts: # - prometheus.example.com # tls: # - secretName: prometheus-tls # hosts: # - prometheus.example.com # Grafana configuration grafana: enabled: true # Admin credentials adminPassword: "admin" # CHANGE THIS IN PRODUCTION! # Persistence persistence: enabled: true size: 10Gi # storageClassName: "your-storage-class" # Uncomment and specify if needed # Resource limits resources: requests: cpu: 100m memory: 256Mi limits: cpu: 500m memory: 512Mi # Service configuration service: type: ClusterIP port: 80 # Ingress (disabled by default) ingress: enabled: false # ingressClassName: nginx # hosts: # - grafana.example.com # tls: # - secretName: grafana-tls # hosts: # - grafana.example.com # Default dashboards defaultDashboardsEnabled: true defaultDashboardsTimezone: Europe/Prague # Alertmanager configuration alertmanager: enabled: true alertmanagerSpec: # Storage configuration storage: volumeClaimTemplate: spec: accessModes: - ReadWriteOnce resources: requests: storage: 10Gi # storageClassName: "your-storage-class" # Uncomment and specify if needed # Resource limits resources: requests: cpu: 100m memory: 128Mi limits: cpu: 500m memory: 256Mi # Service configuration service: type: ClusterIP port: 9093 # Ingress (disabled by default) ingress: enabled: false # ingressClassName: nginx # hosts: # - alertmanager.example.com # tls: # - secretName: alertmanager-tls # hosts: # - alertmanager.example.com # Alertmanager configuration config: global: resolve_timeout: 5m route: group_by: [ 'alertname', 'cluster', 'service' ] group_wait: 10s group_interval: 10s repeat_interval: 12h receiver: 'null' routes: - match: alertname: Watchdog receiver: 'null' receivers: - name: 'null' # Add your receivers here (email, slack, pagerduty, etc.) # - name: 'slack' # slack_configs: # - api_url: 'YOUR_SLACK_WEBHOOK_URL' # channel: '#alerts' # title: '{{ range .Alerts }}{{ .Annotations.summary }}\n{{ end }}' # text: '{{ range .Alerts }}{{ .Annotations.description }}\n{{ end }}' # Node Exporter nodeExporter: enabled: true # Kube State Metrics kubeStateMetrics: enabled: true # Prometheus Operator prometheusOperator: enabled: true resources: requests: cpu: 100m memory: 128Mi limits: cpu: 500m memory: 256Mi # Service Monitors # Automatically discover and monitor services with appropriate labels prometheus-node-exporter: prometheus: monitor: enabled: true # Additional ServiceMonitors can be defined here # additionalServiceMonitors: [] # Global settings global: rbac: create: true