Skip to content

Commit 39d4e8c

Browse files
author
te.li
committed
exporter: parallelize metrics generation and refresh in background
1 parent fd35666 commit 39d4e8c

7 files changed

Lines changed: 187 additions & 148 deletions

File tree

charts/hami-webui/templates/configmap.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,9 @@ data:
1515
prometheus:
1616
address: {{ ternary .Values.externalPrometheus.address (printf "http://%s-kube-prometh-prometheus.%s.svc.cluster.local:9090" (include "hami-webui.fullname" .) (include "hami-webui.namespace" .)) .Values.externalPrometheus.enabled }}
1717
timeout: 1m
18+
exporter_concurrency_limit: {{ .Values.exporterConcurrencyLimit }}
19+
metrics_generate_interval: {{ .Values.metricsGenerateInterval }}
1820
node_selectors:
1921
{{- range $key, $value := .Values.vendorNodeSelectors }}
2022
{{ $key }}: {{ $value }}
21-
{{- end }}
23+
{{- end }}

charts/hami-webui/values.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,9 @@ tolerations: []
126126

127127
affinity: {}
128128

129+
exporterConcurrencyLimit: 16
130+
metricsGenerateInterval: 15s
131+
129132
dcgm-exporter:
130133
enabled: true
131134
serviceMonitor:
@@ -162,4 +165,4 @@ kube-prometheus-stack:
162165
externalPrometheus:
163166
enabled: false
164167
# If externalPrometheus.enabled is true, this address will be used
165-
address: "http://prometheus-kube-prometheus-prometheus.prometheus.svc.cluster.local:9090"
168+
address: "http://prometheus-kube-prometheus-prometheus.prometheus.svc.cluster.local:9090"

server/config/config.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,6 @@ node_selectors:
1313
Ascend: ascend=on
1414
DCU: dcu=on
1515
MLU: mlu=on
16-
Metax: metax-tech.com/gpu.installed=true
16+
Metax: metax-tech.com/gpu.installed=true
17+
exporter_concurrency_limit: 16
18+
metrics_generate_interval: 15s

server/go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ require (
1212
github.com/prometheus/client_golang v1.19.1
1313
github.com/prometheus/common v0.55.0
1414
go.uber.org/automaxprocs v1.5.3
15+
golang.org/x/sync v0.7.0
1516
google.golang.org/genproto/googleapis/api v0.0.0-20240528184218-531527333157
1617
google.golang.org/grpc v1.64.0
1718
google.golang.org/protobuf v1.34.2
@@ -63,7 +64,6 @@ require (
6364
github.com/spf13/pflag v1.0.5 // indirect
6465
golang.org/x/net v0.27.0 // indirect
6566
golang.org/x/oauth2 v0.21.0 // indirect
66-
golang.org/x/sync v0.7.0 // indirect
6767
golang.org/x/sys v0.22.0 // indirect
6868
golang.org/x/term v0.22.0 // indirect
6969
golang.org/x/text v0.16.0 // indirect

server/internal/conf/conf.proto

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ message Bootstrap {
99
Server server = 1;
1010
Prometheus prometheus = 2;
1111
map<string, string> node_selectors = 3;
12+
int32 exporter_concurrency_limit = 5;
13+
string metrics_generate_interval = 6;
1214
}
1315

1416
message Server {

0 commit comments

Comments
 (0)