From 2fa9a1b31e0148160fe6766b201a09dc9b93ea72 Mon Sep 17 00:00:00 2001 From: Yusupova Ramilya Date: Mon, 22 Jul 2024 19:11:46 +0300 Subject: [PATCH 1/4] Add /metrics --- HelmfileHomework/HelmfileHomework.csproj | 5 +++-- HelmfileHomework/Program.cs | 3 +++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/HelmfileHomework/HelmfileHomework.csproj b/HelmfileHomework/HelmfileHomework.csproj index 7eedfcc..2c9484d 100644 --- a/HelmfileHomework/HelmfileHomework.csproj +++ b/HelmfileHomework/HelmfileHomework.csproj @@ -7,8 +7,9 @@ - - + + + diff --git a/HelmfileHomework/Program.cs b/HelmfileHomework/Program.cs index ebd3fa9..19d9358 100644 --- a/HelmfileHomework/Program.cs +++ b/HelmfileHomework/Program.cs @@ -1,6 +1,7 @@ using HelmfileHomework; using Microsoft.AspNetCore.Diagnostics.HealthChecks; using Microsoft.Extensions.Diagnostics.HealthChecks; +using Prometheus; var builder = WebApplication.CreateBuilder(args); @@ -34,4 +35,6 @@ app.UseHttpsRedirection(); +app.UseMetricServer(); + app.Run(); \ No newline at end of file From 4b33e9746fe907af55c851e4a13669538f0c26a3 Mon Sep 17 00:00:00 2001 From: Yusupova Ramilya Date: Mon, 22 Jul 2024 21:15:01 +0300 Subject: [PATCH 2/4] Add service monitor --- helmfile-homework/templates/service.yaml | 3 ++- helmfile-homework/templates/servicemonitor.yml | 17 +++++++++++++++++ helmfile.yaml | 10 ++++++++++ 3 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 helmfile-homework/templates/servicemonitor.yml diff --git a/helmfile-homework/templates/service.yaml b/helmfile-homework/templates/service.yaml index 6ba425b..55df46a 100644 --- a/helmfile-homework/templates/service.yaml +++ b/helmfile-homework/templates/service.yaml @@ -7,5 +7,6 @@ spec: selector: app: {{ .Release.Namespace }} ports: - - port: 8080 + - name: alias8080 + port: 8080 targetPort: 8080 diff --git a/helmfile-homework/templates/servicemonitor.yml b/helmfile-homework/templates/servicemonitor.yml new file mode 100644 index 0000000..2d54705 --- /dev/null +++ b/helmfile-homework/templates/servicemonitor.yml @@ -0,0 +1,17 @@ +apiVersion: monitoring.coreos.com/v1 +kind: ServiceMonitor +metadata: + name: {{ .Release.Name }} + labels: + release: {{ .Release.Name }} +spec: + selector: + matchLabels: + app: {{ .Release.Name }} + namespaceSelector: + matchNames: + - {{ .Release.Namespace }} + endpoints: + - port: alias8080 + interval: 30s + path: /metrics \ No newline at end of file diff --git a/helmfile.yaml b/helmfile.yaml index bd2973d..06dfdfb 100644 --- a/helmfile.yaml +++ b/helmfile.yaml @@ -1,6 +1,16 @@ +repositories: +- name: prometheus + url: https://prometheus-community.github.io/helm-charts + releases: + - name: prometheus + namespace: monitoring + chart: prometheus/kube-prometheus-stack + - name: homework namespace: homework chart: ./helmfile-homework values: - ./helmfile-homework/values.yaml + needs: + - monitoring/prometheus From 1ec2e0fd99c5da541088e2daebb0bca4cda0c691 Mon Sep 17 00:00:00 2001 From: Yusupova Ramilya Date: Wed, 24 Jul 2024 18:47:48 +0300 Subject: [PATCH 3/4] Fix --- helmfile-homework/templates/service.yaml | 4 +++- helmfile-homework/templates/servicemonitor.yml | 8 ++++---- helmfile.yaml | 6 ++++-- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/helmfile-homework/templates/service.yaml b/helmfile-homework/templates/service.yaml index 55df46a..4825e23 100644 --- a/helmfile-homework/templates/service.yaml +++ b/helmfile-homework/templates/service.yaml @@ -3,9 +3,11 @@ kind: Service metadata: name: {{ .Values.app.service }} namespace: {{ .Release.Namespace }} + labels: + app: {{ .Release.Name }} spec: selector: - app: {{ .Release.Namespace }} + app: {{ .Release.Name }} ports: - name: alias8080 port: 8080 diff --git a/helmfile-homework/templates/servicemonitor.yml b/helmfile-homework/templates/servicemonitor.yml index 2d54705..b874758 100644 --- a/helmfile-homework/templates/servicemonitor.yml +++ b/helmfile-homework/templates/servicemonitor.yml @@ -1,17 +1,17 @@ apiVersion: monitoring.coreos.com/v1 kind: ServiceMonitor metadata: - name: {{ .Release.Name }} + name: {{ .Release.Name }}-servicemonitor labels: - release: {{ .Release.Name }} + release: monitoring // неймспейс где установлен prometheus spec: selector: matchLabels: app: {{ .Release.Name }} namespaceSelector: matchNames: - - {{ .Release.Namespace }} endpoints: - port: alias8080 interval: 30s - path: /metrics \ No newline at end of file + path: /metrics + scheme: http \ No newline at end of file diff --git a/helmfile.yaml b/helmfile.yaml index 06dfdfb..d228593 100644 --- a/helmfile.yaml +++ b/helmfile.yaml @@ -3,9 +3,10 @@ repositories: url: https://prometheus-community.github.io/helm-charts releases: - - name: prometheus + - name: monitoring namespace: monitoring chart: prometheus/kube-prometheus-stack + disableValidationOnInstall: true - name: homework namespace: homework @@ -13,4 +14,5 @@ releases: values: - ./helmfile-homework/values.yaml needs: - - monitoring/prometheus + - monitoring/monitoring + disableValidationOnInstall: true From e75e9ba1b218d2bc9d6330ed5af0373165f5b168 Mon Sep 17 00:00:00 2001 From: Yusupova Ramilya Date: Wed, 24 Jul 2024 18:52:32 +0300 Subject: [PATCH 4/4] wip --- helmfile-homework/templates/servicemonitor.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/helmfile-homework/templates/servicemonitor.yml b/helmfile-homework/templates/servicemonitor.yml index b874758..413450b 100644 --- a/helmfile-homework/templates/servicemonitor.yml +++ b/helmfile-homework/templates/servicemonitor.yml @@ -3,7 +3,7 @@ kind: ServiceMonitor metadata: name: {{ .Release.Name }}-servicemonitor labels: - release: monitoring // неймспейс где установлен prometheus + release: monitoring spec: selector: matchLabels: