diff --git a/prototypes/grafana/helm/grafana.ytt.yaml b/prototypes/grafana/helm/grafana.ytt.yaml index 196052a..0bf90f6 100644 --- a/prototypes/grafana/helm/grafana.ytt.yaml +++ b/prototypes/grafana/helm/grafana.ytt.yaml @@ -64,6 +64,9 @@ dashboards: gnetId: 15757 revision: 37 datasource: VictoriaMetrics + matrix-synapse: + url: https://raw.githubusercontent.com/element-hq/synapse/v1.152.0/contrib/grafana/synapse.json + datasource: VictoriaMetrics ocis: datasource: VictoriaMetrics json: |- diff --git a/prototypes/matrix-synapse/ytt/metrics-service.ytt.yaml b/prototypes/matrix-synapse/ytt/metrics-service.ytt.yaml new file mode 100644 index 0000000..2310b60 --- /dev/null +++ b/prototypes/matrix-synapse/ytt/metrics-service.ytt.yaml @@ -0,0 +1,24 @@ +#@ load("@ytt:data", "data") + +#@ ns = data.values.application.namespace + +--- +apiVersion: v1 +kind: Service +metadata: + name: matrix-synapse-metrics + namespace: #@ ns + labels: + matrix_metrics: enabled +spec: + type: ClusterIP + clusterIP: None + selector: + app.kubernetes.io/component: synapse + app.kubernetes.io/instance: matrix-synapse + app.kubernetes.io/name: matrix-synapse + ports: + - name: metrics + port: 9090 + targetPort: metrics + protocol: TCP diff --git a/prototypes/victoria-metrics-single/helm/victoria-metrics-single.ytt.yaml b/prototypes/victoria-metrics-single/helm/victoria-metrics-single.ytt.yaml index 43aed80..3754df0 100644 --- a/prototypes/victoria-metrics-single/helm/victoria-metrics-single.ytt.yaml +++ b/prototypes/victoria-metrics-single/helm/victoria-metrics-single.ytt.yaml @@ -94,3 +94,17 @@ server: target_label: ocis_service - source_labels: [__meta_kubernetes_pod_name] target_label: pod + - job_name: synapse + metrics_path: /_synapse/metrics + kubernetes_sd_configs: + - role: endpoints + namespaces: + names: [matrix] + relabel_configs: + - source_labels: [__meta_kubernetes_service_label_matrix_metrics, __meta_kubernetes_endpoint_port_name] + action: keep + regex: enabled;metrics + - source_labels: [__meta_kubernetes_pod_name] + target_label: pod + - target_label: index + replacement: "0" diff --git a/rendered/envs/minikube/grafana/configmap-grafana.yaml b/rendered/envs/minikube/grafana/configmap-grafana.yaml index fa58c87..826dd73 100644 --- a/rendered/envs/minikube/grafana/configmap-grafana.yaml +++ b/rendered/envs/minikube/grafana/configmap-grafana.yaml @@ -19,7 +19,7 @@ data: name: VictoriaMetrics type: prometheus url: http://victoria-metrics-single-server.monitoring.svc:8428 - download_dashboards.sh: "#!/usr/bin/env sh\nset -euf\nmkdir -p /var/lib/grafana/dashboards/default\n\ncurl -skf \\\n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\" \\\n-H \"Content-Type: application/json;charset=UTF-8\" \\\n \"https://grafana.com/api/dashboards/15757/revisions/37/download\" \\\n | sed '/-- .* --/! s/\"datasource\":.*,/\"datasource\": \"VictoriaMetrics\",/g' \\\n> \"/var/lib/grafana/dashboards/default/kubernetes-cluster.json\"\n \ncurl -skf \\\n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\" \\\n-H \"Content-Type: application/json;charset=UTF-8\" \\\n \"https://grafana.com/api/dashboards/1860/revisions/37/download\" \\\n | sed '/-- .* --/! s/\"datasource\":.*,/\"datasource\": \"VictoriaMetrics\",/g' \\\n> \"/var/lib/grafana/dashboards/default/node-exporter.json\"\n" + download_dashboards.sh: "#!/usr/bin/env sh\nset -euf\nmkdir -p /var/lib/grafana/dashboards/default\n\ncurl -skf \\\n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\" \\\n-H \"Content-Type: application/json;charset=UTF-8\" \\\n \"https://grafana.com/api/dashboards/15757/revisions/37/download\" \\\n | sed '/-- .* --/! s/\"datasource\":.*,/\"datasource\": \"VictoriaMetrics\",/g' \\\n> \"/var/lib/grafana/dashboards/default/kubernetes-cluster.json\"\n \ncurl -skf \\\n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\" \\\n-H \"Content-Type: application/json;charset=UTF-8\" \\\n \"https://raw.githubusercontent.com/element-hq/synapse/v1.152.0/contrib/grafana/synapse.json\" \\\n | sed '/-- .* --/! s/\"datasource\":.*,/\"datasource\": \"VictoriaMetrics\",/g' \\\n> \"/var/lib/grafana/dashboards/default/matrix-synapse.json\"\n \ncurl -skf \\\n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\" \\\n-H \"Content-Type: application/json;charset=UTF-8\" \\\n \"https://grafana.com/api/dashboards/1860/revisions/37/download\" \\\n | sed '/-- .* --/! s/\"datasource\":.*,/\"datasource\": \"VictoriaMetrics\",/g' \\\n> \"/var/lib/grafana/dashboards/default/node-exporter.json\"\n" grafana.ini: | [analytics] check_for_updates = true diff --git a/rendered/envs/minikube/grafana/deployment-grafana.yaml b/rendered/envs/minikube/grafana/deployment-grafana.yaml index 368d78b..028f58a 100644 --- a/rendered/envs/minikube/grafana/deployment-grafana.yaml +++ b/rendered/envs/minikube/grafana/deployment-grafana.yaml @@ -22,7 +22,7 @@ spec: template: metadata: annotations: - checksum/config: f0cad22500d4e1577b09e33968d5ed873452b63eee6d4fedf9db55f640704755 + checksum/config: 5be4357fd6e211fab2024add34069a0a3555e629a11081fb4461a2c09fdeff49 checksum/dashboards-json-config: 02278b031cbf8831bf02b7a4256e61be096aaeb31d9a25dabd282b6933b1abcb checksum/sc-dashboard-provider-config: e70bf6a851099d385178a76de9757bb0bef8299da6d8443602590e44f05fdf24 kubectl.kubernetes.io/default-container: grafana diff --git a/rendered/envs/minikube/matrix-synapse/service-matrix-synapse-metrics.yaml b/rendered/envs/minikube/matrix-synapse/service-matrix-synapse-metrics.yaml new file mode 100644 index 0000000..1fba939 --- /dev/null +++ b/rendered/envs/minikube/matrix-synapse/service-matrix-synapse-metrics.yaml @@ -0,0 +1,21 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + a8r.io/repository: ssh://git@git.tr1ceracop.de:222/gitea_admin/k8s-and-chill.git + labels: + matrix_metrics: enabled + name: matrix-synapse-metrics + namespace: matrix +spec: + clusterIP: None + ports: + - name: metrics + port: 9090 + protocol: TCP + targetPort: metrics + selector: + app.kubernetes.io/component: synapse + app.kubernetes.io/instance: matrix-synapse + app.kubernetes.io/name: matrix-synapse + type: ClusterIP diff --git a/rendered/envs/minikube/victoria-metrics-single/configmap-victoria-metrics-single-server-scrapeconfig.yaml b/rendered/envs/minikube/victoria-metrics-single/configmap-victoria-metrics-single-server-scrapeconfig.yaml index 95b0b64..125c58f 100644 --- a/rendered/envs/minikube/victoria-metrics-single/configmap-victoria-metrics-single-server-scrapeconfig.yaml +++ b/rendered/envs/minikube/victoria-metrics-single/configmap-victoria-metrics-single-server-scrapeconfig.yaml @@ -101,6 +101,24 @@ data: - source_labels: - __meta_kubernetes_pod_name target_label: pod + - job_name: synapse + kubernetes_sd_configs: + - namespaces: + names: + - matrix + role: endpoints + metrics_path: /_synapse/metrics + relabel_configs: + - action: keep + regex: enabled;metrics + source_labels: + - __meta_kubernetes_service_label_matrix_metrics + - __meta_kubernetes_endpoint_port_name + - source_labels: + - __meta_kubernetes_pod_name + target_label: pod + - replacement: "0" + target_label: index kind: ConfigMap metadata: annotations: diff --git a/rendered/envs/production/grafana/configmap-grafana.yaml b/rendered/envs/production/grafana/configmap-grafana.yaml index 516c488..ab881e4 100644 --- a/rendered/envs/production/grafana/configmap-grafana.yaml +++ b/rendered/envs/production/grafana/configmap-grafana.yaml @@ -19,7 +19,7 @@ data: name: VictoriaMetrics type: prometheus url: http://victoria-metrics-single-server.monitoring.svc:8428 - download_dashboards.sh: "#!/usr/bin/env sh\nset -euf\nmkdir -p /var/lib/grafana/dashboards/default\n\ncurl -skf \\\n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\" \\\n-H \"Content-Type: application/json;charset=UTF-8\" \\\n \"https://grafana.com/api/dashboards/15757/revisions/37/download\" \\\n | sed '/-- .* --/! s/\"datasource\":.*,/\"datasource\": \"VictoriaMetrics\",/g' \\\n> \"/var/lib/grafana/dashboards/default/kubernetes-cluster.json\"\n \ncurl -skf \\\n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\" \\\n-H \"Content-Type: application/json;charset=UTF-8\" \\\n \"https://grafana.com/api/dashboards/1860/revisions/37/download\" \\\n | sed '/-- .* --/! s/\"datasource\":.*,/\"datasource\": \"VictoriaMetrics\",/g' \\\n> \"/var/lib/grafana/dashboards/default/node-exporter.json\"\n" + download_dashboards.sh: "#!/usr/bin/env sh\nset -euf\nmkdir -p /var/lib/grafana/dashboards/default\n\ncurl -skf \\\n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\" \\\n-H \"Content-Type: application/json;charset=UTF-8\" \\\n \"https://grafana.com/api/dashboards/15757/revisions/37/download\" \\\n | sed '/-- .* --/! s/\"datasource\":.*,/\"datasource\": \"VictoriaMetrics\",/g' \\\n> \"/var/lib/grafana/dashboards/default/kubernetes-cluster.json\"\n \ncurl -skf \\\n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\" \\\n-H \"Content-Type: application/json;charset=UTF-8\" \\\n \"https://raw.githubusercontent.com/element-hq/synapse/v1.152.0/contrib/grafana/synapse.json\" \\\n | sed '/-- .* --/! s/\"datasource\":.*,/\"datasource\": \"VictoriaMetrics\",/g' \\\n> \"/var/lib/grafana/dashboards/default/matrix-synapse.json\"\n \ncurl -skf \\\n--connect-timeout 60 \\\n--max-time 60 \\\n-H \"Accept: application/json\" \\\n-H \"Content-Type: application/json;charset=UTF-8\" \\\n \"https://grafana.com/api/dashboards/1860/revisions/37/download\" \\\n | sed '/-- .* --/! s/\"datasource\":.*,/\"datasource\": \"VictoriaMetrics\",/g' \\\n> \"/var/lib/grafana/dashboards/default/node-exporter.json\"\n" grafana.ini: | [analytics] check_for_updates = true diff --git a/rendered/envs/production/grafana/deployment-grafana.yaml b/rendered/envs/production/grafana/deployment-grafana.yaml index 9d6a602..2609b3c 100644 --- a/rendered/envs/production/grafana/deployment-grafana.yaml +++ b/rendered/envs/production/grafana/deployment-grafana.yaml @@ -22,7 +22,7 @@ spec: template: metadata: annotations: - checksum/config: de8d6f16e9721409f5848bcc101e6aa9815e6455bd4fb9b59306159e705ac1cb + checksum/config: 3091c3340f9e9518f161b4ddf15db275c8757370b7e8c8d7af912dd555ca3ff6 checksum/dashboards-json-config: 02278b031cbf8831bf02b7a4256e61be096aaeb31d9a25dabd282b6933b1abcb checksum/sc-dashboard-provider-config: e70bf6a851099d385178a76de9757bb0bef8299da6d8443602590e44f05fdf24 kubectl.kubernetes.io/default-container: grafana diff --git a/rendered/envs/production/matrix-synapse/service-matrix-synapse-metrics.yaml b/rendered/envs/production/matrix-synapse/service-matrix-synapse-metrics.yaml new file mode 100644 index 0000000..1fba939 --- /dev/null +++ b/rendered/envs/production/matrix-synapse/service-matrix-synapse-metrics.yaml @@ -0,0 +1,21 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + a8r.io/repository: ssh://git@git.tr1ceracop.de:222/gitea_admin/k8s-and-chill.git + labels: + matrix_metrics: enabled + name: matrix-synapse-metrics + namespace: matrix +spec: + clusterIP: None + ports: + - name: metrics + port: 9090 + protocol: TCP + targetPort: metrics + selector: + app.kubernetes.io/component: synapse + app.kubernetes.io/instance: matrix-synapse + app.kubernetes.io/name: matrix-synapse + type: ClusterIP diff --git a/rendered/envs/production/victoria-metrics-single/configmap-victoria-metrics-single-server-scrapeconfig.yaml b/rendered/envs/production/victoria-metrics-single/configmap-victoria-metrics-single-server-scrapeconfig.yaml index 95b0b64..125c58f 100644 --- a/rendered/envs/production/victoria-metrics-single/configmap-victoria-metrics-single-server-scrapeconfig.yaml +++ b/rendered/envs/production/victoria-metrics-single/configmap-victoria-metrics-single-server-scrapeconfig.yaml @@ -101,6 +101,24 @@ data: - source_labels: - __meta_kubernetes_pod_name target_label: pod + - job_name: synapse + kubernetes_sd_configs: + - namespaces: + names: + - matrix + role: endpoints + metrics_path: /_synapse/metrics + relabel_configs: + - action: keep + regex: enabled;metrics + source_labels: + - __meta_kubernetes_service_label_matrix_metrics + - __meta_kubernetes_endpoint_port_name + - source_labels: + - __meta_kubernetes_pod_name + target_label: pod + - replacement: "0" + target_label: index kind: ConfigMap metadata: annotations: