Zack Williams | 618ab86 | 2018-08-03 10:12:54 -0700 | [diff] [blame] | 1 | --- |
| 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. |
| 17 | common: |
| 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. |
| 40 | classes: |
| 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. |
| 99 | daemonset: |
| 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 | |