You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Allow setting automountServiceAccountToken (#2298)
* Allow setting automountServiceAccountToken on workloads and serviceAccounts
Signed-off-by: Aran Shavit <[email protected]>
* update helm docs
Signed-off-by: Aran Shavit <[email protected]>
---------
Signed-off-by: Aran Shavit <[email protected]>
(cherry picked from commit 515d805)
* Fix: executor container security context does not work (#2306)
Signed-off-by: Yi Chen <[email protected]>
(cherry picked from commit 171e429)
* Fix: should not add emptyDir sizeLimit conf if it is nil (#2305)
Signed-off-by: Yi Chen <[email protected]>
(cherry picked from commit 763682d)
* Allow the Controller and Webhook Containers to run with the securityContext: readOnlyRootfilesystem: true (#2282)
* create a tmp dir for the controller to write Spark artifacts to and set the controller to readOnlyRootFilesystem
Signed-off-by: Nick Gretzon <[email protected]>
* mount a dir for the webhook container to generate its certificates in and set readOnlyRootFilesystem: true for the webhook pod
Signed-off-by: Nick Gretzon <[email protected]>
* update the securityContext in the controller deployment test
Signed-off-by: Nick Gretzon <[email protected]>
* update securityContext of the webhook container in the deployment_test
Signed-off-by: Nick Gretzon <[email protected]>
* update README
Signed-off-by: Nick Gretzon <[email protected]>
* remove -- so comments are not rendered in the README.md
Signed-off-by: Nick Gretzon <[email protected]>
* recreate README.md after removal of comments for volumes and volumeMounts
Signed-off-by: Nick Gretzon <[email protected]>
* make indentation for volumes and volumeMounts consistent with rest of values.yaml
Signed-off-by: Nick Gretzon <[email protected]>
* Revert "make indentation for volumes and volumeMounts consistent with rest of values.yaml"
This reverts commit dba97fc.
Signed-off-by: Nick Gretzon <[email protected]>
* fix indentation in webhook and controller deployment templates for volumes and volumeMounts
Signed-off-by: Nick Gretzon <[email protected]>
* Update charts/spark-operator-chart/values.yaml
Co-authored-by: Yi Chen <[email protected]>
Signed-off-by: Nicholas Gretzon <[email protected]>
* Update charts/spark-operator-chart/values.yaml
Co-authored-by: Yi Chen <[email protected]>
Signed-off-by: Nicholas Gretzon <[email protected]>
* Update charts/spark-operator-chart/values.yaml
Co-authored-by: Yi Chen <[email protected]>
Signed-off-by: Nicholas Gretzon <[email protected]>
* Update charts/spark-operator-chart/values.yaml
Co-authored-by: Yi Chen <[email protected]>
Signed-off-by: Nicholas Gretzon <[email protected]>
* Update charts/spark-operator-chart/templates/controller/deployment.yaml
Co-authored-by: Yi Chen <[email protected]>
Signed-off-by: Nicholas Gretzon <[email protected]>
* Update charts/spark-operator-chart/templates/controller/deployment.yaml
Co-authored-by: Yi Chen <[email protected]>
Signed-off-by: Nicholas Gretzon <[email protected]>
* Update charts/spark-operator-chart/templates/webhook/deployment.yaml
Co-authored-by: Yi Chen <[email protected]>
Signed-off-by: Nicholas Gretzon <[email protected]>
* Update charts/spark-operator-chart/templates/webhook/deployment.yaml
Co-authored-by: Yi Chen <[email protected]>
Signed-off-by: Nicholas Gretzon <[email protected]>
* add additional securityContext to the controller deployment_test.yaml
Signed-off-by: Nick Gretzon <[email protected]>
---------
Signed-off-by: Nick Gretzon <[email protected]>
Signed-off-by: Nicholas Gretzon <[email protected]>
Co-authored-by: Yi Chen <[email protected]>
(cherry picked from commit 72107fd)
* Fix: should not add emptyDir sizeLimit conf on executor pods if it is nil (#2316)
Signed-off-by: Cian Gallagher <[email protected]>
(cherry picked from commit 2999546)
* Bump `volcano.sh/apis` to 1.10.0 (#2320)
Signed-off-by: Jacob Salway <[email protected]>
(cherry picked from commit 22e4fb8)
* Truncate UI service name if over 63 characters (#2311)
* Truncate UI service name if over 63 characters
Signed-off-by: Jacob Salway <[email protected]>
* Also truncate ingress name
Signed-off-by: Jacob Salway <[email protected]>
---------
Signed-off-by: Jacob Salway <[email protected]>
(cherry picked from commit 43c1888)
* Bump aquasecurity/trivy-action from 0.28.0 to 0.29.0 (#2332)
Bumps [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action) from 0.28.0 to 0.29.0.
- [Release notes](https://github.com/aquasecurity/trivy-action/releases)
- [Commits](aquasecurity/trivy-action@0.28.0...0.29.0)
---
updated-dependencies:
- dependency-name: aquasecurity/trivy-action
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
(cherry picked from commit 270b09e)
* Bump github.com/onsi/ginkgo/v2 from 2.20.2 to 2.22.0 (#2335)
Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.20.2 to 2.22.0.
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](onsi/ginkgo@v2.20.2...v2.22.0)
---
updated-dependencies:
- dependency-name: github.com/onsi/ginkgo/v2
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
(cherry picked from commit 40423d5)
* The webhook-key-name command-line param isn't taking effect (#2344)
Signed-off-by: C. H. Afzal <[email protected]>
(cherry picked from commit a261523)
* Robustness to driver pod taking time to create (#2315)
* Retry after driver pod now found if recent submission
Signed-off-by: Thomas Newton <[email protected]>
* Add a test
Signed-off-by: Thomas Newton <[email protected]>
* Make grace period configurable
Signed-off-by: Thomas Newton <[email protected]>
* Update test
Signed-off-by: Thomas Newton <[email protected]>
* Add an extra test with the driver pod
Signed-off-by: Thomas Newton <[email protected]>
* Separate context to create and delete the driver pod
Signed-off-by: Thomas Newton <[email protected]>
* Tidy
Signed-off-by: Thomas Newton <[email protected]>
* Autoformat
Signed-off-by: Thomas Newton <[email protected]>
* Update error message
Signed-off-by: Thomas Newton <[email protected]>
* Add helm paramater
Signed-off-by: Thomas Newton <[email protected]>
* Update internal/controller/sparkapplication/controller.go
Co-authored-by: Yi Chen <[email protected]>
Signed-off-by: Thomas Newton <[email protected]>
* Newlines between helm tests
Signed-off-by: Thomas Newton <[email protected]>
---------
Signed-off-by: Thomas Newton <[email protected]>
Co-authored-by: Yi Chen <[email protected]>
(cherry picked from commit d815e78)
* Use NSS_WRAPPER_PASSWD instead of /etc/passwd as in spark-operator image entrypoint.sh (#2312)
Signed-off-by: Aakcht <[email protected]>
(cherry picked from commit 5dd91c4)
* Move sparkctl to cmd directory (#2347)
* Move spark-operator
Signed-off-by: Yi Chen <[email protected]>
* Move sparkctl to cmd directory
Signed-off-by: Yi Chen <[email protected]>
* Remove unnecessary app package/directory
Signed-off-by: Yi Chen <[email protected]>
---------
Signed-off-by: Yi Chen <[email protected]>
(cherry picked from commit 2375a30)
* Spark Operator Official Release v2.1.0
Signed-off-by: Yi Chen <[email protected]>
---------
Signed-off-by: Yi Chen <[email protected]>
Co-authored-by: Aran Shavit <[email protected]>
Co-authored-by: Nicholas Gretzon <[email protected]>
Co-authored-by: Cian (Keen) Gallagher <[email protected]>
Co-authored-by: Jacob Salway <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: C. H. Afzal <[email protected]>
Co-authored-by: Thomas Newton <[email protected]>
Co-authored-by: Aakcht <[email protected]>
| controller.logLevel | string |`"info"`| Configure the verbosity of logging, can be one of `debug`, `info`, `error`. |
89
+
| controller.driverPodCreationGracePeriod | string |`"10s"`| Grace period after a successful spark-submit when driver pod not found errors will be retried. Useful if the driver pod can take some time to be created. |
89
90
| controller.maxTrackedExecutorPerApp | int |`1000`| Specifies the maximum number of Executor pods that can be tracked by the controller per SparkApplication. |
90
91
| controller.uiService.enable | bool |`true`| Specifies whether to create service for Spark web UI. |
91
92
| controller.uiIngress.enable | bool |`false`| Specifies whether to create ingress for Spark web UI. `controller.uiService.enable` must be `true` to enable ingress. |
@@ -97,11 +98,12 @@ See [helm uninstall](https://helm.sh/docs/helm/helm_uninstall) for command docum
97
98
| controller.serviceAccount.create | bool |`true`| Specifies whether to create a service account for the controller. |
98
99
| controller.serviceAccount.name | string |`""`| Optional name for the controller service account. |
99
100
| controller.serviceAccount.annotations | object |`{}`| Extra annotations for the controller service account. |
101
+
| controller.serviceAccount.automountServiceAccountToken | bool |`true`| Auto-mount service account token to the controller pods. |
100
102
| controller.rbac.create | bool |`true`| Specifies whether to create RBAC resources for the controller. |
101
103
| controller.rbac.annotations | object |`{}`| Extra annotations for the controller RBAC resources. |
102
104
| controller.labels | object |`{}`| Extra labels for controller pods. |
103
105
| controller.annotations | object |`{}`| Extra annotations for controller pods. |
104
-
| controller.volumes | list |`[]`| Volumes for controller pods. |
106
+
| controller.volumes | list |`[{"emptyDir":{"sizeLimit":"1Gi"},"name":"tmp"}]`| Volumes for controller pods. |
| controller.affinity | object |`{}`| Affinity for controller pods. |
107
109
| controller.tolerations | list |`[]`| List of node taints to tolerate for controller pods. |
@@ -110,9 +112,9 @@ See [helm uninstall](https://helm.sh/docs/helm/helm_uninstall) for command docum
110
112
| controller.topologySpreadConstraints | list |`[]`| Topology spread constraints rely on node labels to identify the topology domain(s) that each Node is in. Ref: [Pod Topology Spread Constraints](https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/). The labelSelector field in topology spread constraint will be set to the selector labels for controller pods if not specified. |
111
113
| controller.env | list |`[]`| Environment variables for controller containers. |
112
114
| controller.envFrom | list |`[]`| Environment variable sources for controller containers. |
113
-
| controller.volumeMounts | list |`[]`| Volume mounts for controller containers. |
115
+
| controller.volumeMounts | list |`[{"mountPath":"/tmp","name":"tmp","readOnly":false}]`| Volume mounts for controller containers. |
114
116
| controller.resources | object |`{}`| Pod resource requests and limits for controller containers. Note, that each job submission will spawn a JVM within the controller pods using "/usr/local/openjdk-11/bin/java -Xmx128m". Kubernetes may kill these Java processes at will to enforce resource limits. When that happens, you will see the following error: 'failed to run spark-submit for SparkApplication [...]: signal: killed' - when this happens, you may want to increase memory limits. |
| controller.sidecars | list |`[]`| Sidecar containers for controller pods. |
117
119
| controller.podDisruptionBudget.enable | bool |`false`| Specifies whether to create pod disruption budget for controller. Ref: [Specifying a Disruption Budget for your Application](https://kubernetes.io/docs/tasks/run-application/configure-pdb/)|
118
120
| controller.podDisruptionBudget.minAvailable | int |`1`| The number of pods that must be available. Require `controller.replicas` to be greater than 1 |
@@ -134,12 +136,13 @@ See [helm uninstall](https://helm.sh/docs/helm/helm_uninstall) for command docum
134
136
| webhook.serviceAccount.create | bool |`true`| Specifies whether to create a service account for the webhook. |
135
137
| webhook.serviceAccount.name | string |`""`| Optional name for the webhook service account. |
136
138
| webhook.serviceAccount.annotations | object |`{}`| Extra annotations for the webhook service account. |
139
+
| webhook.serviceAccount.automountServiceAccountToken | bool |`true`| Auto-mount service account token to the webhook pods. |
137
140
| webhook.rbac.create | bool |`true`| Specifies whether to create RBAC resources for the webhook. |
138
141
| webhook.rbac.annotations | object |`{}`| Extra annotations for the webhook RBAC resources. |
139
142
| webhook.labels | object |`{}`| Extra labels for webhook pods. |
140
143
| webhook.annotations | object |`{}`| Extra annotations for webhook pods. |
141
144
| webhook.sidecars | list |`[]`| Sidecar containers for webhook pods. |
142
-
| webhook.volumes | list |`[]`| Volumes for webhook pods. |
145
+
| webhook.volumes | list |`[{"emptyDir":{"sizeLimit":"500Mi"},"name":"serving-certs"}]`| Volumes for webhook pods. |
| webhook.affinity | object |`{}`| Affinity for webhook pods. |
145
148
| webhook.tolerations | list |`[]`| List of node taints to tolerate for webhook pods. |
@@ -148,15 +151,16 @@ See [helm uninstall](https://helm.sh/docs/helm/helm_uninstall) for command docum
148
151
| webhook.topologySpreadConstraints | list |`[]`| Topology spread constraints rely on node labels to identify the topology domain(s) that each Node is in. Ref: [Pod Topology Spread Constraints](https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/). The labelSelector field in topology spread constraint will be set to the selector labels for webhook pods if not specified. |
149
152
| webhook.env | list |`[]`| Environment variables for webhook containers. |
150
153
| webhook.envFrom | list |`[]`| Environment variable sources for webhook containers. |
151
-
| webhook.volumeMounts | list |`[]`| Volume mounts for webhook containers. |
154
+
| webhook.volumeMounts | list |`[{"mountPath":"/etc/k8s-webhook-server/serving-certs","name":"serving-certs","readOnly":false,"subPath":"serving-certs"}]`| Volume mounts for webhook containers. |
152
155
| webhook.resources | object |`{}`| Pod resource requests and limits for webhook pods. |
| webhook.podDisruptionBudget.enable | bool |`false`| Specifies whether to create pod disruption budget for webhook. Ref: [Specifying a Disruption Budget for your Application](https://kubernetes.io/docs/tasks/run-application/configure-pdb/)|
155
158
| webhook.podDisruptionBudget.minAvailable | int |`1`| The number of pods that must be available. Require `webhook.replicas` to be greater than 1 |
156
159
| spark.jobNamespaces | list |`["default"]`| List of namespaces where to run spark jobs. If empty string is included, all namespaces will be allowed. Make sure the namespaces have already existed. |
157
160
| spark.serviceAccount.create | bool |`true`| Specifies whether to create a service account for spark applications. |
158
161
| spark.serviceAccount.name | string |`""`| Optional name for the spark service account. |
159
162
| spark.serviceAccount.annotations | object |`{}`| Optional annotations for the spark service account. |
163
+
| spark.serviceAccount.automountServiceAccountToken | bool |`true`| Auto-mount service account token to the spark applications pods. |
160
164
| spark.rbac.create | bool |`true`| Specifies whether to create RBAC resources for spark applications. |
161
165
| spark.rbac.annotations | object |`{}`| Optional annotations for the spark application RBAC resources. |
Copy file name to clipboardExpand all lines: charts/spark-operator-chart/values.yaml
+33-4Lines changed: 33 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -51,6 +51,9 @@ controller:
51
51
# -- Configure the verbosity of logging, can be one of `debug`, `info`, `error`.
52
52
logLevel: info
53
53
54
+
# -- Grace period after a successful spark-submit when driver pod not found errors will be retried. Useful if the driver pod can take some time to be created.
55
+
driverPodCreationGracePeriod: 10s
56
+
54
57
# -- Specifies the maximum number of Executor pods that can be tracked by the controller per SparkApplication.
55
58
maxTrackedExecutorPerApp: 1000
56
59
@@ -87,6 +90,8 @@ controller:
87
90
name: ""
88
91
# -- Extra annotations for the controller service account.
89
92
annotations: {}
93
+
# -- Auto-mount service account token to the controller pods.
94
+
automountServiceAccountToken: true
90
95
91
96
rbac:
92
97
# -- Specifies whether to create RBAC resources for the controller.
@@ -105,7 +110,11 @@ controller:
105
110
# key2: value2
106
111
107
112
# -- Volumes for controller pods.
108
-
volumes: []
113
+
volumes:
114
+
# Create a tmp directory to write Spark artifacts to for deployed Spark apps.
115
+
- name: tmp
116
+
emptyDir:
117
+
sizeLimit: 1Gi
109
118
110
119
# -- Node selector for controller pods.
111
120
nodeSelector: {}
@@ -141,7 +150,11 @@ controller:
141
150
envFrom: []
142
151
143
152
# -- Volume mounts for controller containers.
144
-
volumeMounts: []
153
+
volumeMounts:
154
+
# Mount a tmp directory to write Spark artifacts to for deployed Spark apps.
155
+
- name: tmp
156
+
mountPath: "/tmp"
157
+
readOnly: false
145
158
146
159
# -- Pod resource requests and limits for controller containers.
147
160
# Note, that each job submission will spawn a JVM within the controller pods using "/usr/local/openjdk-11/bin/java -Xmx128m".
@@ -157,6 +170,7 @@ controller:
157
170
158
171
# -- Security context for controller containers.
159
172
securityContext:
173
+
readOnlyRootFilesystem: true
160
174
privileged: false
161
175
allowPrivilegeEscalation: false
162
176
runAsNonRoot: true
@@ -231,6 +245,8 @@ webhook:
231
245
name: ""
232
246
# -- Extra annotations for the webhook service account.
233
247
annotations: {}
248
+
# -- Auto-mount service account token to the webhook pods.
249
+
automountServiceAccountToken: true
234
250
235
251
rbac:
236
252
# -- Specifies whether to create RBAC resources for the webhook.
@@ -252,7 +268,11 @@ webhook:
252
268
sidecars: []
253
269
254
270
# -- Volumes for webhook pods.
255
-
volumes: []
271
+
volumes:
272
+
# Create a dir for the webhook to generate its certificates in.
273
+
- name: serving-certs
274
+
emptyDir:
275
+
sizeLimit: 500Mi
256
276
257
277
# -- Node selector for webhook pods.
258
278
nodeSelector: {}
@@ -288,7 +308,13 @@ webhook:
288
308
envFrom: []
289
309
290
310
# -- Volume mounts for webhook containers.
291
-
volumeMounts: []
311
+
volumeMounts:
312
+
# Mount a dir for the webhook to generate its certificates in.
313
+
- name: serving-certs
314
+
mountPath: /etc/k8s-webhook-server/serving-certs
315
+
subPath: serving-certs
316
+
readOnly: false
317
+
292
318
293
319
# -- Pod resource requests and limits for webhook pods.
294
320
resources: {}
@@ -301,6 +327,7 @@ webhook:
301
327
302
328
# -- Security context for webhook containers.
303
329
securityContext:
330
+
readOnlyRootFilesystem: true
304
331
privileged: false
305
332
allowPrivilegeEscalation: false
306
333
runAsNonRoot: true
@@ -331,6 +358,8 @@ spark:
331
358
name: ""
332
359
# -- Optional annotations for the spark service account.
333
360
annotations: {}
361
+
# -- Auto-mount service account token to the spark applications pods.
362
+
automountServiceAccountToken: true
334
363
335
364
rbac:
336
365
# -- Specifies whether to create RBAC resources for spark applications.
0 commit comments