-
Notifications
You must be signed in to change notification settings - Fork 24
Expand file tree
/
Copy pathvalues.yaml
More file actions
437 lines (389 loc) · 17.6 KB
/
Copy pathvalues.yaml
File metadata and controls
437 lines (389 loc) · 17.6 KB
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
## K8S/DRIVER ATTRIBUTES
########################
# version: version of this values file
# Note: Do not change this value
version: "v2.17.0"
images:
# "driver" defines the container image, used for the driver container.
driver:
image: quay.io/dell/container-storage-modules/csi-isilon:v2.17.0
# CSI sidecars
attacher:
image: registry.k8s.io/sig-storage/csi-attacher:v4.12.0
provisioner:
image: registry.k8s.io/sig-storage/csi-provisioner:v6.2.0
snapshotter:
image: registry.k8s.io/sig-storage/csi-snapshotter:v8.5.0
resizer:
image: registry.k8s.io/sig-storage/csi-resizer:v2.1.0
registrar:
image: registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.17.0
healthmonitor:
image: registry.k8s.io/sig-storage/csi-external-health-monitor-controller:v0.17.0
# CSM sidecars
replication:
image: quay.io/dell/container-storage-modules/dell-csi-replicator:v1.15.0
podmon:
image: quay.io/dell/container-storage-modules/podmon:v1.16.0
authorization:
image: quay.io/dell/container-storage-modules/csm-authorization-sidecar:v2.5.0
metadataretriever:
image: quay.io/dell/container-storage-modules/csi-metadata-retriever:v1.14.0
# CSI driver log level
# Allowed values: "error", "warn"/"warning", "info", "debug"
# Default value: "info"
logLevel: "info"
# certSecretCount: Represents number of certificate secrets, which user is going to create for
# ssl authentication. (isilon-cert-0..isilon-cert-n)
# Allowed values: n, where n > 0
# Default value: None
certSecretCount: 1
# allowedNetworks: Custom networks for PowerScale export
# Specify list of networks which can be used for NFS I/O traffic; CIDR format should be used.
# Allowed values: list of one or more networks
# Default value: None
# Examples: [192.168.1.0/24, 192.168.100.0/22]
allowedNetworks: []
# maxIsilonVolumesPerNode: Specify default value for maximum number of volumes that controller can publish to the node.
# If value is zero CO SHALL decide how many volumes of this type can be published by the controller to the node.
# This limit is applicable to all the nodes in the cluster for which node label 'max-isilon-volumes-per-node' is not set.
# Allowed values: n, where n >= 0
# Default value: 0
maxIsilonVolumesPerNode: 0
# imagePullPolicy: Policy to determine if the image should be pulled prior to starting the container.
# Allowed values:
# Always: Always pull the image.
# IfNotPresent: Only pull the image if it does not already exist on the node.
# Never: Never pull the image.
# Default value: None
imagePullPolicy: IfNotPresent
# verbose: Indicates what content of the OneFS REST API message should be logged in debug level logs
# Allowed Values:
# 0: log full content of the HTTP request and response
# 1: log without the HTTP response body
# 2: log only 1st line of the HTTP request and response
# Default value: 0
verbose: 1
# Specify kubelet config dir path.
# Ensure that the config.yaml file is present at this path.
# Default value: /var/lib/kubelet
kubeletConfigDir: /var/lib/kubelet
# enableCustomTopology: Specify if custom topology label <provisionerName>.dellemc.com/<powerscalefqdnorip>:<provisionerName>
# has to be used for making connection to backend PowerScale Array.
# If enableCustomTopology is set to true, then do not specify allowedTopologies in storage class.
# Allowed values:
# true : enable custom topology
# false: disable custom topology
# Default value: false
enableCustomTopology: false
# fsGroupPolicy: Defines if the underlying volume supports changing ownership and permission of the volume before being mounted.
# Allowed values:
# ReadWriteOnceWithFSType: supports volume ownership and permissions change only if the fsType is defined
# and the volume's accessModes contains ReadWriteOnce.
# File: kubernetes may use fsGroup to change permissions and ownership of the volume
# to match user requested fsGroup in the pod's security policy regardless of fstype or access mode.
# None: volumes will be mounted with no modifications.
# Default value: ReadWriteOnceWithFSType
fsGroupPolicy: ReadWriteOnceWithFSType
# podmonAPIPort: Defines the port to be used within the kubernetes cluster
# Allowed values:
# Any valid and free port.
# Default value: 8083
podmonAPIPort: 8083
# maxPathLen: this parameter is used for setting the maximum Path length for the given volume.
# Default value: 192
# Examples: 192, 256
maxPathLen: 192
# azReconcileInterval: Interval to monitor and reconcile network interface labels on nodes.
# Allowed values: Number followed by unit of time (s,m,h)
# Default value: 1h
azReconcileInterval: 1h
# controller: configure controller pod specific parameters
controller:
# controllerCount: defines the number of csi-powerscale controller pods to deploy to
# the Kubernetes release.
# Allowed values: n, where n > 0
# Default value: None
controllerCount: 2
# volumeNamePrefix: Prefix of PersistentVolume names created
# Allowed values: string
# Default value: csivol
# Examples: "k8s", "app1"
volumeNamePrefix: csivol
# leaderElection: configure leader election parameters
leaderElection:
# Duration, that non-leader candidates will wait to force acquire leadership
# Allowed values: Duration, in seconds. Must be greater than leaderElectionRenewDeadline
# Default value: 15s
leaderElectionLeaseDuration: 15s
# Duration, that the acting leader will retry refreshing leadership before giving up
# Allowed values: Duration, in seconds. Must be greater than leaderElectionRetryPeriod
# Default value: 10s
leaderElectionRenewDeadline: 10s
# Duration, the LeaderElector clients should wait between tries of actions.
# Allowed values: Duration, in seconds
# Default value: 5s
leaderElectionRetryPeriod: 5s
# replication: allows to configure replication
# Replication CRDs must be installed before installing driver
replication:
# enabled: Enable/Disable replication feature
# Allowed values:
# true: enable replication feature(install dell-csi-replicator sidecar)
# false: disable replication feature(do not install dell-csi-replicator sidecar)
# Default value: false
enabled: false
# replicationContextPrefix: prefix to use for naming of resources created by replication feature
# Allowed values: string
# Default value: powerscale
replicationContextPrefix: "powerscale"
# replicationPrefix: prefix to prepend to storage classes parameters
# Allowed values: string
# Default value: replication.storage.dell.com
replicationPrefix: "replication.storage.dell.com"
snapshot:
# enabled: Enable/Disable volume snapshot feature
# Allowed values:
# true: enable volume snapshot feature(install snapshotter sidecar)
# false: disable volume snapshot feature(do not install snapshotter sidecar)
# Default value: None
enabled: true
# snapNamePrefix: Prefix to apply to the names of a created snapshots
# Allowed values: string
# Default value: csi-snap
# Examples: "snap", "snapshot"
snapNamePrefix: csi-snap
resizer:
# enabled: Enable/Disable volume expansion feature
# Allowed values:
# true: enable volume expansion feature(install resizer sidecar)
# false: disable volume snapshot feature(do not install resizer sidecar)
# Default value: None
enabled: true
healthMonitor:
# enabled: Enable/Disable health monitor of CSI volumes- volume status, volume condition
# Allowed values:
# true: enable checking of health condition of CSI volumes
# false: disable checking of health condition of CSI volumes
# Default value: None
enabled: false
# interval: Interval of monitoring volume health condition
# Allowed values: Number followed by unit of time (s,m,h)
# Default value: 60s
interval: 60s
# nodeSelector: Define node selection constraints for pods of controller deployment.
# For the pod to be eligible to run on a node, the node must have each
# of the indicated key-value pairs as labels.
# Leave as blank to consider all nodes
# Allowed values: map of key-value pairs
# Default value: None
nodeSelector:
# Uncomment if nodes you wish to use have the node-role.kubernetes.io/master taint
# node-role.kubernetes.io/master: ""
# Uncomment if nodes you wish to use have the node-role.kubernetes.io/control-plane taint
# node-role.kubernetes.io/control-plane: ""
# tolerations: Define tolerations for the controller deployment, if required.
# Default value: None
# Uncomment if nodes you wish to use have the node-role.kubernetes.io/master taint
tolerations:
# - key: "node-role.kubernetes.io/master"
# operator: "Exists"
# effect: "NoSchedule"
# Uncomment if nodes you wish to use have the node-role.kubernetes.io/control-plane taint
# tolerations:
# - key: "node-role.kubernetes.io/control-plane"
# operator: "Exists"
# effect: "NoSchedule"
# node: configure node pod specific parameters
node:
# nodeSelector: Define node selection constraints for pods of node daemonset
# For the pod to be eligible to run on a node, the node must have each
# of the indicated key-value pairs as labels.
# Leave as blank to consider all nodes
# Allowed values: map of key-value pairs
# Default value: None
nodeSelector:
# Uncomment if nodes you wish to use have the node-role.kubernetes.io/master taint
# node-role.kubernetes.io/master: ""
# Uncomment if nodes you wish to use have the node-role.kubernetes.io/control-plane taint
# node-role.kubernetes.io/control-plane: ""
# tolerations: Define tolerations for the node daemonset, if required.
# Default value: None
# Uncomment if nodes you wish to use have the node-role.kubernetes.io/master taint
tolerations:
# - key: "node.kubernetes.io/memory-pressure"
# operator: "Exists"
# effect: "NoExecute"
# - key: "node.kubernetes.io/disk-pressure"
# operator: "Exists"
# effect: "NoExecute"
# - key: "node.kubernetes.io/network-unavailable"
# operator: "Exists"
# effect: "NoExecute"
# - key: "node-role.kubernetes.io/master"
# operator: "Exists"
# effect: "NoSchedule"
# Uncomment if nodes you wish to use have the node-role.kubernetes.io/control-plane taint
# tolerations:
# - key: "node-role.kubernetes.io/control-plane"
# operator: "Exists"
# effect: "NoSchedule"
# Uncomment if CSM for Resiliency and CSI Driver pods monitor are enabled
# tolerations:
# - key: "offline.vxflexos.storage.dell.com"
# operator: "Exists"
# effect: "NoSchedule"
# - key: "vxflexos.podmon.storage.dell.com"
# operator: "Exists"
# effect: "NoSchedule"
# - key: "offline.unity.storage.dell.com"
# operator: "Exists"
# effect: "NoSchedule"
# - key: "unity.podmon.storage.dell.com"
# operator: "Exists"
# effect: "NoSchedule"
# - key: "offline.isilon.storage.dell.com"
# operator: "Exists"
# effect: "NoSchedule"
# - key: "isilon.podmon.storage.dell.com"
# operator: "Exists"
# effect: "NoSchedule"
# dnsPolicy: Determines the DNS Policy of the Node service.
# Allowed values:
# Default: The Pod inherits the name resolution configuration from the node that the pods run on.
# ClusterFirst: Any DNS query that does not match the configured cluster domain suffix, such as "www.kubernetes.io",
# is forwarded to the upstream nameserver inherited from the node.
# ClusterFirstWithHostNet: For Pods running with hostNetwork, you should explicitly set this DNS policy.
# None: It allows a Pod to ignore DNS settings from the Kubernetes environment.
# All DNS settings are supposed to be provided using the dnsConfig field in the Pod Spec.
# Default value: ClusterFirst
# ClusterFirstWithHostNet is the recommended DNS policy.
# Prior to v1.5 of the driver, the default DNS policy was ClusterFirst.
# In certain scenarios, users might need to change the default dnsPolicy.
dnsPolicy: ClusterFirstWithHostNet
healthMonitor:
# enabled: Enable/Disable health monitor of CSI volumes- volume usage, volume condition
# Allowed values:
# true: enable checking of health condition of CSI volumes
# false: disable checking of health condition of CSI volumes
# Default value: None
enabled: false
## PLATFORM ATTRIBUTES
######################
# endpointPort: Specify the HTTPs port number of the PowerScale OneFS API server
# Formerly this attribute was named as "isiPort"
# This value acts as a default value for endpointPort, if not specified for a cluster config in secret
# If authorization is enabled, endpointPort must match the port specified in the endpointPort parameter of the isilon-creds secret
# Allowed value: valid port number
# Default value: 8080
endpointPort: 8080
# skipCertificateValidation: Specify whether the PowerScale OneFS API server's certificate chain and host name should be verified.
# Formerly this attribute was named as "isiInsecure"
# This value acts as a default value for skipCertificateValidation, if not specified for a cluster config in secret
# Allowed values:
# true: skip OneFS API server's certificate verification
# false: verify OneFS API server's certificates
# Default value: false
skipCertificateValidation: true
# isiAuthType: Indicates whether the authentication will be session-based or basic.
# Allowed values:
# 0: enables basic Authentication
# 1: enables session-based Authentication
# Default value: 0
isiAuthType: 0
# isiAccessZone: The name of the access zone a volume can be created in.
# If storageclass is missing with AccessZone parameter, then value of isiAccessZone is used for the same.
# Default value: System
# Examples: System, zone1
isiAccessZone: System
# enableQuota: Indicates whether the provisioner should attempt to set (later unset) quota
# on a newly provisioned volume.
# This requires SmartQuotas to be enabled on PowerScale cluster.
# Allowed values:
# true: set quota for volume
# false: do not set quota for volume
enableQuota: true
# isiPath: The base path for the volumes to be created on PowerScale cluster.
# This value acts as a default value for isiPath, if not specified for a cluster config in secret
# Ensure that this path exists on PowerScale cluster.
# Allowed values: unix absolute path
# Default value: /ifs
# Examples: /ifs/data/csi, /ifs/engineering
isiPath: /ifs/data/csi
# isiVolumePathPermissions: The permissions for isi volume directory path
# This value acts as a default value for isiVolumePathPermissions, if not specified for a cluster config in secret
# Allowed values: valid octal mode number
# Default value: "0777"
# Examples: "0777", "777", "0755"
isiVolumePathPermissions: "0777"
# ignoreUnresolvableHosts: Ignore unresolvable hosts on the OneFS
# When set to true, OneFS allows new host to add to existing export list though any of the existing hosts from the
# same exports are unresolvable/doesn't exist anymore.
# Allowed values:
# true: ignore existing unresolvable hosts and append new host to the existing export
# false: exhibits OneFS default behavior i.e. if any of existing hosts are unresolvable while adding new one it fails
# Default value: false
ignoreUnresolvableHosts: false
# noProbeOnStart: Indicates whether the controller/node should probe all the PowerScale clusters during driver initialization
# When set to true, the driver will not set node labels, please manually add
# the label <provisionerName>.dellemc.com/<powerscalefqdnorip>:<provisionerName> on the nodes for each of the clusters reachable from the node.
# Allowed values:
# true : do not probe all PowerScale clusters during driver initialization
# false: probe all PowerScale clusters during driver initialization
# Default value: false
noProbeOnStart: false
# autoProbe: automatically probe the PowerScale cluster if not done already during CSI calls.
# Allowed values:
# true : enable auto probe.
# false: disable auto probe.
# Default value: false
autoProbe: true
authorization:
enabled: false
# proxyHost: hostname of the csm-authorization server
# Default value: None
proxyHost:
# skipCertificateValidation: certificate validation of the csm-authorization server
# Allowed Values:
# "true" - TLS certificate verification will be skipped
# "false" - TLS certificate will be verified
# Default value: "true"
skipCertificateValidation: true
# Storage Capacity Tracking
# Note: Capacity tracking is supported in kubernetes v1.24 and above, this feature will be automatically disabled in older versions.
storageCapacity:
# enabled : Enable/Disable storage capacity tracking
# Allowed values:
# true: enable storage capacity tracking
# false: disable storage capacity tracking
# Default value: true
enabled: true
# pollInterval : Configure how often external-provisioner polls the driver to detect changed capacity
# Allowed values: 1m,2m,3m,...,10m,...,60m etc
# Default value: 5m
pollInterval: 5m
# Enable this feature only after contact support for additional information
podmon:
enabled: false
controller:
args:
- "--csisock=unix:/var/run/csi/csi.sock"
- "--labelvalue=csi-isilon"
- "--arrayConnectivityPollRate=60"
- "--driverPath=csi-isilon.dellemc.com"
- "--mode=controller"
- "--skipArrayConnectionValidation=false"
- "--driver-config-params=/csi-isilon-config-params/driver-config-params.yaml"
- "--driverPodLabelValue=dell-storage"
- "--ignoreVolumelessPods=false"
node:
args:
- "--csisock=unix:/var/lib/kubelet/plugins/csi-isilon/csi_sock"
- "--labelvalue=csi-isilon"
- "--arrayConnectivityPollRate=60"
- "--driverPath=csi-isilon.dellemc.com"
- "--mode=node"
- "--leaderelection=false"
- "--driver-config-params=/csi-isilon-config-params/driver-config-params.yaml"
- "--driverPodLabelValue=dell-storage"
- "--ignoreVolumelessPods=false"