Skip to content

Commit 3e83321

Browse files
committed
Add vm auth (read loadbalancer)
1 parent 6d20c40 commit 3e83321

File tree

8 files changed

+91
-24
lines changed

8 files changed

+91
-24
lines changed

charts/traefik/values.common.yaml.gotmpl

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,16 @@ extraObjects:
133133
- 172.16.0.0/12
134134
- 192.168.0.0/16
135135

136+
- apiVersion: traefik.io/v1alpha1
137+
kind: Middleware
138+
metadata:
139+
name: metrics-strip-prefix
140+
namespace: {{.Release.Namespace}}
141+
spec:
142+
stripPrefix:
143+
prefixes:
144+
- /metrics
145+
136146
- apiVersion: networking.k8s.io/v1
137147
kind: Ingress
138148
metadata:

charts/victoria-metrics-stack/Chart.lock

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,11 @@ dependencies:
22
- name: victoria-metrics-single
33
repository: https://victoriametrics.github.io/helm-charts/
44
version: 0.25.2
5+
- name: victoria-metrics-auth
6+
repository: https://victoriametrics.github.io/helm-charts/
7+
version: 0.19.7
58
- name: victoria-metrics-agent
69
repository: https://victoriametrics.github.io/helm-charts/
710
version: 0.26.2
8-
digest: sha256:e9a8c4ed4495ecfcf9962a6aa7fc9f6a6e8813e69a20daa9bb38b2d9a018c50e
9-
generated: "2025-10-26T12:42:21.158234622+01:00"
11+
digest: sha256:1b9f1ec96dee105d9ac83f78883e6ee5b8558fad9bac4e41b71d37a69dd5c745
12+
generated: "2025-10-29T15:55:10.919914456+01:00"

charts/victoria-metrics-stack/Chart.yaml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ type: application
1515
# This is the chart version. This version number should be incremented each time you make changes
1616
# to the chart and its templates, including the app version.
1717
# Versions are expected to follow Semantic Versioning (https://semver.org/)
18-
version: 0.1.0
18+
version: 0.0.1
1919

2020
# This is the version number of the application being deployed. This version number should be
2121
# incremented each time you make changes to the application. Versions are not expected to
@@ -29,9 +29,10 @@ dependencies:
2929
repository: &victoria-metrics-repo "https://victoriametrics.github.io/helm-charts/"
3030
condition: victoria-metrics-single.enabled
3131

32-
# - name: victoria-metrics-auth
33-
# version: 0.19.7
34-
# repository: *victoria-metrics-repo
32+
- name: victoria-metrics-auth
33+
version: 0.19.7
34+
repository: *victoria-metrics-repo
35+
condition: victoria-metrics-auth.enabled
3536

3637
- name: victoria-metrics-agent
3738
version: 0.26.2

charts/victoria-metrics-stack/namespace.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,6 @@
1010
apiVersion: v1
1111
kind: Namespace
1212
metadata:
13-
name: monitoring
13+
name: victoria-metrics-stack
1414
labels:
1515
pod-security.kubernetes.io/enforce: restricted

charts/victoria-metrics-stack/templates/networkpolicies.yaml renamed to charts/victoria-metrics-stack/templates/networkpolicies/vm-agent.yaml

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,3 @@
1-
apiVersion: projectcalico.org/v3
2-
kind: NetworkPolicy
3-
metadata:
4-
name: vm-server-network-policy
5-
spec:
6-
selector: >-
7-
app.kubernetes.io/name == "victoria-metrics-single"
8-
&& app.kubernetes.io/instance == "{{ .Release.Name }}"
9-
ingress:
10-
- action: Allow
11-
protocol: TCP
12-
destination:
13-
ports:
14-
- {{ index .Values "victoria-metrics-single" "server" "service" "servicePort" }}
15-
16-
---
17-
181
apiVersion: projectcalico.org/v3
192
kind: NetworkPolicy
203
metadata:
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
apiVersion: projectcalico.org/v3
2+
kind: NetworkPolicy
3+
metadata:
4+
name: vm-auth-network-policy
5+
spec:
6+
selector: >-
7+
app.kubernetes.io/name == "victoria-metrics-auth"
8+
&& app.kubernetes.io/instance == "{{ .Release.Name }}"
9+
ingress:
10+
- action: Allow
11+
protocol: TCP
12+
destination:
13+
ports:
14+
- {{ index .Values "victoria-metrics-auth" "service" "servicePort" }}
15+
egress:
16+
- action: Allow
17+
protocol: TCP
18+
destination:
19+
ports:
20+
- {{ index .Values "victoria-metrics-single" "server" "service" "servicePort" }}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
apiVersion: projectcalico.org/v3
2+
kind: NetworkPolicy
3+
metadata:
4+
name: vm-server-network-policy
5+
spec:
6+
selector: >-
7+
app.kubernetes.io/name == "victoria-metrics-single"
8+
&& app.kubernetes.io/instance == "{{ .Release.Name }}"
9+
ingress:
10+
- action: Allow
11+
protocol: TCP
12+
destination:
13+
ports:
14+
- {{ index .Values "victoria-metrics-single" "server" "service" "servicePort" }}

charts/victoria-metrics-stack/values.yaml.gotmpl

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,3 +48,39 @@ victoria-metrics-agent:
4848

4949

5050
victoria-metrics-auth:
51+
enabled: true
52+
fullnameOverride: vm-auth
53+
54+
service:
55+
servicePort: 8427
56+
57+
ingress:
58+
enabled: true
59+
annotations:
60+
namespace: {{ .Release.Namespace }}
61+
traefik.ingress.kubernetes.io/router.tls: "true"
62+
traefik.ingress.kubernetes.io/router.middlewares: traefik-metrics-strip-prefix@kubernetescrd,traefik-traefik-basic-auth@kubernetescrd
63+
traefik.ingress.kubernetes.io/router.entrypoints: websecure
64+
hosts:
65+
- name: {{ requiredEnv "K8S_MONITORING_FQDN" }}
66+
path:
67+
- /metrics
68+
port: http
69+
70+
podSecurityContext: *restrictedPodSecurityContext
71+
securityContext: *restrictedSecurityContext
72+
73+
resources:
74+
limits:
75+
cpu: 0.5
76+
memory: 256Mi
77+
requests:
78+
cpu: 100m
79+
memory: 128Mi
80+
81+
config:
82+
unauthorized_user:
83+
url_prefix:
84+
- "http://vm-server-0.vm-server.{{ .Release.Namespace }}.svc.cluster.local:8428/"
85+
- "http://vm-server-1.vm-server.{{ .Release.Namespace }}.svc.cluster.local:8428/"
86+
load_balancing_policy: first_available

0 commit comments

Comments
 (0)