/
values.yaml
539 lines (473 loc) · 19.1 KB
/
values.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
# The Dremio image used in the cluster.
#
# It is *highly* recommended to update the version tag to
# the version that you are using. This will ensure that all
# the pods are using the same version of the software. If
# you are directly consuming Dremio's images from Docker Hub,
# when specifying which version to use, it is best to use the
# full version tag in the form X.Y.Z (i.e. 21.1.0), as image
# tags in the form X.Y (i.e. 21.1) are updated with the latest
# patch version released.
#
# Using the image tag latest or in the form X.Y
# will potentially cause Dremio to upgrade versions
# automatically during redeployments and may negatively impact
# the cluster.
image: dremio/dremio-oss
imageTag: latest
# Annotations, labels, node selectors, and tolerations
#
# annotations: Annotations are applied to the StatefulSets that are deployed.
# podAnnotations: Pod annotations are applied to the pods that are deployed.
# labels: Labels operate much like annotations.
# podLabels: Labels that are applied to the pods that are deployed.
# nodeSelector: Target pods to nodes based on labels set on the nodes. For more
# information, see https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector
# tolerations: Tolerations allow the negation of taints that have been applied to some set of nodes
# in the Kubernetes cluster so that pods can be scheduled on those tainted nodes.
annotations: {}
podAnnotations: {}
labels: {}
podLabels: {}
nodeSelector: {}
tolerations: []
# Dremio Coordinator
coordinator:
# CPU & Memory
# Memory allocated to each coordinator, expressed in MB.
# CPU allocated to each coordinator, expressed in CPU cores.
cpu: 15
memory: 122800
# This count is used for slave coordinators only.
# The total number of coordinators will always be count + 1.
# If this is greater than zero then the client and flight ports on the master
# will be deactivated to steer these requests away from the master node.
count: 0
# Coordinator data volume size (applies to the master coordinator only).
# In most managed Kubernetes environments (AKS, GKE, etc.), the size of the disk has a direct impact on
# the provisioned and maximum performance of the disk.
volumeSize: 512Gi
# Kubernetes Service Account
# Uncomment below to use a custom Kubernetes service account for the coordinator.
#serviceAccount: ""
# Uncomment the lines below to use a custom set of extra startup parameters for the coordinator.
#extraStartParams: >-
# -DsomeKey=someValue
# Extra Init Containers
# Uncomment the below lines to use a custom set of extra init containers for the coordinator.
#extraInitContainers: |
# - name: extra-init-container
# image: {{ $.Values.image }}:{{ $.Values.imageTag }}
# command: ["echo", "Hello World"]
# Extra Volumes
# Uncomment below to use a custom set of extra volumes for the coordinator.
#extraVolumes: []
# Extra Volume Mounts
# Uncomment below to use a custom set of extra volume mounts for the coordinator.
#extraVolumeMounts: []
# Uncomment this value to use a different storage class for the coordinator.
#storageClass:
# Uncomment this value to use a different storage class for the coordinator logs.
#logStorageClass:
# Uncomment this value to write logs to a file on disk.
#writeLogsToFile: true
# These values, when defined, override the provided shared annotations, labels, node selectors, or tolerations.
# Uncomment only if you are trying to override the chart's shared values.
#annotations: {}
#podAnnotations: {}
#labels: {}
#podLabels: {}
#nodeSelector: {}
#tolerations: []
# Web UI
web:
port: 9047
tls:
# To enable TLS for the web UI, set the enabled flag to true and provide
# the appropriate Kubernetes TLS secret.
enabled: false
# To create a TLS secret, use the following command:
# kubectl create secret tls ${TLS_SECRET_NAME} --key ${KEY_FILE} --cert ${CERT_FILE}
secret: dremio-tls-secret-ui
# ODBC/JDBC Client
client:
port: 31010
tls:
# To enable TLS for the client endpoints, set the enabled flag to
# true and provide the appropriate Kubernetes TLS secret. Client
# endpoint encryption is available only on Dremio Enterprise
# Edition and should not be enabled otherwise.
enabled: false
# To create a TLS secret, use the following command:
# kubectl create secret tls ${TLS_SECRET_NAME} --key ${KEY_FILE} --cert ${CERT_FILE}
secret: dremio-tls-secret-client
# Flight Client
flight:
port: 32010
tls:
# To enable TLS for the Flight endpoints, set the enabled flag to
# true and provide the appropriate Kubernetes TLS secret.
enabled: false
# To create a TLS secret, use the following command:
# kubectl create secret tls ${TLS_SECRET_NAME} --key ${KEY_FILE} --cert ${CERT_FILE}
secret: dremio-tls-secret-flight
# Startup Probe
startupProbe:
# Max timeout for the probe is calculated as failureThreshold * periodSeconds
# failureThreshold: Maximum number of allowed failures
failureThreshold: 300
# periodSeconds: Polling frequency expressed in seconds
periodSeconds: 1
# Readiness Probe
readinessProbe:
# Max timeout for the probe is calculated as failureThreshold * periodSeconds
# failureThreshold: Maximum number of allowed failures
failureThreshold: 120
# periodSeconds: Polling frequency expressed in seconds
periodSeconds: 1
# Dremio Executor
executor:
# CPU & Memory
# Memory allocated to each executor, expressed in MB.
# CPU allocated to each executor, expressed in CPU cores.
cpu: 15
memory: 122800
# Engines
# Engine names be 47 characters or less and be lowercase alphanumber characters or '-'.
# Note: The number of executor pods will be the length of the array below * count.
engines: ["default"]
count: 3
# Executor volume size.
volumeSize: 128Gi
# Kubernetes Service Account
# Uncomment below to use a custom Kubernetes service account for executors.
#serviceAccount: ""
# Uncomment the lines below to use a custom set of extra startup parameters for executors.
#extraStartParams: >-
# -DsomeKey=someValue
# Extra Init Containers
# Uncomment the below lines to use a custom set of extra init containers for executors.
#extraInitContainers: |
# - name: extra-init-container
# image: {{ $.Values.image }}:{{ $.Values.imageTag }}
# command: ["echo", "Hello World"]
# Extra Volumes
# Uncomment below to use a custom set of extra volumes for executors.
#extraVolumes: []
# Extra Volume Mounts
# Uncomment below to use a custom set of extra volume mounts for executors.
#extraVolumeMounts: []
# Uncomment this value to use a different storage class for executors.
#storageClass:
# Uncomment this value to use a different storage class for the coordinator logs.
#logStorageClass:
# Uncomment this value to write logs to a file on disk.
#writeLogsToFile: true
# Dremio C3
# Designed for use with NVMe storage devices, performance may be impacted when using
# persistent volume storage that resides far from the physical node.
cloudCache:
enabled: true
# Uncomment this value to use a different storage class for C3.
#storageClass:
# Volumes to use for C3, specify multiple volumes if there are more than one local
# NVMe disk that you would like to use for C3.
#
# The below example shows all valid options that can be provided for a volume.
# volumes:
# - name: "dremio-default-c3"
# size: 100Gi
# storageClass: "local-nvme"
volumes:
- size: 100Gi
# These values, when defined and not empty, override the provided shared annotations, labels, node selectors, or tolerations.
# Uncomment only if you are trying to override the chart's shared values.
#annotations: {}
#podAnnotations: {}
#labels: {}
#podLabels: {}
#nodeSelector: {}
#tolerations: []
# By default, the number of Engines is static. Enable the Node Lifecycle Service
# to enable dynamic scaling.
# nodeLifecycleService:
# enabled: true
# scalingMetrics:
# default:
# enabled: true
# scalingBehavior:
# scaleDown:
# defaultPolicy:
# enabled: true
# scaleUp:
# defaultPolicy:
# enabled: true
# Engine Overrides
#
# The settings above are overridable on a per-engine basis. These
# values here will take precedence and *override* the configured values
# on a per-engine basis. Engine overrides are matched with the name in the above
# list of engines.
#
# Special per-engine parameters:
# volumeClaimName: For each engine, you can optionally specify a value for the volume claim name,
# this value must be unique to each engine or may cause unintended consequences. This value is
# primarily intended for transitioning an existing single engine to a multi-engine configuration
# where there may already have been existing persistent volumes.
#
# The below example shows all valid options that can be overridden on a per-engine basis.
# engineOverride:
# engineNameHere:
# cpu: 1
# memory: 122800
#
# count: 1
#
# annotations: {}
# podAnnotations: {}
# labels: {}
# podLabels: {}
# nodeSelector: {}
# tolerations: []
#
# nodeLifecycleService:
# enabled: true
# scalingMetrics:
# default:
# enabled: true
# scalingBehavior:
# scaleDown:
# defaultPolicy:
# enabled: true
# scaleUp:
# defaultPolicy:
# enabled: true
#
# serviceAccount: ""
#
# extraStartParams: >-
# -DsomeCustomKey=someCustomValue
#
# extraInitContainers: |
# - name: extra-init-container
# image: {{ $.Values.image }}:{{ $.Values.imageTag }}
# command: ["echo", "Hello World"]
#
#
# extraVolumes: []
# extraVolumeMounts: []
#
# volumeSize: 50Gi
# storageClass: managed-premium
# logStorageClass: ""
# volumeClaimName: dremio-default-executor-volume
#
# cloudCache:
# enabled: true
#
# storageClass: ""
#
# volumes:
# - name: "default-c3"
# size: 100Gi
# storageClass: ""
# Zookeeper
zookeeper:
# The Zookeeper image used in the cluster.
image: zookeeper
imageTag: 3.8.3-jre-17
# CPU & Memory
# Memory allocated to each zookeeper, expressed in MB.
# CPU allocated to each zookeeper, expressed in CPU cores.
cpu: 0.5
memory: 1024
count: 3
volumeSize: 10Gi
# Kubernetes Service Account
# Uncomment below to use a custom Kubernetes service account for Zookeeper.
#serviceAccount: ""
# Uncomment this value to use a different storage class for Zookeeper.
#storageClass:
# These values, when defined, override the provided shared annotations, labels, node selectors, or tolerations.
# Uncomment only if you are trying to override the chart's shared values.
#annotations: {}
#podAnnotations: {}
#labels: {}
#podLabels: {}
#nodeSelector: {}
#tolerations: []
# Control where uploaded files are stored for Dremio.
# For more information, see https://docs.dremio.com/deployment/distributed-storage.html
distStorage:
# The supported distributed storage types are: local (<21.0.0 only), aws, azure, gcp, or azureStorage.
#
# local: (<21.0.0 only) Not recommended for production use. When using local, dist-caching is disabled.
# aws: AWS S3, additional parameters required, see "aws" section.
# azure: ADLS Gen 1, additional parameters required, see "azure" section.
# azureStorage: Azure Storage Gen2, additional paramters required, see "azureStorage" section.
# gcp: Google Cloud Storage, additional parameters required, see "gcp" section.
type: "local"
# Google Cloud Storage
#
# bucketName: The name of the GCS bucket for distributed storage.
# path: The path, relative to the bucket, to create Dremio's directories.
# authentication: Valid types are: serviceAccountKeys or auto.
# - When using "auto" authentication, Dremio uses Google Application Default Credentials to
# authenticate. This is platform dependent and may not be available in all Kubernetes clusters.
# - Note: When using a GCS bucket on GKE, we recommend enabling Workload Identity and configuring
# a Kubernetes Service Accountfor Dremio with an associated workload identity that
# has access to the GCS bucket.
# credentials: If using serviceAccountKeys authentication, uncomment the credentials section below.
gcp:
bucketName: "GCS Bucket Name"
path: "/"
authentication: "auto"
# If using serviceAccountKeys, uncomment the section below, referencing the values from
# the service account credentials JSON file that you generated:
#
#credentials:
# projectId: GCP Project ID that the Google Cloud Storage bucket belongs to.
# clientId: Client ID for the service account that has access to Google Cloud Storage bucket.
# clientEmail: Email for the service account that has access to Google Cloud Storage bucket.
# privateKeyId: Private key ID for the service account that has access to Google Cloud Storage bucket.
# privateKey: |-
# -----BEGIN PRIVATE KEY-----\n Replace me with full private key value. \n-----END PRIVATE KEY-----\n
# Extra Properties
# Use the extra properties block to provide additional parameters to configure the distributed
# storage in the generated core-site.xml file.
#
#extraProperties: |
# <property>
# <name></name>
# <value></value>
# </property>
# AWS S3
# For more details of S3 configuration, see https://docs.dremio.com/deployment/dist-store-config.html#amazon-s3
#
# bucketName: The name of the S3 bucket for distributed storage.
# path: The path, relative to the bucket, to create Dremio's directories.
# authentication: Valid types are: accessKeySecret, instanceMetadata, or awsProfile.
# - Note: Instance metadata is only supported in AWS EKS and requires that the
# EKS worker node IAM role is configured with sufficient access rights. At this time,
# Dremio does not support using an K8s service account based IAM role.
# credentials: If using accessKeySecret authentication, uncomment the credentials section below.
aws:
bucketName: "AWS Bucket Name"
path: "/"
authentication: "metadata"
# If using accessKeySecret for authentication against S3, uncomment the lines below and use the values
# to configure the appropriate credentials.
#
#credentials:
# accessKey: "AWS Access Key"
# secret: "AWS Secret"
#
# If using awsProfile for authentication against S3, uncomment the lines below and use the values
# to choose the appropriate profile.
#
#credentials:
# awsProfileName: "default"
#
# Extra Properties
# Use the extra properties block to provide additional parameters to configure the distributed
# storage in the generated core-site.xml file.
#
#extraProperties: |
# <property>
# <name></name>
# <value></value>
# </property>
# Azure ADLS Gen 1
# For more details of Azure ADLS Gen 1 storage configuration, see
# https://docs.dremio.com/deployment/dist-store-config.html#azure-data-lake-storage-gen1
#
# datalakeStoreName: The ADLS Gen 1
azure:
datalakeStoreName: "Azure DataLake Store Name"
path: "/"
credentials:
applicationId: "Azure Application ID"
secret: "Azure Application Secret"
oauth2Endpoint: "Azure OAuth2 Endpoint"
# Extra Properties
# Use the extra properties block to provide additional parameters to configure the distributed
# storage in the generated core-site.xml file.
#
#extraProperties: |
# <property>
# <name></name>
# <value></value>
# </property>
# Azure Storage Gen2
# For more details of Azure Storage Gen2 storage configuration, see
# https://docs.dremio.com/deployment/dist-store-config.html#azure-storage
#
# accountName: The name of the storage account.
# filesystem: The name of the blob container to use within the storage account.
# path: The path, relative to the filesystem, to create Dremio's directories.
# credentials:
azureStorage:
accountName: "Azure Storage Account Name"
filesystem: "Azure Storage Account Blob Container"
path: "/"
credentials:
accessKey: "Azure Storage Account Access Key"
# Extra Properties
# Use the extra properties block to provide additional parameters to configure the distributed
# storage in the generated core-site.xml file.
#
#extraProperties: |
# <property>
# <name></name>
# <value></value>
# </property>
# Dremio Start Parameters
# Uncomment the below lines to provide extra start paramaters to be passed directly to Dremio during startup.
#extraStartParams: >-
# -DsomeKey=someValue
# Extra Init Containers
# Uncomment the below lines to provide extra init containers to be run first.
#extraInitContainers: |
# - name: extra-init-container
# image: {{ $.Values.image }}:{{ $.Values.imageTag }}
# command: ["echo", "Hello World"]
# Kubernetes Service Account
# Uncomment the below line to provide a Kubernetes service account that Dremio should run with.
#serviceAccount: ""
# Extra Volumes
# Array to add extra volumes to all Dremio resources.
extraVolumes: []
# Extra Volume Mounts
# Array to add extra volume mounts to all Dremio resources, normally used in conjunction wtih extraVolumes.
extraVolumeMounts: []
# Uncomment this value to write logs to a file on disk for all Dremio resources.
#writeLogsToFile: true
# Dremio Service
# The dremio-client service exposes the service for access outside of the Kubernetes cluster.
service:
type: LoadBalancer
# These values, when defined and not empty, override the provided shared annotations and labels.
# Uncomment only if you are trying to override the chart's shared values.
#annotations: {}
#labels: {}
# If the loadBalancer supports sessionAffinity and you have more than one coordinator,
# uncomment the below line to enable session affinity.
#sessionAffinity: ClientIP
# Enable the following flag if you wish to route traffic through a shared VPC
# for the LoadBalancer's external IP.
# The chart is setup for internal IP support for AKS, EKS, GKE.
# For more information, see https://kubernetes.io/docs/concepts/services-networking/service/#internal-load-balancer
#internalLoadBalancer: true
# If you have a static IP allocated for your load balancer, uncomment the following
# line and set the IP to provide the static IP used for the load balancer.
# Note: The service type must be set to LoadBalancer for this value to be used.
#loadBalancerIP: 0.0.0.0
# To use custom storage class, uncomment below.
# Otherwise the default storage class configured for your K8s cluster is used.
#storageClass: managed-premium
# For private and protected docker image repository, you should store
# the credentials in a kubernetes secret and provide the secret name
# here. For more information, see
# https://kubernetes.io/docs/concepts/containers/images/#specifying-imagepullsecrets-on-a-pod
# imagePullSecrets:
# - secretname