Skip to content

Commit e9b2139

Browse files
authored
Merge pull request #162 from kubernetes-sigs/cut-v0.4.0
doc: cut off v0.4.0 release
2 parents 343e444 + d75f0ea commit e9b2139

23 files changed

+1261
-15
lines changed

README.md

+2-5
Original file line numberDiff line numberDiff line change
@@ -6,22 +6,19 @@
66
### About
77
This driver allows Kubernetes to use [azure file](https://docs.microsoft.com/en-us/azure/storage/files/storage-files-introduction) volume, csi plugin name: `file.csi.azure.com`
88

9-
### Project Status
10-
Status: Beta
11-
129
### Container Images & CSI Compatibility:
1310
|Azure File CSI Driver Version | Image | v1.0.0 |
1411
|-------------------------------|----------------------------------------------------|--------|
1512
|master branch |mcr.microsoft.com/k8s/csi/azurefile-csi:latest | yes |
13+
|v0.4.0 |mcr.microsoft.com/k8s/csi/azurefile-csi:v0.4.0 | yes |
1614
|v0.3.0 |mcr.microsoft.com/k8s/csi/azurefile-csi:v0.3.0 | yes |
17-
|v0.2.0 |mcr.microsoft.com/k8s/csi/azurefile-csi:v0.2.0 | yes |
1815

1916
### Kubernetes Compatibility
2017
| Azure File CSI Driver\Kubernetes Version | 1.14+ |
2118
|------------------------------------------|-------|
2219
| master branch | yes |
20+
| v0.4.0 | yes |
2321
| v0.3.0 | yes |
24-
| v0.2.0 | yes |
2522

2623
### Driver parameters
2724
Please refer to [`file.csi.azure.com` driver parameters](./docs/driver-parameters.md)
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
apiVersion: v1
22
appVersion: latest
3-
description: Azure file Container Storage Interface (CSI) Storage Plugin
3+
description: Azure File Container Storage Interface (CSI) Storage Plugin
44
name: azurefile-csi-driver
55
version: latest

charts/latest/azurefile-csi-driver/templates/rbac-csi-azurefile-controller.yaml

+9-3
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,9 @@ rules:
6464
- apiGroups: ["storage.k8s.io"]
6565
resources: ["volumeattachments"]
6666
verbs: ["get", "list", "watch", "update"]
67-
67+
- apiGroups: ["coordination.k8s.io"]
68+
resources: ["leases"]
69+
verbs: ["get", "list", "watch", "create", "update", "patch"]
6870
---
6971

7072
kind: ClusterRoleBinding
@@ -96,7 +98,9 @@ rules:
9698
- apiGroups: ["csi.storage.k8s.io"]
9799
resources: ["csidrivers"]
98100
verbs: ["create", "delete"]
99-
101+
- apiGroups: ["coordination.k8s.io"]
102+
resources: ["leases"]
103+
verbs: ["get", "list", "watch", "create", "update", "patch"]
100104
---
101105

102106
kind: ClusterRoleBinding
@@ -149,7 +153,9 @@ rules:
149153
- apiGroups: ["apiextensions.k8s.io"]
150154
resources: ["customresourcedefinitions"]
151155
verbs: ["create", "list", "watch", "delete"]
152-
156+
- apiGroups: ["coordination.k8s.io"]
157+
resources: ["leases"]
158+
verbs: ["get", "list", "watch", "create", "update", "patch"]
153159
---
154160

155161
kind: ClusterRoleBinding
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
apiVersion: v1
22
appVersion: 0.2.0
3-
description: Azure file Container Storage Interface (CSI) Storage Plugin
3+
description: Azure File Container Storage Interface (CSI) Storage Plugin
44
name: azurefile-csi-driver
55
version: 0.2.0
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
apiVersion: v1
22
appVersion: 0.3.0
3-
description: Azure file Container Storage Interface (CSI) Storage Plugin
3+
description: Azure File Container Storage Interface (CSI) Storage Plugin
44
name: azurefile-csi-driver
55
version: 0.3.0
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
apiVersion: v1
2+
appVersion: v0.4.0
3+
description: Azure File Container Storage Interface (CSI) Storage Plugin
4+
name: azurefile-csi-driver
5+
version: v0.4.0
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
The Azure File CSI Driver is getting deployed to your cluster.
2+
3+
To check Azure File CSI Driver pods status, please run:
4+
5+
kubectl --namespace={{ .Release.Namespace }} get pods --selector="release={{ .Release.Name }}" --watch
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
{{/* vim: set filetype=mustache: */}}
2+
3+
{{/* labels for helm resources */}}
4+
{{- define "azurefile.labels" -}}
5+
labels:
6+
heritage: "{{ .Release.Service }}"
7+
release: "{{ .Release.Name }}"
8+
revision: "{{ .Release.Revision }}"
9+
chart: "{{ .Chart.Name }}"
10+
chartVersion: "{{ .Chart.Version }}"
11+
{{- end -}}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
apiVersion: apiextensions.k8s.io/v1beta1
2+
kind: CustomResourceDefinition
3+
metadata:
4+
creationTimestamp: null
5+
name: csidrivers.csi.storage.k8s.io
6+
{{ include "azurefile.labels" . | indent 2 }}
7+
spec:
8+
group: csi.storage.k8s.io
9+
names:
10+
kind: CSIDriver
11+
plural: csidrivers
12+
scope: Cluster
13+
validation:
14+
openAPIV3Schema:
15+
properties:
16+
spec:
17+
description: Specification of the CSI Driver.
18+
properties:
19+
attachRequired:
20+
description:
21+
Indicates this CSI volume driver requires an attach operation,
22+
and that Kubernetes should call attach and wait for any attach operation
23+
to complete before proceeding to mount.
24+
type: boolean
25+
podInfoOnMountVersion:
26+
description:
27+
Indicates this CSI volume driver requires additional pod
28+
information (like podName, podUID, etc.) during mount operations.
29+
type: string
30+
version: v1alpha1
31+
status:
32+
acceptedNames:
33+
kind: ""
34+
plural: ""
35+
conditions: []
36+
storedVersions: []
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
apiVersion: apiextensions.k8s.io/v1beta1
2+
kind: CustomResourceDefinition
3+
metadata:
4+
creationTimestamp: null
5+
name: csinodeinfos.csi.storage.k8s.io
6+
{{ include "azurefile.labels" . | indent 2 }}
7+
spec:
8+
group: csi.storage.k8s.io
9+
names:
10+
kind: CSINodeInfo
11+
plural: csinodeinfos
12+
scope: Cluster
13+
validation:
14+
openAPIV3Schema:
15+
properties:
16+
csiDrivers:
17+
description: List of CSI drivers running on the node and their properties.
18+
items:
19+
properties:
20+
driver:
21+
description: The CSI driver that this object refers to.
22+
type: string
23+
nodeID:
24+
description: The node from the driver point of view.
25+
type: string
26+
topologyKeys:
27+
description: List of keys supported by the driver.
28+
items:
29+
type: string
30+
type: array
31+
type: array
32+
version: v1alpha1
33+
status:
34+
acceptedNames:
35+
kind: ""
36+
plural: ""
37+
conditions: []
38+
storedVersions: []
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,187 @@
1+
kind: Deployment
2+
apiVersion: apps/v1
3+
metadata:
4+
name: csi-azurefile-controller
5+
namespace: {{ .Release.Namespace }}
6+
{{ include "azurefile.labels" . | indent 2 }}
7+
spec:
8+
replicas: {{ .Values.controller.replicas }}
9+
selector:
10+
matchLabels:
11+
app: csi-azurefile-controller
12+
template:
13+
metadata:
14+
{{ include "azurefile.labels" . | indent 6 }}
15+
app: csi-azurefile-controller
16+
spec:
17+
serviceAccountName: csi-azurefile-controller-sa
18+
nodeSelector:
19+
beta.kubernetes.io/os: linux
20+
priorityClassName: system-cluster-critical
21+
containers:
22+
- name: csi-provisioner
23+
image: "{{ .Values.image.csiProvisioner.repository }}:{{ .Values.image.csiProvisioner.tag }}"
24+
args:
25+
- "-v=5"
26+
- "--provisioner=file.csi.azure.com"
27+
- "--csi-address=$(ADDRESS)"
28+
- "--connection-timeout=15s"
29+
- "--enable-leader-election"
30+
- "--leader-election-type=leases"
31+
env:
32+
- name: ADDRESS
33+
value: /csi/csi.sock
34+
imagePullPolicy: Always
35+
volumeMounts:
36+
- mountPath: /csi
37+
name: socket-dir
38+
resources:
39+
limits:
40+
cpu: 200m
41+
memory: 200Mi
42+
requests:
43+
cpu: 10m
44+
memory: 20Mi
45+
- name: csi-attacher
46+
image: "{{ .Values.image.csiAttacher.repository }}:{{ .Values.image.csiAttacher.tag }}"
47+
args:
48+
- "-v=5"
49+
- "-csi-address=$(ADDRESS)"
50+
- "-timeout=120s"
51+
- "-leader-election"
52+
- "-leader-election-type=leases"
53+
env:
54+
- name: ADDRESS
55+
value: /csi/csi.sock
56+
imagePullPolicy: Always
57+
volumeMounts:
58+
- mountPath: /csi
59+
name: socket-dir
60+
resources:
61+
limits:
62+
cpu: 200m
63+
memory: 200Mi
64+
requests:
65+
cpu: 10m
66+
memory: 20Mi
67+
- name: cluster-driver-registrar
68+
image: "{{ .Values.image.clusterDriverRegistrar.repository }}:{{ .Values.image.clusterDriverRegistrar.tag }}"
69+
args:
70+
- --csi-address=$(ADDRESS)
71+
- --driver-requires-attachment=true
72+
- --v=5
73+
env:
74+
- name: ADDRESS
75+
value: /csi/csi.sock
76+
volumeMounts:
77+
- name: socket-dir
78+
mountPath: /csi
79+
resources:
80+
limits:
81+
cpu: 200m
82+
memory: 200Mi
83+
requests:
84+
cpu: 10m
85+
memory: 20Mi
86+
- name: csi-snapshotter
87+
image: "{{ .Values.image.csiSnapshotter.repository }}:{{ .Values.image.csiSnapshotter.tag }}"
88+
args:
89+
- "-v=5"
90+
- "-csi-address=$(ADDRESS)"
91+
- "-leader-election"
92+
env:
93+
- name: ADDRESS
94+
value: /csi/csi.sock
95+
volumeMounts:
96+
- name: socket-dir
97+
mountPath: /csi
98+
resources:
99+
limits:
100+
cpu: 200m
101+
memory: 200Mi
102+
requests:
103+
cpu: 10m
104+
memory: 20Mi
105+
- name: liveness-probe
106+
image: "{{ .Values.image.livenessProbe.repository }}:{{ .Values.image.livenessProbe.tag }}"
107+
args:
108+
- --csi-address=/csi/csi.sock
109+
- --connection-timeout=3s
110+
- --health-port=9702
111+
- --v=5
112+
volumeMounts:
113+
- name: socket-dir
114+
mountPath: /csi
115+
resources:
116+
limits:
117+
cpu: 200m
118+
memory: 200Mi
119+
requests:
120+
cpu: 10m
121+
memory: 20Mi
122+
- name: azurefile
123+
image: "{{ .Values.image.azurefile.repository }}:{{ .Values.image.azurefile.tag }}"
124+
args:
125+
- "--v=5"
126+
- "--endpoint=$(CSI_ENDPOINT)"
127+
- "--nodeid=$(KUBE_NODE_NAME)"
128+
ports:
129+
- containerPort: 9702
130+
name: healthz
131+
protocol: TCP
132+
- containerPort: 10252
133+
name: metrics
134+
protocol: TCP
135+
livenessProbe:
136+
failureThreshold: 5
137+
httpGet:
138+
path: /healthz
139+
port: healthz
140+
initialDelaySeconds: 30
141+
timeoutSeconds: 10
142+
periodSeconds: 30
143+
env:
144+
- name: AZURE_CREDENTIAL_FILE
145+
value: "/etc/kubernetes/azure.json"
146+
- name: CSI_ENDPOINT
147+
value: unix:///csi/csi.sock
148+
imagePullPolicy: {{ .Values.image.pullPolicy }}
149+
volumeMounts:
150+
- mountPath: /csi
151+
name: socket-dir
152+
- mountPath: /etc/kubernetes/
153+
name: azure-cred
154+
- mountPath: /var/lib/waagent/ManagedIdentity-Settings
155+
readOnly: true
156+
name: msi
157+
resources:
158+
limits:
159+
cpu: 2
160+
memory: 2Gi
161+
requests:
162+
cpu: 10m
163+
memory: 20Mi
164+
volumes:
165+
- name: socket-dir
166+
emptyDir: {}
167+
- name: azure-cred
168+
hostPath:
169+
path: /etc/kubernetes/
170+
type: Directory
171+
- name: msi
172+
hostPath:
173+
path: /var/lib/waagent/ManagedIdentity-Settings
174+
---
175+
apiVersion: v1
176+
kind: Service
177+
metadata:
178+
name: csi-azurefile-controller
179+
namespace: {{ .Release.Namespace }}
180+
{{ include "azurefile.labels" . | indent 2 }}
181+
spec:
182+
selector:
183+
app: csi-azurefile-controller
184+
ports:
185+
- port: 10252
186+
targetPort: 10252
187+
type: ClusterIP

0 commit comments

Comments
 (0)