Skip to content

Commit 9aadfb8

Browse files
authored
Merge pull request #170 from andyzhangx/cutoff-v0.4.0
doc: cut off v0.4.0 beta release
2 parents 58f56b8 + e150e8c commit 9aadfb8

18 files changed

+1058
-0
lines changed

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ Status: Beta
1515
|v0.1.0 |mcr.microsoft.com/k8s/csi/azuredisk-csi:v0.1.0 | yes | no |
1616
|v0.2.0 |mcr.microsoft.com/k8s/csi/azuredisk-csi:v0.2.0 | no | yes |
1717
|v0.3.0 |mcr.microsoft.com/k8s/csi/azuredisk-csi:v0.3.0 | no | yes |
18+
|v0.4.0 |mcr.microsoft.com/k8s/csi/azuredisk-csi:v0.4.0 | no | yes |
1819
|master branch |mcr.microsoft.com/k8s/csi/azuredisk-csi:latest | no | yes |
1920

2021
### Kubernetes Compatibility
@@ -23,6 +24,7 @@ Status: Beta
2324
| v0.1.0 | yes | yes |
2425
| v0.2.0 | no | yes |
2526
| v0.3.0 | no | yes |
27+
| v0.4.0 | no | yes |
2628
| master branch | no | yes |
2729

2830
### Driver parameters
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
apiVersion: v1
2+
appVersion: 0.4.0
3+
description: Azure disk Container Storage Interface (CSI) Storage Plugin
4+
name: azuredisk-csi-driver
5+
version: 0.4.0
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
The Azure Disk CSI Driver is getting deployed to your cluster.
2+
3+
To check Azure Disk CSI Driver pods status, please run:
4+
5+
kubectl --namespace={{ .Release.Namespace }} get pods --selector="release={{ .Release.Name }}" --watch
Lines changed: 11 additions & 0 deletions
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 "azuredisk.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 -}}
Lines changed: 36 additions & 0 deletions
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 "azuredisk.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: []
Lines changed: 38 additions & 0 deletions
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 "azuredisk.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: []
Lines changed: 137 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,137 @@
1+
kind: Deployment
2+
apiVersion: apps/v1
3+
metadata:
4+
name: csi-azuredisk-controller
5+
namespace: {{ .Release.Namespace }}
6+
{{ include "azuredisk.labels" . | indent 2 }}
7+
spec:
8+
replicas: 1
9+
selector:
10+
matchLabels:
11+
app: csi-azuredisk-controller
12+
template:
13+
metadata:
14+
{{ include "azuredisk.labels" . | indent 6 }}
15+
app: csi-azuredisk-controller
16+
spec:
17+
serviceAccountName: csi-azuredisk-controller-sa
18+
nodeSelector:
19+
beta.kubernetes.io/os: linux
20+
priorityClassName: system-cluster-critical
21+
containers:
22+
- name: csi-provisioner
23+
image: quay.io/k8scsi/csi-provisioner:v1.0.1
24+
args:
25+
- "--provisioner=disk.csi.azure.com"
26+
- "--csi-address=$(ADDRESS)"
27+
- "--connection-timeout=15s"
28+
env:
29+
- name: ADDRESS
30+
value: /csi/csi.sock
31+
imagePullPolicy: Always
32+
volumeMounts:
33+
- mountPath: /csi
34+
name: socket-dir
35+
- name: csi-attacher
36+
image: quay.io/k8scsi/csi-attacher:v1.0.1
37+
args:
38+
- --v=5
39+
- --csi-address=$(ADDRESS)
40+
- --timeout=120s
41+
env:
42+
- name: ADDRESS
43+
value: /csi/csi.sock
44+
imagePullPolicy: Always
45+
volumeMounts:
46+
- mountPath: /csi
47+
name: socket-dir
48+
- name: cluster-driver-registrar
49+
image: quay.io/k8scsi/csi-cluster-driver-registrar:v1.0.1
50+
args:
51+
- --csi-address=$(ADDRESS)
52+
- --driver-requires-attachment=true
53+
- --v=5
54+
env:
55+
- name: ADDRESS
56+
value: /csi/csi.sock
57+
volumeMounts:
58+
- name: socket-dir
59+
mountPath: /csi
60+
- name: csi-snapshotter
61+
image: quay.io/k8scsi/csi-snapshotter:v1.1.0
62+
args:
63+
- --csi-address=$(ADDRESS)
64+
env:
65+
- name: ADDRESS
66+
value: /csi/csi.sock
67+
volumeMounts:
68+
- name: socket-dir
69+
mountPath: /csi
70+
- name: liveness-probe
71+
image: quay.io/k8scsi/livenessprobe:v1.1.0
72+
args:
73+
- --csi-address=/csi/csi.sock
74+
- --connection-timeout=3s
75+
- --health-port=9602
76+
volumeMounts:
77+
- name: socket-dir
78+
mountPath: /csi
79+
- name: azuredisk
80+
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
81+
args:
82+
- "--v=5"
83+
- "--endpoint=$(CSI_ENDPOINT)"
84+
- "--nodeid=$(KUBE_NODE_NAME)"
85+
ports:
86+
- containerPort: 9602
87+
name: healthz
88+
protocol: TCP
89+
- containerPort: 10252
90+
name: metrics
91+
protocol: TCP
92+
livenessProbe:
93+
failureThreshold: 5
94+
httpGet:
95+
path: /healthz
96+
port: healthz
97+
initialDelaySeconds: 30
98+
timeoutSeconds: 10
99+
periodSeconds: 30
100+
env:
101+
- name: AZURE_CREDENTIAL_FILE
102+
value: "/etc/kubernetes/azure.json"
103+
- name: CSI_ENDPOINT
104+
value: unix:///csi/csi.sock
105+
imagePullPolicy: {{ .Values.image.pullPolicy }}
106+
volumeMounts:
107+
- mountPath: /csi
108+
name: socket-dir
109+
- mountPath: /etc/kubernetes/
110+
name: azure-cred
111+
- mountPath: /var/lib/waagent/ManagedIdentity-Settings
112+
readOnly: true
113+
name: msi
114+
volumes:
115+
- name: socket-dir
116+
emptyDir: {}
117+
- name: azure-cred
118+
hostPath:
119+
path: /etc/kubernetes/
120+
type: Directory
121+
- name: msi
122+
hostPath:
123+
path: /var/lib/waagent/ManagedIdentity-Settings
124+
---
125+
apiVersion: v1
126+
kind: Service
127+
metadata:
128+
name: csi-azuredisk-controller
129+
namespace: {{ .Release.Namespace }}
130+
{{ include "azuredisk.labels" . | indent 2 }}
131+
spec:
132+
selector:
133+
app: csi-azuredisk-controller
134+
ports:
135+
- port: 10252
136+
targetPort: 10252
137+
type: ClusterIP
Lines changed: 130 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,130 @@
1+
kind: DaemonSet
2+
apiVersion: apps/v1
3+
metadata:
4+
name: csi-azuredisk-node
5+
namespace: {{ .Release.Namespace }}
6+
{{ include "azuredisk.labels" . | indent 2 }}
7+
spec:
8+
selector:
9+
matchLabels:
10+
app: csi-azuredisk-node
11+
template:
12+
metadata:
13+
{{ include "azuredisk.labels" . | indent 6 }}
14+
app: csi-azuredisk-node
15+
spec:
16+
hostNetwork: true
17+
nodeSelector:
18+
beta.kubernetes.io/os: linux
19+
priorityClassName: system-node-critical
20+
containers:
21+
- name: liveness-probe
22+
imagePullPolicy: Always
23+
volumeMounts:
24+
- mountPath: /csi
25+
name: socket-dir
26+
image: quay.io/k8scsi/livenessprobe:v1.0.2
27+
args:
28+
- --csi-address=/csi/csi.sock
29+
- --connection-timeout=3s
30+
- --health-port=9602
31+
- name: node-driver-registrar
32+
image: quay.io/k8scsi/csi-node-driver-registrar:v1.1.0
33+
args:
34+
- --csi-address=$(ADDRESS)
35+
- --kubelet-registration-path=$(DRIVER_REG_SOCK_PATH)
36+
- --v=5
37+
lifecycle:
38+
preStop:
39+
exec:
40+
command: ["/bin/sh", "-c", "rm -rf /registration/disk.csi.azure.com-reg.sock /csi/csi.sock"]
41+
env:
42+
- name: ADDRESS
43+
value: /csi/csi.sock
44+
- name: DRIVER_REG_SOCK_PATH
45+
value: /var/lib/kubelet/plugins/disk.csi.azure.com/csi.sock
46+
volumeMounts:
47+
- name: socket-dir
48+
mountPath: /csi
49+
- name: registration-dir
50+
mountPath: /registration
51+
- name: azuredisk
52+
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
53+
args:
54+
- "--v=5"
55+
- "--endpoint=$(CSI_ENDPOINT)"
56+
- "--nodeid=$(KUBE_NODE_NAME)"
57+
ports:
58+
- containerPort: 9602
59+
name: healthz
60+
protocol: TCP
61+
livenessProbe:
62+
failureThreshold: 5
63+
httpGet:
64+
path: /healthz
65+
port: healthz
66+
initialDelaySeconds: 30
67+
timeoutSeconds: 10
68+
periodSeconds: 30
69+
env:
70+
- name: AZURE_CREDENTIAL_FILE
71+
value: "/etc/kubernetes/azure.json"
72+
- name: CSI_ENDPOINT
73+
value: unix:///csi/csi.sock
74+
- name: KUBE_NODE_NAME
75+
valueFrom:
76+
fieldRef:
77+
apiVersion: v1
78+
fieldPath: spec.nodeName
79+
imagePullPolicy: {{ .Values.image.pullPolicy }}
80+
securityContext:
81+
privileged: true
82+
volumeMounts:
83+
- mountPath: /csi
84+
name: socket-dir
85+
- mountPath: /var/lib/kubelet/
86+
mountPropagation: Bidirectional
87+
name: mountpoint-dir
88+
- mountPath: /etc/kubernetes/
89+
name: azure-cred
90+
- mountPath: /var/lib/waagent/ManagedIdentity-Settings
91+
readOnly: true
92+
name: msi
93+
- mountPath: /devhost #use /devhost to avoid conflict
94+
name: device-dir
95+
- mountPath: /sys/bus/scsi/devices
96+
name: sys-devices-dir
97+
- mountPath: /sys/class/scsi_host/
98+
name: scsi-host-dir
99+
volumes:
100+
- hostPath:
101+
path: /var/lib/kubelet/plugins/disk.csi.azure.com
102+
type: DirectoryOrCreate
103+
name: socket-dir
104+
- hostPath:
105+
path: /var/lib/kubelet/
106+
type: DirectoryOrCreate
107+
name: mountpoint-dir
108+
- hostPath:
109+
path: /var/lib/kubelet/plugins_registry/
110+
type: DirectoryOrCreate
111+
name: registration-dir
112+
- hostPath:
113+
path: /etc/kubernetes/
114+
type: Directory
115+
name: azure-cred
116+
- hostPath:
117+
path: /var/lib/waagent/ManagedIdentity-Settings
118+
name: msi
119+
- hostPath:
120+
path: /dev
121+
type: Directory
122+
name: device-dir
123+
- hostPath:
124+
path: /sys/bus/scsi/devices
125+
type: Directory
126+
name: sys-devices-dir
127+
- hostPath:
128+
path: /sys/class/scsi_host/
129+
type: Directory
130+
name: scsi-host-dir

0 commit comments

Comments
 (0)