blob: a7e28834d4f55a1696d31142a36edfcf25ee451e [file] [log] [blame]
Zack Williams618ab862018-08-03 10:12:54 -07001---
2# Copyright 2018-present Open Networking Foundation
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8# http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15
16# Common options.
17common:
18 # Defines whether to generate service account and role bindings.
19 rbac: true
20
21 # Defines the namespace where provisioner runs
22 namespace: "local-storage"
23
24 # Beta PV.NodeAffinity field is used by default. If running against pre-1.10
25 # k8s version, the `useAlphaAPI` flag must be enabled in the configMap.
26 useAlphaAPI: false
27
28 # Provisioner clean volumes in process by default. If set to true, provisioner
29 # will use Jobs to clean.
30 useJobForCleaning: false
31
32 # Resync period in reflectors will be random between minResyncPeriod and
33 # 2*minResyncPeriod. Default: 5m0s.
34 minResyncPeriod: "5m0s"
35
36 # Defines the name of configmap used by Provisioner
37 configMapName: "local-provisioner-config"
38
39# Configure storage classes.
40classes:
41 - name: "local-hdd" # hard disk volumes
42
43 # Path on the host where local volumes of this storage class are mounted
44 # under.
45 hostDir: "/mnt/local-storage/hdd"
46
47 # Optionally specify mount path of local volumes. By default, we use same
48 # path as hostDir in container.
49 mountDir: false
50
51 blockCleanerCommand:
52 # Do a quick reset of the block device during its cleanup.
53 - "/scripts/quick_reset.sh"
54 # or use dd to zero out block dev in two iterations by uncommenting these lines
55 # - "/scripts/dd_zero.sh"
56 # - "2"
57 # or run shred utility for 2 iterations
58 # - "/scripts/shred.sh"
59 # - "2"
60 # or blkdiscard utility by uncommenting the line below.
61 # - "/scripts/blkdiscard.sh"
62
63 # Uncomment to create storage class object with default configuration.
64 storageClass: true
65
66 # Avaiable reclaim policies: Delete/Retain, defaults: Delete.
67 reclaimPolicy: "Delete"
68
69 - name: "local-ssd" # solid state disk volumes
70
71 # Path on the host where local volumes of this storage class are mounted
72 # under.
73 hostDir: "/mnt/local-storage/ssd"
74
75 # Optionally specify mount path of local volumes. By default, we use same
76 # path as hostDir in container.
77 mountDir: false
78
79 blockCleanerCommand:
80 # Do a quick reset of the block device during its cleanup.
81 - "/scripts/quick_reset.sh"
82 # or use dd to zero out block dev in two iterations by uncommenting these lines
83 # - "/scripts/dd_zero.sh"
84 # - "2"
85 # or run shred utility for 2 iterations
86 # - "/scripts/shred.sh"
87 # - "2"
88 # or blkdiscard utility by uncommenting the line below.
89 # - "/scripts/blkdiscard.sh"
90
91 # Uncomment to create storage class object with default configuration.
92 storageClass: true
93
94 # Avaiable reclaim policies: Delete/Retain, defaults: Delete.
95 reclaimPolicy: "Delete"
96
97
98# Configure DaemonSet for provisioner.
99daemonset:
100
101 # Defines the name of a Provisioner
102 name: "local-volume-provisioner"
103
104 # Defines Provisioner's image name including container registry.
105 image: "quay.io/external_storage/local-volume-provisioner:v2.1.0"
106
107 # Defines Image download policy, see kubernetes documentation for available values.
108 imagePullPolicy: 'IfNotPresent'
109
110 # Defines a name of the service account which Provisioner will use to communicate with API server.
111 serviceAccount: "local-storage-admin"
112
113 # If configured KubeConfigEnv will (optionally) specify the location of kubeconfig file on the node.
114 # kubeConfigEnv: KUBECONFIG
115 kubeConfigEnv: false
116
117 # List of node labels to be copied to the PVs created by the provisioner in a format:
118 #
119 # nodeLabels:
120 # - failure-domain.beta.kubernetes.io/zone
121 # - failure-domain.beta.kubernetes.io/region
122 nodeLabels: []
123
124 # If configured, tolerations will add a toleration field to the DaemonSet PodSpec.
125 #
126 # Node tolerations for local-volume-provisioner scheduling to nodes with taints.
127 # Ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
128 tolerations: []
129
130 # If configured, resources will set the requests/limits field to the Daemonset PodSpec.
131 # Ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
132 resources: {}
133