diff options
Diffstat (limited to 'tools')
-rw-r--r-- | tools/monitoring/Chart.yaml | 20 | ||||
-rw-r--r-- | tools/monitoring/values.yaml | 81 |
2 files changed, 101 insertions, 0 deletions
diff --git a/tools/monitoring/Chart.yaml b/tools/monitoring/Chart.yaml new file mode 100644 index 0000000..fa9f207 --- /dev/null +++ b/tools/monitoring/Chart.yaml @@ -0,0 +1,20 @@ +apiVersion: v2 +name: monitoring +description: A Helm chart for setting up Grafana, Prometheus, Elasticsearch, and OpenTelemetry Collector +version: 0.1.0 +appVersion: "1.0" + +dependencies: + - name: grafana + version: 11.0.0 + repository: "https://grafana.github.io/helm-charts" + - name: prometheus + version: 2.53.0 + repository: "https://prometheus-community.github.io/helm-charts" + - name: elasticsearch + version: 8.5.1 + repository: "https://helm.elastic.co" + - name: opentelemetry-collector + version: 0.103.0 + repository: "https://open-telemetry.github.io/opentelemetry-helm-charts" + diff --git a/tools/monitoring/values.yaml b/tools/monitoring/values.yaml new file mode 100644 index 0000000..195209f --- /dev/null +++ b/tools/monitoring/values.yaml @@ -0,0 +1,81 @@ +global: + namespace: monitoring + +grafana: + ingress: + enabled: true + annotations: + traefik.ingress.kubernetes.io/router.entrypoints: websecure + traefik.ingress.kubernetes.io/router.tls: "true" + traefik.ingress.kubernetes.io/router.tls.certresolver: "default" + traefik.ingress.kubernetes.io/redirect-entry-point: https + hosts: + - grafana.topkek.cloud + path: / + tls: + - hosts: + - grafana.topkek.cloud + secretName: grafana-tls + + datasources: + datasources.yaml: + apiVersion: 1 + datasources: + - name: Prometheus + type: prometheus + access: proxy + url: http://prometheus-server.monitoring.svc.cluster.local + isDefault: true + - name: Elasticsearch + type: elasticsearch + access: proxy + url: http://elasticsearch-master.monitoring.svc.cluster.local:9200 + jsonData: + esVersion: 7 + timeField: "@timestamp" + +prometheus: + alertmanager: + enabled: true + pushgateway: + enabled: true + server: + enabled: true + +elasticsearch: + volumeClaimTemplate: + accessModes: [ "ReadWriteOnce" ] + resources: + requests: + storage: 30Gi + +opentelemetry-collector: + config: + receivers: + otlp: + protocols: + grpc: + http: + processors: + batch: + exporters: + prometheusremotewrite: + endpoint: "http://prometheus-server.monitoring.svc.cluster.local/api/v1/write" + logging: + loglevel: debug + elasticsearch: + endpoints: ["http://elasticsearch-master.monitoring.svc.cluster.local:9200"] + index: "otel-logs-%{+yyyy.MM.dd}" + service: + pipelines: + metrics: + receivers: [otlp] + processors: [batch] + exporters: [prometheusremotewrite] + logs: + receivers: [otlp] + processors: [batch] + exporters: [logging, elasticsearch] + otelcol: + enabled: true + |