Skip to content

Commit 381ac2c

Browse files
feat(chart): make s3proxy probes configurable (tolerant liveness) (#95)
1 parent b2343b0 commit 381ac2c

2 files changed

Lines changed: 33 additions & 21 deletions

File tree

chart/templates/s3proxy/deployment.yaml

Lines changed: 3 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -84,29 +84,11 @@ spec:
8484
resources:
8585
{{- toYaml .Values.resources | nindent 12 }}
8686
startupProbe:
87-
httpGet:
88-
path: /readyz
89-
port: http
90-
initialDelaySeconds: 2
91-
periodSeconds: 2
92-
timeoutSeconds: 3
93-
failureThreshold: 60
87+
{{- toYaml .Values.startupProbe | nindent 12 }}
9488
livenessProbe:
95-
httpGet:
96-
path: /healthz
97-
port: http
98-
initialDelaySeconds: 5
99-
periodSeconds: 10
100-
timeoutSeconds: 5
101-
failureThreshold: 3
89+
{{- toYaml .Values.livenessProbe | nindent 12 }}
10290
readinessProbe:
103-
httpGet:
104-
path: /readyz
105-
port: http
106-
initialDelaySeconds: 5
107-
periodSeconds: 5
108-
timeoutSeconds: 3
109-
failureThreshold: 3
91+
{{- toYaml .Values.readinessProbe | nindent 12 }}
11092
securityContext:
11193
runAsNonRoot: true
11294
runAsUser: 1000

chart/values.yaml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -150,6 +150,36 @@ resources:
150150
cpu: "500m"
151151
memory: "512Mi"
152152

153+
# s3proxy container probes. Overridable so deployments can tolerate a busy
154+
# single event loop: under heavy upload load a probe can take seconds to be
155+
# served, and a tight liveness timeout restarts a live pod (drops in-flight
156+
# uploads -> clients retry -> load spiral). Maps merge, so a deployment can set
157+
# just e.g. livenessProbe.timeoutSeconds without restating the whole probe.
158+
startupProbe:
159+
httpGet:
160+
path: /readyz
161+
port: http
162+
initialDelaySeconds: 2
163+
periodSeconds: 2
164+
timeoutSeconds: 3
165+
failureThreshold: 60
166+
livenessProbe:
167+
httpGet:
168+
path: /healthz
169+
port: http
170+
initialDelaySeconds: 5
171+
periodSeconds: 10
172+
timeoutSeconds: 5
173+
failureThreshold: 3
174+
readinessProbe:
175+
httpGet:
176+
path: /readyz
177+
port: http
178+
initialDelaySeconds: 5
179+
periodSeconds: 5
180+
timeoutSeconds: 3
181+
failureThreshold: 3
182+
153183
service:
154184
type: ClusterIP
155185
port: 4433

0 commit comments

Comments
 (0)