Merge branch 'master' into Weilbyte/kustomize
This commit is contained in:
@@ -3,7 +3,7 @@
|
|||||||
**NFS subdir external provisioner** is an automatic provisioner that use your _existing and already configured_ NFS server to support dynamic provisioning of Kubernetes Persistent Volumes via Persistent Volume Claims. Persistent volumes are provisioned as `${namespace}-${pvcName}-${pvName}`.
|
**NFS subdir external provisioner** is an automatic provisioner that use your _existing and already configured_ NFS server to support dynamic provisioning of Kubernetes Persistent Volumes via Persistent Volume Claims. Persistent volumes are provisioned as `${namespace}-${pvcName}-${pvName}`.
|
||||||
|
|
||||||
Note: This repository is migrated from https://github.com/kubernetes-incubator/external-storage/tree/master/nfs-client. As part of the migration:
|
Note: This repository is migrated from https://github.com/kubernetes-incubator/external-storage/tree/master/nfs-client. As part of the migration:
|
||||||
- The container image name and repository has changed to `gcr.io/k8s-staging-sig-storage` and `nfs-subdir-external-provisioner` respectively.
|
- The container image name and repository has changed to `k8s.gcr.io/sig-storage` and `nfs-subdir-external-provisioner` respectively.
|
||||||
- To maintain backward compatibility with earlier deployment files, the naming of NFS Client Provisioner is retained as `nfs-client-provisioner` in the deployment YAMLs.
|
- To maintain backward compatibility with earlier deployment files, the naming of NFS Client Provisioner is retained as `nfs-client-provisioner` in the deployment YAMLs.
|
||||||
- One of the pending areas for development on this repository is to add automated e2e tests. If you would like to contribute, please raise an issue or reach us on the Kubernetes slack #sig-storage channel.
|
- One of the pending areas for development on this repository is to add automated e2e tests. If you would like to contribute, please raise an issue or reach us on the Kubernetes slack #sig-storage channel.
|
||||||
|
|
||||||
@@ -178,8 +178,7 @@ On OpenShift the service account used to bind volumes does not have the necessar
|
|||||||
$ NAMESPACE=`oc project -q`
|
$ NAMESPACE=`oc project -q`
|
||||||
$ sed -i'' "s/namespace:.*/namespace: $NAMESPACE/g" ./deploy/rbac.yaml
|
$ sed -i'' "s/namespace:.*/namespace: $NAMESPACE/g" ./deploy/rbac.yaml
|
||||||
$ oc create -f deploy/rbac.yaml
|
$ oc create -f deploy/rbac.yaml
|
||||||
$ oc create role use-scc-hostmount-anyuid --verb=use --resource=scc --resource-name=hostmount-anyuid -n $NAMESPACE
|
$ oc adm policy add-scc-to-user hostmount-anyuid system:serviceaccount:$NAMESPACE:nfs-client-provisioner
|
||||||
$ oc adm policy add-role-to-user use-scc-hostmount-anyuid system:serviceaccount:$NAMESPACE:nfs-client-provisioner
|
|
||||||
```
|
```
|
||||||
|
|
||||||
**Step 4: Configure the NFS subdir external provisioner**
|
**Step 4: Configure the NFS subdir external provisioner**
|
||||||
@@ -208,7 +207,7 @@ spec:
|
|||||||
serviceAccountName: nfs-client-provisioner
|
serviceAccountName: nfs-client-provisioner
|
||||||
containers:
|
containers:
|
||||||
- name: nfs-client-provisioner
|
- name: nfs-client-provisioner
|
||||||
image: gcr.io/k8s-staging-sig-storage/nfs-subdir-external-provisioner:v4.0.2
|
image: k8s.gcr.io/sig-storage/nfs-subdir-external-provisioner:v4.0.2
|
||||||
volumeMounts:
|
volumeMounts:
|
||||||
- name: nfs-client-root
|
- name: nfs-client-root
|
||||||
mountPath: /persistentvolumes
|
mountPath: /persistentvolumes
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ appVersion: 4.0.2
|
|||||||
description: nfs-subdir-external-provisioner is an automatic provisioner that used your *already configured* NFS server, automatically creating Persistent Volumes.
|
description: nfs-subdir-external-provisioner is an automatic provisioner that used your *already configured* NFS server, automatically creating Persistent Volumes.
|
||||||
name: nfs-subdir-external-provisioner
|
name: nfs-subdir-external-provisioner
|
||||||
home: https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner
|
home: https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner
|
||||||
version: 4.0.7
|
version: 4.0.11
|
||||||
kubeVersion: ">=1.9.0-0"
|
kubeVersion: ">=1.9.0-0"
|
||||||
sources:
|
sources:
|
||||||
- https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner
|
- https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner
|
||||||
|
|||||||
@@ -48,32 +48,38 @@ The command removes all the Kubernetes components associated with the chart and
|
|||||||
|
|
||||||
The following tables lists the configurable parameters of this chart and their default values.
|
The following tables lists the configurable parameters of this chart and their default values.
|
||||||
|
|
||||||
| Parameter | Description | Default |
|
| Parameter | Description | Default |
|
||||||
| ----------------------------------- | ----------------------------------------------------------- | ------------------------------------------------- |
|
| ----------------------------------- | ----------------------------------------------------------------------------------------------------- | -------------------------------------------------------- |
|
||||||
| `replicaCount` | Number of provisioner instances to deployed | `1` |
|
| `replicaCount` | Number of provisioner instances to deployed | `1` |
|
||||||
| `strategyType` | Specifies the strategy used to replace old Pods by new ones | `Recreate` |
|
| `strategyType` | Specifies the strategy used to replace old Pods by new ones | `Recreate` |
|
||||||
| `image.repository` | Provisioner image | `gcr.io/k8s-staging-sig-storage/nfs-subdir-external-provisioner` |
|
| `image.repository` | Provisioner image | `k8s.gcr.io/sig-storage/nfs-subdir-external-provisioner` |
|
||||||
| `image.tag` | Version of provisioner image | `v4.0.2` |
|
| `image.tag` | Version of provisioner image | `v4.0.2` |
|
||||||
| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
|
| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
|
||||||
| `storageClass.name` | Name of the storageClass | `nfs-client` |
|
| `imagePullSecrets` | Image pull secrets | `[]` |
|
||||||
| `storageClass.defaultClass` | Set as the default StorageClass | `false` |
|
| `storageClass.name` | Name of the storageClass | `nfs-client` |
|
||||||
| `storageClass.allowVolumeExpansion` | Allow expanding the volume | `true` |
|
| `storageClass.defaultClass` | Set as the default StorageClass | `false` |
|
||||||
| `storageClass.reclaimPolicy` | Method used to reclaim an obsoleted volume | `Delete` |
|
| `storageClass.allowVolumeExpansion` | Allow expanding the volume | `true` |
|
||||||
| `storageClass.provisionerName` | Name of the provisionerName | null |
|
| `storageClass.reclaimPolicy` | Method used to reclaim an obsoleted volume | `Delete` |
|
||||||
| `storageClass.archiveOnDelete` | Archive PVC when deleting | `true` |
|
| `storageClass.provisionerName` | Name of the provisionerName | null |
|
||||||
| `storageClass.onDelete` | Strategy on PVC deletion. Overrides `archiveOnDelete` when set to lowercase values `delete` or `retain` | null |
|
| `storageClass.archiveOnDelete` | Archive PVC when deleting | `true` |
|
||||||
| `storageClass.pathPattern` | Specifies a template for the directory name | null |
|
| `storageClass.onDelete` | Strategy on PVC deletion. Overrides archiveOnDelete when set to lowercase values 'delete' or 'retain' | null |
|
||||||
| `storageClass.accessModes` | Set access mode for PV | `ReadWriteOnce` |
|
| `storageClass.pathPattern` | Specifies a template for the directory name | null |
|
||||||
| `leaderElection.enabled` | Enables or disables leader election | `true` |
|
| `storageClass.accessModes` | Set access mode for PV | `ReadWriteOnce` |
|
||||||
| `nfs.server` | Hostname of the NFS server (required) | null (ip or hostname) |
|
| `storageClass.annotations` | Set additional annotations for the StorageClass | `{}` |
|
||||||
| `nfs.path` | Basepath of the mount point to be used | `/nfs-storage` |
|
| `leaderElection.enabled` | Enables or disables leader election | `true` |
|
||||||
| `nfs.mountOptions` | Mount options (e.g. 'nfsvers=3') | null |
|
| `nfs.server` | Hostname of the NFS server (required) | null (ip or hostname) |
|
||||||
| `resources` | Resources required (e.g. CPU, memory) | `{}` |
|
| `nfs.path` | Basepath of the mount point to be used | `/nfs-storage` |
|
||||||
| `rbac.create` | Use Role-based Access Control | `true` |
|
| `nfs.mountOptions` | Mount options (e.g. 'nfsvers=3') | null |
|
||||||
| `podSecurityPolicy.enabled` | Create & use Pod Security Policy resources | `false` |
|
| `nfs.volumeName` | Volume name used inside the pods | `nfs-subdir-external-provisioner-root` |
|
||||||
| `priorityClassName` | Set pod priorityClassName | null |
|
| `resources` | Resources required (e.g. CPU, memory) | `{}` |
|
||||||
| `serviceAccount.create` | Should we create a ServiceAccount | `true` |
|
| `rbac.create` | Use Role-based Access Control | `true` |
|
||||||
| `serviceAccount.name` | Name of the ServiceAccount to use | null |
|
| `podSecurityPolicy.enabled` | Create & use Pod Security Policy resources | `false` |
|
||||||
| `nodeSelector` | Node labels for pod assignment | `{}` |
|
| `podAnnotations` | Additional annotations for the Pods | `{}` |
|
||||||
| `affinity` | Affinity settings | `{}` |
|
| `priorityClassName` | Set pod priorityClassName | null |
|
||||||
| `tolerations` | List of node taints to tolerate | `[]` |
|
| `serviceAccount.create` | Should we create a ServiceAccount | `true` |
|
||||||
|
| `serviceAccount.name` | Name of the ServiceAccount to use | null |
|
||||||
|
| `serviceAccount.annotations` | Additional annotations for the ServiceAccount | `{}` |
|
||||||
|
| `nodeSelector` | Node labels for pod assignment | `{}` |
|
||||||
|
| `affinity` | Affinity settings | `{}` |
|
||||||
|
| `tolerations` | List of node taints to tolerate | `[]` |
|
||||||
|
| `labels` | Additional labels for any resource created | `{}` |
|
||||||
|
|||||||
@@ -60,3 +60,23 @@ Return the appropriate apiVersion for podSecurityPolicy.
|
|||||||
{{- print "extensions/v1beta1" -}}
|
{{- print "extensions/v1beta1" -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "nfs-subdir-external-provisioner.labels" -}}
|
||||||
|
chart: {{ template "nfs-subdir-external-provisioner.chart" . }}
|
||||||
|
heritage: {{ .Release.Service }}
|
||||||
|
{{ include "nfs-subdir-external-provisioner.selectorLabels" . }}
|
||||||
|
{{- with .Values.labels }}
|
||||||
|
{{- toYaml . | nindent 0 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "nfs-subdir-external-provisioner.selectorLabels" -}}
|
||||||
|
app: {{ template "nfs-subdir-external-provisioner.name" . }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
|
|||||||
@@ -3,12 +3,12 @@ kind: ClusterRole
|
|||||||
apiVersion: rbac.authorization.k8s.io/v1
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
app: {{ template "nfs-subdir-external-provisioner.name" . }}
|
{{- include "nfs-subdir-external-provisioner.labels" . | nindent 4 }}
|
||||||
chart: {{ template "nfs-subdir-external-provisioner.chart" . }}
|
|
||||||
heritage: {{ .Release.Service }}
|
|
||||||
release: {{ .Release.Name }}
|
|
||||||
name: {{ template "nfs-subdir-external-provisioner.fullname" . }}-runner
|
name: {{ template "nfs-subdir-external-provisioner.fullname" . }}-runner
|
||||||
rules:
|
rules:
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["nodes"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
- apiGroups: [""]
|
- apiGroups: [""]
|
||||||
resources: ["persistentvolumes"]
|
resources: ["persistentvolumes"]
|
||||||
verbs: ["get", "list", "watch", "create", "delete"]
|
verbs: ["get", "list", "watch", "create", "delete"]
|
||||||
|
|||||||
@@ -3,10 +3,7 @@ kind: ClusterRoleBinding
|
|||||||
apiVersion: rbac.authorization.k8s.io/v1
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
app: {{ template "nfs-subdir-external-provisioner.name" . }}
|
{{- include "nfs-subdir-external-provisioner.labels" . | nindent 4 }}
|
||||||
chart: {{ template "nfs-subdir-external-provisioner.chart" . }}
|
|
||||||
heritage: {{ .Release.Service }}
|
|
||||||
release: {{ .Release.Name }}
|
|
||||||
name: run-{{ template "nfs-subdir-external-provisioner.fullname" . }}
|
name: run-{{ template "nfs-subdir-external-provisioner.fullname" . }}
|
||||||
subjects:
|
subjects:
|
||||||
- kind: ServiceAccount
|
- kind: ServiceAccount
|
||||||
|
|||||||
@@ -3,27 +3,25 @@ kind: Deployment
|
|||||||
metadata:
|
metadata:
|
||||||
name: {{ template "nfs-subdir-external-provisioner.fullname" . }}
|
name: {{ template "nfs-subdir-external-provisioner.fullname" . }}
|
||||||
labels:
|
labels:
|
||||||
app: {{ template "nfs-subdir-external-provisioner.name" . }}
|
{{- include "nfs-subdir-external-provisioner.labels" . | nindent 4 }}
|
||||||
chart: {{ template "nfs-subdir-external-provisioner.chart" . }}
|
|
||||||
heritage: {{ .Release.Service }}
|
|
||||||
release: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
replicas: {{ .Values.replicaCount }}
|
replicas: {{ .Values.replicaCount }}
|
||||||
strategy:
|
strategy:
|
||||||
type: {{ .Values.strategyType }}
|
type: {{ .Values.strategyType }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
app: {{ template "nfs-subdir-external-provisioner.name" . }}
|
{{- include "nfs-subdir-external-provisioner.selectorLabels" . | nindent 6 }}
|
||||||
release: {{ .Release.Name }}
|
|
||||||
template:
|
template:
|
||||||
metadata:
|
metadata:
|
||||||
annotations:
|
annotations:
|
||||||
|
{{- with .Values.podAnnotations }}
|
||||||
|
{{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
{{- if and (.Values.tolerations) (semverCompare "<1.6-0" .Capabilities.KubeVersion.GitVersion) }}
|
{{- if and (.Values.tolerations) (semverCompare "<1.6-0" .Capabilities.KubeVersion.GitVersion) }}
|
||||||
scheduler.alpha.kubernetes.io/tolerations: '{{ toJson .Values.tolerations }}'
|
scheduler.alpha.kubernetes.io/tolerations: '{{ toJson .Values.tolerations }}'
|
||||||
{{- end }}
|
{{- end }}
|
||||||
labels:
|
labels:
|
||||||
app: {{ template "nfs-subdir-external-provisioner.name" . }}
|
{{- include "nfs-subdir-external-provisioner.selectorLabels" . | nindent 8 }}
|
||||||
release: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
serviceAccountName: {{ template "nfs-subdir-external-provisioner.serviceAccountName" . }}
|
serviceAccountName: {{ template "nfs-subdir-external-provisioner.serviceAccountName" . }}
|
||||||
{{- if .Values.nodeSelector }}
|
{{- if .Values.nodeSelector }}
|
||||||
@@ -37,16 +35,16 @@ spec:
|
|||||||
{{- if .Values.priorityClassName }}
|
{{- if .Values.priorityClassName }}
|
||||||
priorityClassName: {{ .Values.priorityClassName | quote }}
|
priorityClassName: {{ .Values.priorityClassName | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.imagePullSecrets }}
|
{{- with .Values.imagePullSecrets }}
|
||||||
imagePullSecrets:
|
imagePullSecrets:
|
||||||
{{ toYaml .Values.imagePullSecrets | indent 8 }}
|
{{- toYaml . | nindent 8 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
containers:
|
containers:
|
||||||
- name: {{ .Chart.Name }}
|
- name: {{ .Chart.Name }}
|
||||||
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
|
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
|
||||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||||
volumeMounts:
|
volumeMounts:
|
||||||
- name: nfs-subdir-external-provisioner-root
|
- name: {{ .Values.nfs.volumeName }}
|
||||||
mountPath: /persistentvolumes
|
mountPath: /persistentvolumes
|
||||||
env:
|
env:
|
||||||
- name: PROVISIONER_NAME
|
- name: PROVISIONER_NAME
|
||||||
@@ -64,7 +62,7 @@ spec:
|
|||||||
{{ toYaml . | indent 12 }}
|
{{ toYaml . | indent 12 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
volumes:
|
volumes:
|
||||||
- name: nfs-subdir-external-provisioner-root
|
- name: {{ .Values.nfs.volumeName }}
|
||||||
{{- if .Values.buildMode }}
|
{{- if .Values.buildMode }}
|
||||||
emptyDir: {}
|
emptyDir: {}
|
||||||
{{- else if .Values.nfs.mountOptions }}
|
{{- else if .Values.nfs.mountOptions }}
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ kind: PersistentVolume
|
|||||||
metadata:
|
metadata:
|
||||||
name: pv-{{ template "nfs-subdir-external-provisioner.fullname" . }}
|
name: pv-{{ template "nfs-subdir-external-provisioner.fullname" . }}
|
||||||
labels:
|
labels:
|
||||||
|
{{- include "nfs-subdir-external-provisioner.labels" . | nindent 4 }}
|
||||||
nfs-subdir-external-provisioner: {{ template "nfs-subdir-external-provisioner.fullname" . }}
|
nfs-subdir-external-provisioner: {{ template "nfs-subdir-external-provisioner.fullname" . }}
|
||||||
spec:
|
spec:
|
||||||
capacity:
|
capacity:
|
||||||
|
|||||||
@@ -3,6 +3,8 @@ kind: PersistentVolumeClaim
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
metadata:
|
metadata:
|
||||||
name: pvc-{{ template "nfs-subdir-external-provisioner.fullname" . }}
|
name: pvc-{{ template "nfs-subdir-external-provisioner.fullname" . }}
|
||||||
|
labels:
|
||||||
|
{{- include "nfs-subdir-external-provisioner.labels" . | nindent 4 }}
|
||||||
spec:
|
spec:
|
||||||
accessModes:
|
accessModes:
|
||||||
- {{ .Values.storageClass.accessModes }}
|
- {{ .Values.storageClass.accessModes }}
|
||||||
|
|||||||
@@ -4,10 +4,7 @@ kind: PodSecurityPolicy
|
|||||||
metadata:
|
metadata:
|
||||||
name: {{ template "nfs-subdir-external-provisioner.fullname" . }}
|
name: {{ template "nfs-subdir-external-provisioner.fullname" . }}
|
||||||
labels:
|
labels:
|
||||||
app: {{ template "nfs-subdir-external-provisioner.name" . }}
|
{{- include "nfs-subdir-external-provisioner.labels" . | nindent 4 }}
|
||||||
chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
|
||||||
heritage: {{ .Release.Service }}
|
|
||||||
release: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
privileged: false
|
privileged: false
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
|
|||||||
@@ -3,10 +3,7 @@ kind: Role
|
|||||||
apiVersion: rbac.authorization.k8s.io/v1
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
app: {{ template "nfs-subdir-external-provisioner.name" . }}
|
{{- include "nfs-subdir-external-provisioner.labels" . | nindent 4 }}
|
||||||
chart: {{ template "nfs-subdir-external-provisioner.chart" . }}
|
|
||||||
heritage: {{ .Release.Service }}
|
|
||||||
release: {{ .Release.Name }}
|
|
||||||
name: leader-locking-{{ template "nfs-subdir-external-provisioner.fullname" . }}
|
name: leader-locking-{{ template "nfs-subdir-external-provisioner.fullname" . }}
|
||||||
rules:
|
rules:
|
||||||
- apiGroups: [""]
|
- apiGroups: [""]
|
||||||
|
|||||||
@@ -3,10 +3,7 @@ kind: RoleBinding
|
|||||||
apiVersion: rbac.authorization.k8s.io/v1
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
app: {{ template "nfs-subdir-external-provisioner.name" . }}
|
{{- include "nfs-subdir-external-provisioner.labels" . | nindent 4 }}
|
||||||
chart: {{ template "nfs-subdir-external-provisioner.chart" . }}
|
|
||||||
heritage: {{ .Release.Service }}
|
|
||||||
release: {{ .Release.Name }}
|
|
||||||
name: leader-locking-{{ template "nfs-subdir-external-provisioner.fullname" . }}
|
name: leader-locking-{{ template "nfs-subdir-external-provisioner.fullname" . }}
|
||||||
subjects:
|
subjects:
|
||||||
- kind: ServiceAccount
|
- kind: ServiceAccount
|
||||||
|
|||||||
@@ -3,9 +3,10 @@ apiVersion: v1
|
|||||||
kind: ServiceAccount
|
kind: ServiceAccount
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
app: {{ template "nfs-subdir-external-provisioner.name" . }}
|
{{- include "nfs-subdir-external-provisioner.labels" . | nindent 4 }}
|
||||||
chart: {{ template "nfs-subdir-external-provisioner.chart" . }}
|
{{- with .Values.serviceAccount.annotations }}
|
||||||
heritage: {{ .Release.Service }}
|
annotations:
|
||||||
release: {{ .Release.Name }}
|
{{- toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
name: {{ template "nfs-subdir-external-provisioner.serviceAccountName" . }}
|
name: {{ template "nfs-subdir-external-provisioner.serviceAccountName" . }}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|||||||
@@ -3,15 +3,15 @@ apiVersion: storage.k8s.io/v1
|
|||||||
kind: StorageClass
|
kind: StorageClass
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
app: {{ template "nfs-subdir-external-provisioner.name" . }}
|
{{- include "nfs-subdir-external-provisioner.labels" . | nindent 4 }}
|
||||||
chart: {{ template "nfs-subdir-external-provisioner.chart" . }}
|
|
||||||
heritage: {{ .Release.Service }}
|
|
||||||
release: {{ .Release.Name }}
|
|
||||||
name: {{ .Values.storageClass.name }}
|
name: {{ .Values.storageClass.name }}
|
||||||
{{- if .Values.storageClass.defaultClass }}
|
|
||||||
annotations:
|
annotations:
|
||||||
|
{{- if .Values.storageClass.defaultClass }}
|
||||||
storageclass.kubernetes.io/is-default-class: "true"
|
storageclass.kubernetes.io/is-default-class: "true"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
{{- with .Values.storageClass.annotations }}
|
||||||
|
{{- toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
provisioner: {{ template "nfs-subdir-external-provisioner.provisionerName" . }}
|
provisioner: {{ template "nfs-subdir-external-provisioner.provisionerName" . }}
|
||||||
allowVolumeExpansion: {{ .Values.storageClass.allowVolumeExpansion }}
|
allowVolumeExpansion: {{ .Values.storageClass.allowVolumeExpansion }}
|
||||||
reclaimPolicy: {{ .Values.storageClass.reclaimPolicy }}
|
reclaimPolicy: {{ .Values.storageClass.reclaimPolicy }}
|
||||||
|
|||||||
@@ -2,14 +2,16 @@ replicaCount: 1
|
|||||||
strategyType: Recreate
|
strategyType: Recreate
|
||||||
|
|
||||||
image:
|
image:
|
||||||
repository: gcr.io/k8s-staging-sig-storage/nfs-subdir-external-provisioner
|
repository: k8s.gcr.io/sig-storage/nfs-subdir-external-provisioner
|
||||||
tag: v4.0.2
|
tag: v4.0.2
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
|
imagePullSecrets: []
|
||||||
|
|
||||||
nfs:
|
nfs:
|
||||||
server:
|
server:
|
||||||
path: /nfs-storage
|
path: /nfs-storage
|
||||||
mountOptions:
|
mountOptions:
|
||||||
|
volumeName: nfs-subdir-external-provisioner-root
|
||||||
|
|
||||||
# For creating the StorageClass automatically:
|
# For creating the StorageClass automatically:
|
||||||
storageClass:
|
storageClass:
|
||||||
@@ -47,6 +49,9 @@ storageClass:
|
|||||||
# Set access mode - ReadWriteOnce, ReadOnlyMany or ReadWriteMany
|
# Set access mode - ReadWriteOnce, ReadOnlyMany or ReadWriteMany
|
||||||
accessModes: ReadWriteOnce
|
accessModes: ReadWriteOnce
|
||||||
|
|
||||||
|
# Storage class annotations
|
||||||
|
annotations: {}
|
||||||
|
|
||||||
leaderElection:
|
leaderElection:
|
||||||
# When set to false leader election will be disabled
|
# When set to false leader election will be disabled
|
||||||
enabled: true
|
enabled: true
|
||||||
@@ -61,6 +66,9 @@ rbac:
|
|||||||
podSecurityPolicy:
|
podSecurityPolicy:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
|
||||||
|
# Deployment pod annotations
|
||||||
|
podAnnotations: {}
|
||||||
|
|
||||||
## Set pod priorityClassName
|
## Set pod priorityClassName
|
||||||
# priorityClassName: ""
|
# priorityClassName: ""
|
||||||
|
|
||||||
@@ -68,6 +76,9 @@ serviceAccount:
|
|||||||
# Specifies whether a ServiceAccount should be created
|
# Specifies whether a ServiceAccount should be created
|
||||||
create: true
|
create: true
|
||||||
|
|
||||||
|
# Annotations to add to the service account
|
||||||
|
annotations: {}
|
||||||
|
|
||||||
# The name of the ServiceAccount to use.
|
# The name of the ServiceAccount to use.
|
||||||
# If not set and create is true, a name is generated using the fullname template
|
# If not set and create is true, a name is generated using the fullname template
|
||||||
name:
|
name:
|
||||||
@@ -85,3 +96,6 @@ nodeSelector: {}
|
|||||||
tolerations: []
|
tolerations: []
|
||||||
|
|
||||||
affinity: {}
|
affinity: {}
|
||||||
|
|
||||||
|
# Additional labels for any resource created
|
||||||
|
labels: {}
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ spec:
|
|||||||
serviceAccountName: nfs-client-provisioner
|
serviceAccountName: nfs-client-provisioner
|
||||||
containers:
|
containers:
|
||||||
- name: nfs-client-provisioner
|
- name: nfs-client-provisioner
|
||||||
image: gcr.io/k8s-staging-sig-storage/nfs-subdir-external-provisioner:v4.0.2
|
image: k8s.gcr.io/sig-storage/nfs-subdir-external-provisioner:v4.0.2
|
||||||
volumeMounts:
|
volumeMounts:
|
||||||
- name: nfs-client-root
|
- name: nfs-client-root
|
||||||
mountPath: /persistentvolumes
|
mountPath: /persistentvolumes
|
||||||
|
|||||||
@@ -3,6 +3,9 @@ apiVersion: rbac.authorization.k8s.io/v1
|
|||||||
metadata:
|
metadata:
|
||||||
name: nfs-client-provisioner-runner
|
name: nfs-client-provisioner-runner
|
||||||
rules:
|
rules:
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["nodes"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
- apiGroups: [""]
|
- apiGroups: [""]
|
||||||
resources: ["persistentvolumes"]
|
resources: ["persistentvolumes"]
|
||||||
verbs: ["get", "list", "watch", "create", "delete"]
|
verbs: ["get", "list", "watch", "create", "delete"]
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ spec:
|
|||||||
serviceAccountName: nfs-client-provisioner
|
serviceAccountName: nfs-client-provisioner
|
||||||
containers:
|
containers:
|
||||||
- name: nfs-client-provisioner
|
- name: nfs-client-provisioner
|
||||||
image: gcr.io/k8s-staging-sig-storage/nfs-subdir-external-provisioner:v4.0.2
|
image: k8s.gcr.io/sig-storage/nfs-subdir-external-provisioner:v4.0.2
|
||||||
volumeMounts:
|
volumeMounts:
|
||||||
- name: nfs-client-root
|
- name: nfs-client-root
|
||||||
mountPath: /persistentvolumes
|
mountPath: /persistentvolumes
|
||||||
|
|||||||
@@ -10,6 +10,9 @@ apiVersion: rbac.authorization.k8s.io/v1
|
|||||||
metadata:
|
metadata:
|
||||||
name: nfs-client-provisioner-runner
|
name: nfs-client-provisioner-runner
|
||||||
rules:
|
rules:
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["nodes"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
- apiGroups: [""]
|
- apiGroups: [""]
|
||||||
resources: ["persistentvolumes"]
|
resources: ["persistentvolumes"]
|
||||||
verbs: ["get", "list", "watch", "create", "delete"]
|
verbs: ["get", "list", "watch", "create", "delete"]
|
||||||
|
|||||||
Reference in New Issue
Block a user