Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DO NOT MERGE : csi-v3.0.0-beta1 #134

Closed
wants to merge 2 commits into from
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 3 additions & 4 deletions charts/nutanix-csi-storage/Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
apiVersion: v1
name: nutanix-csi-storage
version: 2.6.6
version: 3.0.0-rc6
kubeVersion: ">= 1.20.0-0"
description: Nutanix Container Storage Interface (CSI) Driver
home: https://github.com/nutanix/helm
maintainers:
- name: nutanix-cloud-native-bot
email: [email protected]
icon: https://avatars2.githubusercontent.com/u/6165865?s=200&v=4
appVersion: "2.6.6"
appVersion: "3.0.0-rc6"
keywords:
- Nutanix
- Storage
Expand All @@ -23,8 +23,7 @@ annotations:
artifacthub.io/displayName: "Nutanix CSI Storage"
artifacthub.io/containsSecurityUpdates: "true"
artifacthub.io/changes: |
- Update Nutanix CSI driver to v2.6.6
- Update CSI Sidecar version
- Update Nutanix CSI Driver to 3.0.0
artifacthub.io/links: |
- name: Nutanix CSI Driver documentation
url: https://portal.nutanix.com/page/documents/details?targetId=CSI-Volume-Driver-v2_6:CSI-Volume-Driver-v2_6
Expand Down
2 changes: 1 addition & 1 deletion charts/nutanix-csi-storage/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ https://portal.nutanix.com/page/documents/details?targetId=CSI-Volume-Driver-v2_

## Features list

- Nutanix CSI Driver v2.6.6
- Nutanix CSI Driver v3.0.0
- Nutanix Volumes support
- Nutanix Files support
- Volume clone
Expand Down
3 changes: 2 additions & 1 deletion charts/nutanix-csi-storage/templates/NOTES.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
Driver name: {{ include "nutanix-csi-storage.drivername" . }}

Nutanix CSI provider was deployed in namespace {{ .Release.Namespace }}
Nutanix CSI provider was deployed in namespace {{ .Release.Namespace }}. Check it's status by running:
kubectl -n {{ .Release.Namespace }} get pods | grep 'nutanix-csi'
4 changes: 2 additions & 2 deletions charts/nutanix-csi-storage/templates/csi-driver.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,5 @@ kind: CSIDriver
metadata:
name: {{ include "nutanix-csi-storage.drivername" . }}
spec:
attachRequired: false
podInfoOnMount: true
attachRequired: true
podInfoOnMount: true
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ spec:
app: nutanix-csi-controller
template:
metadata:
annotations:
kubectl.kubernetes.io/default-container: nutanix-csi-plugin
labels:
app: nutanix-csi-controller
spec:
Expand All @@ -43,19 +45,46 @@ spec:
imagePullPolicy: {{ .Values.imagePullPolicy }}
args:
- --csi-address=$(ADDRESS)
- --timeout=60s
- --timeout=300s
- --worker-threads=16
# This adds PV/PVC metadata to create volume requests
- --extra-create-metadata=true
- --default-fstype=ext4
# This is used to collect CSI operation metrics
- --http-endpoint=:9809
- --feature-gates=Topology=true
- --leader-election=true
- --v=2
env:
- name: ADDRESS
value: /var/lib/csi/sockets/pluginproxy/csi.sock
resources:
limits:
cpu: 100m
memory: 200Mi
requests:
cpu: 100m
memory: 200Mi
volumeMounts:
- name: socket-dir
mountPath: /var/lib/csi/sockets/pluginproxy/
- name: csi-attacher
image: {{ .Values.sidecars.attacher.image }}
imagePullPolicy: {{ .Values.imagePullPolicy }}
args:
- --csi-address=$(ADDRESS)
- --timeout=300s
- --worker-threads=16
- --http-endpoint=:9810
- --v=2
- --leader-election=true
env:
- name: ADDRESS
value: /var/lib/csi/sockets/pluginproxy/csi.sock
resources:
limits:
cpu: 100m
memory: 200Mi
requests:
cpu: 100m
memory: 200Mi
Expand All @@ -68,21 +97,19 @@ spec:
args:
- --v=2
- --csi-address=$(ADDRESS)
- --timeout=60s
- --timeout=300s
- --leader-election=true
# NTNX CSI dirver supports online volume expansion.
- --handle-volume-inuse-error=false
- --http-endpoint=:9810
- --http-endpoint=:9811
env:
- name: ADDRESS
value: /var/lib/csi/sockets/pluginproxy/csi.sock
resources:
requests:
cpu: 5m
memory: 30Mi
volumeMounts:
- name: socket-dir
mountPath: /var/lib/csi/sockets/pluginproxy/
# Checks whether to deploy snapshotter sidecar.
{{- if eq .Values.sidecars.snapshotter.deploy true }}
- name: csi-snapshotter
{{- if .Capabilities.APIVersions.Has "snapshot.storage.k8s.io/v1" }}
image: {{ .Values.sidecars.snapshotter.image }}
Expand All @@ -95,6 +122,7 @@ spec:
- --leader-election=true
- --logtostderr=true
- --timeout=300s
- --http-endpoint=:9812
env:
- name: ADDRESS
value: /csi/csi.sock
Expand All @@ -105,6 +133,7 @@ spec:
volumeMounts:
- name: socket-dir
mountPath: /csi
{{- end }}
- name: nutanix-csi-plugin
image: {{ .Values.controller.image }}
imagePullPolicy: {{ .Values.imagePullPolicy }}
Expand All @@ -115,23 +144,36 @@ spec:
- --endpoint=$(CSI_ENDPOINT)
- --nodeid=$(NODE_ID)
- --drivername={{ include "nutanix-csi-storage.drivername" . }}
- --use-pc=true
env:
- name: CSI_ENDPOINT
value: unix:///var/lib/csi/sockets/pluginproxy/csi.sock
- name: NODE_ID
valueFrom:
fieldRef:
fieldPath: spec.nodeName
- name: CSI_SECRET_DIR
value: {{ .Values.csiSecretDir }}
- name: CSI_CATEGORY_CONFIGMAP_NAME
value: {{ .Values.csiCategoryConfigmapName }}
- name: CSI_CATEGORY_CONFIGMAP_NAMESPACE
value: {{ .Values.csiCategoryConfigmapNamespace }}
resources:
limits:
cpu: {{ .Values.controller.cpu }}
memory: {{ .Values.controller.memory }}
requests:
cpu: 100m
memory: 200Mi
cpu: {{ .Values.controller.cpu }}
memory: {{ .Values.controller.memory }}
volumeMounts:
- mountPath: /var/lib/csi/sockets/pluginproxy/
name: socket-dir
# This is needed for static NFS volume feature.
- mountPath: /host
name: root-dir
- mountPath: {{ .Values.csiSecretDir }}
name: pc-secret
readOnly: true
ports:
- containerPort: 9807
name: http-endpoint
Expand All @@ -140,10 +182,10 @@ spec:
httpGet:
path: /healthz
port: http-endpoint
initialDelaySeconds: 10
timeoutSeconds: 3
periodSeconds: 2
failureThreshold: 3
initialDelaySeconds: {{ .Values.liveness.controller.initialDelaySeconds }}
timeoutSeconds: {{ .Values.liveness.controller.timeoutSeconds }}
periodSeconds: {{ .Values.liveness.controller.periodSeconds }}
failureThreshold: {{ .Values.liveness.controller.failureThreshold }}
- name: liveness-probe
resources:
requests:
Expand All @@ -157,6 +199,21 @@ spec:
args:
- --csi-address=/csi/csi.sock
- --http-endpoint=:9807
- args:
- "--v=5"
- "--csi-address=$(ADDRESS)"
- "--leader-election=false"
- "--http-endpoint=:9813"
- "--monitor-interval=1m0s"
env:
- name: ADDRESS
value: unix:///var/lib/csi/sockets/pluginproxy/csi.sock
image: {{ .Values.sidecars.healthmonitor.image }}
imagePullPolicy: {{ .Values.imagePullPolicy }}
name: csi-external-health-monitor-controller
volumeMounts:
- mountPath: /var/lib/csi/sockets/pluginproxy/
name: socket-dir
priorityClassName: system-cluster-critical
{{- with (.Values.controller.nodeSelector | default .Values.nodeSelector) }}
nodeSelector:
Expand All @@ -173,3 +230,6 @@ spec:
path: /
type: Directory
name: root-dir
- name: pc-secret
secret:
secretName: {{ .Values.pcSecretName }}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: ntnx-init-configmap
namespace: {{ .Release.Namespace }}
data:
supportedPCVersions: {{ .Values.supportedPCVersions }}
kubernetesClusterDeploymentType: {{ .Values.kubernetesClusterDeploymentType }}
33 changes: 26 additions & 7 deletions charts/nutanix-csi-storage/templates/ntnx-csi-node-ds.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,11 @@ spec:
updateStrategy:
type: "RollingUpdate"
rollingUpdate:
maxUnavailable: 10%
maxUnavailable: "10%"
template:
metadata:
annotations:
kubectl.kubernetes.io/default-container: nutanix-csi-node
labels:
app: nutanix-csi-node
spec:
Expand Down Expand Up @@ -58,6 +60,8 @@ spec:
- "--endpoint=$(CSI_ENDPOINT)"
- "--nodeid=$(NODE_ID)"
- "--drivername={{ include "nutanix-csi-storage.drivername" . }}"
- "--use-pc=true"
# - --volume-capacity-threshold=50.0
env:
- name: CSI_ENDPOINT
value: unix:///csi/csi.sock
Expand All @@ -69,11 +73,23 @@ spec:
valueFrom:
fieldRef:
fieldPath: status.hostIP
- name: CSI_SECRET_DIR
value: {{ .Values.csiSecretDir }}
- name: CSI_CATEGORY_CONFIGMAP_NAME
value: {{ .Values.csiCategoryConfigmapName }}
- name: CSI_CATEGORY_CONFIGMAP_NAMESPACE
value: {{ .Values.csiCategoryConfigmapNamespace }}
resources:
limits:
cpu: {{ .Values.node.cpu }}
memory: {{ .Values.node.memory }}
requests:
cpu: 100m
memory: 200Mi
cpu: {{ .Values.node.cpu }}
memory: {{ .Values.node.memory }}
volumeMounts:
- mountPath: {{ .Values.csiSecretDir }}
name: pc-secret
readOnly: true
- name: plugin-dir
mountPath: /csi
- name: pods-mount-dir
Expand All @@ -97,10 +113,10 @@ spec:
httpGet:
path: /healthz
port: http-endpoint
initialDelaySeconds: 10
timeoutSeconds: 3
periodSeconds: 2
failureThreshold: 3
initialDelaySeconds: {{ .Values.liveness.node.initialDelaySeconds }}
timeoutSeconds: {{ .Values.liveness.node.timeoutSeconds }}
periodSeconds: {{ .Values.liveness.node.periodSeconds }}
failureThreshold: {{ .Values.liveness.node.failureThreshold }}
- name: liveness-probe
resources:
requests:
Expand Down Expand Up @@ -151,3 +167,6 @@ spec:
hostPath:
path: /
type: Directory
- name: pc-secret
secret:
secretName: {{ .Values.pcSecretName }}
25 changes: 23 additions & 2 deletions charts/nutanix-csi-storage/templates/ntnx-csi-rbac.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,19 @@ rules:
verbs: ["get", "list", "watch"]
- apiGroups: [""]
resources: ["nodes"]
verbs: ["get"]
verbs: ["get", "list", "watch"]
- apiGroups: [""]
resources: ["configmaps"]
verbs: ["get", "list", "watch"]
- apiGroups: [""]
resources: ["namespaces"]
verbs: ["get", "list", "watch"]
- apiGroups: [""]
resources: ["configmaps"]
verbs: ["get", "list", "watch"]
- apiGroups: [""]
resources: ["pods"]
verbs: ["get", "list", "watch"]
- apiGroups: [""]
resources: ["persistentvolumes"]
verbs: ["get", "list", "watch", "create", "delete", "update", "patch"]
Expand All @@ -35,9 +47,15 @@ rules:
- apiGroups: ["storage.k8s.io"]
resources: ["storageclasses"]
verbs: ["get", "list", "watch"]
- apiGroups: ["storage.k8s.io"]
resources: ["volumeattachments"]
verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["storage.k8s.io"]
resources: ["volumeattachments/status"]
verbs: ["patch"]
- apiGroups: [""]
resources: ["events"]
verbs: ["list", "watch", "create", "update", "patch"]
verbs: ["get", "list", "watch", "create", "update", "patch"]
- apiGroups: ["snapshot.storage.k8s.io"]
resources: ["volumesnapshotclasses"]
verbs: ["get", "list", "watch"]
Expand Down Expand Up @@ -101,6 +119,9 @@ rules:
- apiGroups: ["storage.k8s.io"]
resources: ["volumeattachments"]
verbs: ["get", "list", "watch", "update"]
- apiGroups: [""]
resources: ["configmaps"]
verbs: ["get", "list", "watch"]
---
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1
Expand Down
Loading
Loading