Skip to content

Commit 12b9a19

Browse files
authored
Tell Go runtime about the CPU & memory limits. (#699)
* Tell Go runtime about the CPU & memory limits. Signed-off-by: Gabi Davar <[email protected]> * review comments --------- Signed-off-by: Gabi Davar <[email protected]>
1 parent 4dceccc commit 12b9a19

File tree

3 files changed

+23
-5
lines changed

3 files changed

+23
-5
lines changed

.github/workflows/push.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -212,8 +212,8 @@ jobs:
212212
- name: Helm Template
213213
run: |
214214
helm template reloader deployments/kubernetes/chart/reloader/ \
215-
--set reloader.deployment.resources.limits.cpu=150m \
216-
--set reloader.deployment.resources.limits.memory=512Mi \
215+
--set-string reloader.deployment.resources.limits.cpu=1 \
216+
--set reloader.deployment.resources.limits.memory=128Mi \
217217
--set reloader.deployment.resources.requests.cpu=10m \
218218
--set reloader.deployment.resources.requests.memory=128Mi > deployments/kubernetes/reloader.yaml
219219

deployments/kubernetes/chart/reloader/templates/deployment.yaml

+16-3
Original file line numberDiff line numberDiff line change
@@ -76,8 +76,23 @@ spec:
7676
- image: "{{ .Values.reloader.deployment.image.name }}:{{ .Values.reloader.deployment.image.tag }}"
7777
imagePullPolicy: {{ .Values.reloader.deployment.image.pullPolicy }}
7878
name: {{ template "reloader-fullname" . }}
79-
{{- if or (.Values.reloader.deployment.env.open) (.Values.reloader.deployment.env.secret) (.Values.reloader.deployment.env.field) (.Values.reloader.deployment.env.existing) (eq .Values.reloader.watchGlobally false) (.Values.reloader.enableHA) (.Values.reloader.enableMetricsByNamespace)}}
8079
env:
80+
- name: GOMAXPROCS
81+
{{- if .Values.reloader.deployment.gomaxprocsOverride }}
82+
value: {{ .Values.reloader.deployment.gomaxprocsOverride | quote }}
83+
{{- else }}
84+
valueFrom:
85+
resourceFieldRef:
86+
resource: limits.memory
87+
{{- end }}
88+
- name: GOMEMLIMIT
89+
{{- if .Values.reloader.deployment.gomemlimitOverride }}
90+
value: {{ .Values.reloader.deployment.gomemlimitOverride | quote }}
91+
{{- else }}
92+
valueFrom:
93+
resourceFieldRef:
94+
resource: limits.cpu
95+
{{- end }}
8196
{{- range $name, $value := .Values.reloader.deployment.env.open }}
8297
{{- if not (empty $value) }}
8398
- name: {{ $name | quote }}
@@ -112,7 +127,6 @@ spec:
112127
fieldRef:
113128
fieldPath: {{ $value | quote}}
114129
{{- end }}
115-
{{- end }}
116130
{{- if eq .Values.reloader.watchGlobally false }}
117131
- name: KUBERNETES_NAMESPACE
118132
valueFrom:
@@ -134,7 +148,6 @@ spec:
134148
value: enabled
135149
{{- end }}
136150
{{- end }}
137-
138151
ports:
139152
- name: http
140153
containerPort: 9090

deployments/kubernetes/chart/reloader/values.yaml

+5
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,11 @@ reloader:
147147
# imagePullSecrets:
148148
# - name: myregistrykey
149149

150+
# Put "0" in either to have go runtime ignore the set value.
151+
# Otherwise, see https://pkg.go.dev/runtime#hdr-Environment_Variables for GOMAXPROCS and GOMEMLIMIT
152+
gomaxprocsOverride: ""
153+
gomemlimitOverride: ""
154+
150155
service: {}
151156
# labels: {}
152157
# annotations: {}

0 commit comments

Comments
 (0)