Skip to content

Commit 65dadda

Browse files
duckhawkViktorKram
authored andcommitted
[monitoring] Add metrics collectors (#11)
Signed-off-by: v.oleynikov <[email protected]> Signed-off-by: Viktor Kramarenko <[email protected]>
1 parent 76388a7 commit 65dadda

File tree

9 files changed

+84
-8
lines changed

9 files changed

+84
-8
lines changed

images/agent/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222

2323
`NODE_NAME`
2424

25-
`METRICS_PORT` - default : 9695
25+
`METRICS_PORT` - default : 4202
2626

2727

2828
#### Metrics

images/agent/config/config.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ const (
3838
ThrottleInterval = "THROTTLER_INTERVAL"
3939
CmdDeadlineDuration = "CMD_DEADLINE_DURATION"
4040
DefaultHealthProbeBindAddressEnvName = "HEALTH_PROBE_BIND_ADDRESS"
41-
DefaultHealthProbeBindAddress = ":8081"
41+
DefaultHealthProbeBindAddress = ":4228"
4242
)
4343

4444
type Options struct {
@@ -77,7 +77,7 @@ func NewConfig() (*Options, error) {
7777

7878
opts.MetricsPort = os.Getenv(MetricsPort)
7979
if opts.MetricsPort == "" {
80-
opts.MetricsPort = ":9695"
80+
opts.MetricsPort = ":4202"
8181
}
8282

8383
opts.HealthProbeBindAddress = os.Getenv(DefaultHealthProbeBindAddressEnvName)

images/agent/config/config_test.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ func TestNewConfig(t *testing.T) {
107107

108108
t.Run("MetricsPortNotSet_ReturnsDefaultPort", func(t *testing.T) {
109109
expNodeName := "test-node"
110-
expMetricsPort := ":9695"
110+
expMetricsPort := ":4202"
111111
expMachineId := "test-id"
112112

113113
err := os.Setenv(NodeName, expNodeName)

images/sds-health-watcher-controller/config/config.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ func NewConfig() (*Options, error) {
5454

5555
opts.MetricsPort = os.Getenv(MetricsPort)
5656
if opts.MetricsPort == "" {
57-
opts.MetricsPort = ":9695"
57+
opts.MetricsPort = ":8080"
5858
}
5959

6060
opts.HealthProbeBindAddress = os.Getenv(DefaultHealthProbeBindAddressEnvName)

images/sds-health-watcher-controller/config/config_test.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ func TestNewConfig(t *testing.T) {
107107

108108
t.Run("MetricsPortNotSet_ReturnsDefaultPort", func(t *testing.T) {
109109
expNodeName := "test-node"
110-
expMetricsPort := ":9695"
110+
expMetricsPort := ":8080"
111111
expMachineId := "test-id"
112112

113113
err := os.Setenv(NodeName, expNodeName)

templates/agent/daemonset.yaml

+6-2
Original file line numberDiff line numberDiff line change
@@ -72,18 +72,22 @@ spec:
7272
readinessProbe:
7373
httpGet:
7474
path: /readyz
75-
port: 8081
75+
port: 4228
7676
scheme: HTTP
7777
initialDelaySeconds: 5
7878
failureThreshold: 2
7979
periodSeconds: 1
8080
livenessProbe:
8181
httpGet:
8282
path: /healthz
83-
port: 8081
83+
port: 4228
8484
scheme: HTTP
8585
periodSeconds: 1
8686
failureThreshold: 3
87+
ports:
88+
- name: metrics
89+
containerPort: 4202
90+
protocol: TCP
8791
securityContext:
8892
privileged: true
8993
seLinuxOptions:

templates/agent/podmonitor.yaml

+32
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
{{- if (.Values.global.enabledModules | has "operator-prometheus-crd") }}
2+
---
3+
apiVersion: monitoring.coreos.com/v1
4+
kind: PodMonitor
5+
metadata:
6+
name: sds-node-configurator
7+
namespace: d8-monitoring
8+
{{- include "helm_lib_module_labels" (list $ (dict "prometheus" "main")) | nindent 2 }}
9+
spec:
10+
podMetricsEndpoints:
11+
- targetPort: metrics
12+
scheme: http
13+
path: /metrics
14+
relabelings:
15+
- regex: endpoint|namespace|pod|container
16+
action: labeldrop
17+
- targetLabel: job
18+
replacement: sds-node-configurator
19+
- sourceLabels: [__meta_kubernetes_pod_node_name]
20+
targetLabel: node
21+
- targetLabel: tier
22+
replacement: cluster
23+
- sourceLabels: [__meta_kubernetes_pod_ready]
24+
regex: "true"
25+
action: keep
26+
selector:
27+
matchLabels:
28+
app: sds-node-configurator
29+
namespaceSelector:
30+
matchNames:
31+
- d8-{{ .Chart.Name }}
32+
{{- end }}

templates/sds-health-watcher-controller/deployment.yaml

+4
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,10 @@ spec:
8383
scheme: HTTP
8484
periodSeconds: 1
8585
failureThreshold: 3
86+
ports:
87+
- name: metrics
88+
containerPort: 8080
89+
protocol: TCP
8690
resources:
8791
requests:
8892
{{- include "helm_lib_module_ephemeral_storage_only_logs" . | nindent 14 }}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
{{- if (.Values.global.enabledModules | has "operator-prometheus-crd") }}
2+
---
3+
apiVersion: monitoring.coreos.com/v1
4+
kind: ServiceMonitor
5+
metadata:
6+
name: sds-health-watcher-controller
7+
namespace: d8-monitoring
8+
{{- include "helm_lib_module_labels" (list $ (dict "prometheus" "main")) | nindent 2 }}
9+
spec:
10+
endpoints:
11+
- port: metrics
12+
scheme: http
13+
path: /metrics
14+
bearerTokenSecret:
15+
name: "prometheus-token"
16+
key: "token"
17+
tlsConfig:
18+
insecureSkipVerify: true
19+
relabelings:
20+
- regex: endpoint|namespace|pod|container
21+
action: labeldrop
22+
- targetLabel: job
23+
replacement: sds-health-watcher-controller
24+
- targetLabel: tier
25+
replacement: cluster
26+
- sourceLabels: [__meta_kubernetes_endpointslice_endpoint_conditions_ready]
27+
regex: "true"
28+
action: keep
29+
selector:
30+
matchLabels:
31+
app.kubernetes.io/instance: sds-health-watcher-controller
32+
app.kubernetes.io/managed-by: Helm
33+
namespaceSelector:
34+
matchNames:
35+
- d8-{{ .Chart.Name }}
36+
{{- end }}

0 commit comments

Comments
 (0)