Use upstream released chart for aws-ebs-csi
This commit is contained in:
parent
5909fcd841
commit
f78c382be6
@ -1 +0,0 @@
|
|||||||
git
|
|
@ -1,24 +0,0 @@
|
|||||||
# Patterns to ignore when building packages.
|
|
||||||
# This supports shell glob matching, relative path matching, and
|
|
||||||
# negation (prefixed with !). Only one pattern per line.
|
|
||||||
.DS_Store
|
|
||||||
# Common VCS dirs
|
|
||||||
.git/
|
|
||||||
.gitignore
|
|
||||||
.bzr/
|
|
||||||
.bzrignore
|
|
||||||
.hg/
|
|
||||||
.hgignore
|
|
||||||
.svn/
|
|
||||||
# Common backup files
|
|
||||||
*.swp
|
|
||||||
*.bak
|
|
||||||
*.tmp
|
|
||||||
*~
|
|
||||||
# Various IDEs
|
|
||||||
.project
|
|
||||||
.idea/
|
|
||||||
*.tmproj
|
|
||||||
.vscode/
|
|
||||||
|
|
||||||
git
|
|
@ -17,6 +17,9 @@ keywords:
|
|||||||
maintainers:
|
maintainers:
|
||||||
- name: Quarky9
|
- name: Quarky9
|
||||||
dependencies:
|
dependencies:
|
||||||
|
- name: aws-ebs-csi-driver
|
||||||
|
version: 0.6.1
|
||||||
|
repository: https://kubernetes-sigs.github.io/aws-ebs-csi-driver
|
||||||
- name: kubezero-lib
|
- name: kubezero-lib
|
||||||
version: ">= 0.1.3"
|
version: ">= 0.1.3"
|
||||||
repository: https://zero-down-time.github.io/kubezero/
|
repository: https://zero-down-time.github.io/kubezero/
|
||||||
|
@ -23,6 +23,7 @@ Kubernetes: `>= 1.16.0`
|
|||||||
|
|
||||||
| Repository | Name | Version |
|
| Repository | Name | Version |
|
||||||
|------------|------|---------|
|
|------------|------|---------|
|
||||||
|
| https://kubernetes-sigs.github.io/aws-ebs-csi-driver | aws-ebs-csi-driver | 0.6.1 |
|
||||||
| https://zero-down-time.github.io/kubezero/ | kubezero-lib | >= 0.1.3 |
|
| https://zero-down-time.github.io/kubezero/ | kubezero-lib | >= 0.1.3 |
|
||||||
|
|
||||||
## IAM Role
|
## IAM Role
|
||||||
|
@ -1,16 +0,0 @@
|
|||||||
apiVersion: v1
|
|
||||||
appVersion: "0.7.1"
|
|
||||||
name: aws-ebs-csi-driver
|
|
||||||
description: A Helm chart for AWS EBS CSI Driver
|
|
||||||
version: 0.6.1
|
|
||||||
kubeVersion: ">=1.13.0-0"
|
|
||||||
home: https://github.com/kubernetes-sigs/aws-ebs-csi-driver
|
|
||||||
sources:
|
|
||||||
- https://github.com/kubernetes-sigs/aws-ebs-csi-driver
|
|
||||||
keywords:
|
|
||||||
- aws
|
|
||||||
- ebs
|
|
||||||
- csi
|
|
||||||
maintainers:
|
|
||||||
- name: leakingtapan
|
|
||||||
email: chengpan@amazon.com
|
|
@ -1,3 +0,0 @@
|
|||||||
To verify that aws-ebs-csi-driver has started, run:
|
|
||||||
|
|
||||||
kubectl get pod -n kube-system -l "app.kubernetes.io/name={{ include "aws-ebs-csi-driver.name" . }},app.kubernetes.io/instance={{ .Release.Name }}"
|
|
@ -1,69 +0,0 @@
|
|||||||
{{/* vim: set filetype=mustache: */}}
|
|
||||||
{{/*
|
|
||||||
Expand the name of the chart.
|
|
||||||
*/}}
|
|
||||||
{{- define "aws-ebs-csi-driver.name" -}}
|
|
||||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
|
|
||||||
{{- end -}}
|
|
||||||
|
|
||||||
{{/*
|
|
||||||
Create a default fully qualified app name.
|
|
||||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
|
||||||
If release name contains chart name it will be used as a full name.
|
|
||||||
*/}}
|
|
||||||
{{- define "aws-ebs-csi-driver.fullname" -}}
|
|
||||||
{{- if .Values.fullnameOverride -}}
|
|
||||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
|
|
||||||
{{- else -}}
|
|
||||||
{{- $name := default .Chart.Name .Values.nameOverride -}}
|
|
||||||
{{- if contains $name .Release.Name -}}
|
|
||||||
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
|
|
||||||
{{- else -}}
|
|
||||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
|
|
||||||
{{- end -}}
|
|
||||||
{{- end -}}
|
|
||||||
{{- end -}}
|
|
||||||
|
|
||||||
{{/*
|
|
||||||
Create chart name and version as used by the chart label.
|
|
||||||
*/}}
|
|
||||||
{{- define "aws-ebs-csi-driver.chart" -}}
|
|
||||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
|
|
||||||
{{- end -}}
|
|
||||||
|
|
||||||
{{/*
|
|
||||||
Common labels
|
|
||||||
*/}}
|
|
||||||
{{- define "aws-ebs-csi-driver.labels" -}}
|
|
||||||
{{ include "aws-ebs-csi-driver.selectorLabels" . }}
|
|
||||||
{{- if ne .Release.Name "kustomize" }}
|
|
||||||
helm.sh/chart: {{ include "aws-ebs-csi-driver.chart" . }}
|
|
||||||
{{- if .Chart.AppVersion }}
|
|
||||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
|
||||||
{{- end }}
|
|
||||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
|
||||||
{{- end }}
|
|
||||||
{{- end -}}
|
|
||||||
|
|
||||||
{{/*
|
|
||||||
Common selector labels
|
|
||||||
*/}}
|
|
||||||
{{- define "aws-ebs-csi-driver.selectorLabels" -}}
|
|
||||||
app.kubernetes.io/name: {{ include "aws-ebs-csi-driver.name" . }}
|
|
||||||
{{- if ne .Release.Name "kustomize" }}
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
{{- end }}
|
|
||||||
{{- end -}}
|
|
||||||
|
|
||||||
{{/*
|
|
||||||
Convert the `--extra-volume-tags` command line arg from a map.
|
|
||||||
*/}}
|
|
||||||
{{- define "aws-ebs-csi-driver.extra-volume-tags" -}}
|
|
||||||
{{- $result := dict "pairs" (list) -}}
|
|
||||||
{{- range $key, $value := .Values.extraVolumeTags -}}
|
|
||||||
{{- $noop := printf "%s=%s" $key $value | append $result.pairs | set $result "pairs" -}}
|
|
||||||
{{- end -}}
|
|
||||||
{{- if gt (len $result.pairs) 0 -}}
|
|
||||||
{{- printf "%s=%s" "- --extra-volume-tags" (join "," $result.pairs) -}}
|
|
||||||
{{- end -}}
|
|
||||||
{{- end -}}
|
|
@ -1,20 +0,0 @@
|
|||||||
---
|
|
||||||
kind: ClusterRole
|
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
|
||||||
metadata:
|
|
||||||
name: ebs-external-attacher-role
|
|
||||||
labels:
|
|
||||||
{{- include "aws-ebs-csi-driver.labels" . | nindent 4 }}
|
|
||||||
rules:
|
|
||||||
- apiGroups: [""]
|
|
||||||
resources: ["persistentvolumes"]
|
|
||||||
verbs: ["get", "list", "watch", "update"]
|
|
||||||
- apiGroups: [""]
|
|
||||||
resources: ["nodes"]
|
|
||||||
verbs: ["get", "list", "watch"]
|
|
||||||
- apiGroups: ["csi.storage.k8s.io"]
|
|
||||||
resources: ["csinodeinfos"]
|
|
||||||
verbs: ["get", "list", "watch"]
|
|
||||||
- apiGroups: ["storage.k8s.io"]
|
|
||||||
resources: ["volumeattachments"]
|
|
||||||
verbs: ["get", "list", "watch", "update"]
|
|
@ -1,35 +0,0 @@
|
|||||||
---
|
|
||||||
kind: ClusterRole
|
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
|
||||||
metadata:
|
|
||||||
name: ebs-external-provisioner-role
|
|
||||||
labels:
|
|
||||||
{{- include "aws-ebs-csi-driver.labels" . | nindent 4 }}
|
|
||||||
rules:
|
|
||||||
- apiGroups: [""]
|
|
||||||
resources: ["persistentvolumes"]
|
|
||||||
verbs: ["get", "list", "watch", "create", "delete"]
|
|
||||||
- apiGroups: [""]
|
|
||||||
resources: ["persistentvolumeclaims"]
|
|
||||||
verbs: ["get", "list", "watch", "update"]
|
|
||||||
- apiGroups: ["storage.k8s.io"]
|
|
||||||
resources: ["storageclasses"]
|
|
||||||
verbs: ["get", "list", "watch"]
|
|
||||||
- apiGroups: [""]
|
|
||||||
resources: ["events"]
|
|
||||||
verbs: ["list", "watch", "create", "update", "patch"]
|
|
||||||
- apiGroups: ["snapshot.storage.k8s.io"]
|
|
||||||
resources: ["volumesnapshots"]
|
|
||||||
verbs: ["get", "list"]
|
|
||||||
- apiGroups: ["snapshot.storage.k8s.io"]
|
|
||||||
resources: ["volumesnapshotcontents"]
|
|
||||||
verbs: ["get", "list"]
|
|
||||||
- apiGroups: ["storage.k8s.io"]
|
|
||||||
resources: ["csinodes"]
|
|
||||||
verbs: ["get", "list", "watch"]
|
|
||||||
- apiGroups: [""]
|
|
||||||
resources: ["nodes"]
|
|
||||||
verbs: ["get", "list", "watch"]
|
|
||||||
- apiGroups: ["coordination.k8s.io"]
|
|
||||||
resources: ["leases"]
|
|
||||||
verbs: ["get", "watch", "list", "delete", "update", "create"]
|
|
@ -1,31 +0,0 @@
|
|||||||
{{- if .Values.enableVolumeResizing }}
|
|
||||||
---
|
|
||||||
kind: ClusterRole
|
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
|
||||||
metadata:
|
|
||||||
name: ebs-external-resizer-role
|
|
||||||
labels:
|
|
||||||
{{- include "aws-ebs-csi-driver.labels" . | nindent 4 }}
|
|
||||||
rules:
|
|
||||||
# The following rule should be uncommented for plugins that require secrets
|
|
||||||
# for provisioning.
|
|
||||||
# - apiGroups: [""]
|
|
||||||
# resources: ["secrets"]
|
|
||||||
# verbs: ["get", "list", "watch"]
|
|
||||||
- apiGroups: [""]
|
|
||||||
resources: ["persistentvolumes"]
|
|
||||||
verbs: ["get", "list", "watch", "update", "patch"]
|
|
||||||
- apiGroups: [""]
|
|
||||||
resources: ["persistentvolumeclaims"]
|
|
||||||
verbs: ["get", "list", "watch"]
|
|
||||||
- apiGroups: [""]
|
|
||||||
resources: ["persistentvolumeclaims/status"]
|
|
||||||
verbs: ["update", "patch"]
|
|
||||||
- apiGroups: ["storage.k8s.io"]
|
|
||||||
resources: ["storageclasses"]
|
|
||||||
verbs: ["get", "list", "watch"]
|
|
||||||
- apiGroups: [""]
|
|
||||||
resources: ["events"]
|
|
||||||
verbs: ["list", "watch", "create", "update", "patch"]
|
|
||||||
|
|
||||||
{{- end}}
|
|
@ -1,35 +0,0 @@
|
|||||||
{{- if .Values.enableVolumeSnapshot }}
|
|
||||||
---
|
|
||||||
kind: ClusterRole
|
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
|
||||||
metadata:
|
|
||||||
name: ebs-snapshot-controller-role
|
|
||||||
labels:
|
|
||||||
{{- include "aws-ebs-csi-driver.labels" . | nindent 4 }}
|
|
||||||
rules:
|
|
||||||
- apiGroups: [""]
|
|
||||||
resources: ["persistentvolumes"]
|
|
||||||
verbs: ["get", "list", "watch"]
|
|
||||||
- apiGroups: [""]
|
|
||||||
resources: ["persistentvolumeclaims"]
|
|
||||||
verbs: ["get", "list", "watch", "update"]
|
|
||||||
- apiGroups: ["storage.k8s.io"]
|
|
||||||
resources: ["storageclasses"]
|
|
||||||
verbs: ["get", "list", "watch"]
|
|
||||||
- apiGroups: [""]
|
|
||||||
resources: ["events"]
|
|
||||||
verbs: ["list", "watch", "create", "update", "patch"]
|
|
||||||
- apiGroups: ["snapshot.storage.k8s.io"]
|
|
||||||
resources: ["volumesnapshotclasses"]
|
|
||||||
verbs: ["get", "list", "watch"]
|
|
||||||
- apiGroups: ["snapshot.storage.k8s.io"]
|
|
||||||
resources: ["volumesnapshotcontents"]
|
|
||||||
verbs: ["create", "get", "list", "watch", "update", "delete"]
|
|
||||||
- apiGroups: ["snapshot.storage.k8s.io"]
|
|
||||||
resources: ["volumesnapshots"]
|
|
||||||
verbs: ["get", "list", "watch", "update"]
|
|
||||||
- apiGroups: ["snapshot.storage.k8s.io"]
|
|
||||||
resources: ["volumesnapshots/status"]
|
|
||||||
verbs: ["update"]
|
|
||||||
|
|
||||||
{{- end }}
|
|
@ -1,25 +0,0 @@
|
|||||||
{{- if .Values.enableVolumeSnapshot }}
|
|
||||||
---
|
|
||||||
kind: ClusterRole
|
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
|
||||||
metadata:
|
|
||||||
name: ebs-external-snapshotter-role
|
|
||||||
labels:
|
|
||||||
{{- include "aws-ebs-csi-driver.labels" . | nindent 4 }}
|
|
||||||
rules:
|
|
||||||
- apiGroups: [""]
|
|
||||||
resources: ["events"]
|
|
||||||
verbs: ["list", "watch", "create", "update", "patch"]
|
|
||||||
- apiGroups: [""]
|
|
||||||
resources: ["secrets"]
|
|
||||||
verbs: ["get", "list"]
|
|
||||||
- apiGroups: ["snapshot.storage.k8s.io"]
|
|
||||||
resources: ["volumesnapshotclasses"]
|
|
||||||
verbs: ["get", "list", "watch"]
|
|
||||||
- apiGroups: ["snapshot.storage.k8s.io"]
|
|
||||||
resources: ["volumesnapshotcontents"]
|
|
||||||
verbs: ["create", "get", "list", "watch", "update", "delete"]
|
|
||||||
- apiGroups: ["snapshot.storage.k8s.io"]
|
|
||||||
resources: ["volumesnapshotcontents/status"]
|
|
||||||
verbs: ["update"]
|
|
||||||
{{- end }}
|
|
@ -1,15 +0,0 @@
|
|||||||
---
|
|
||||||
kind: ClusterRoleBinding
|
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
|
||||||
metadata:
|
|
||||||
name: ebs-csi-attacher-binding
|
|
||||||
labels:
|
|
||||||
{{- include "aws-ebs-csi-driver.labels" . | nindent 4 }}
|
|
||||||
subjects:
|
|
||||||
- kind: ServiceAccount
|
|
||||||
name: ebs-csi-controller-sa
|
|
||||||
namespace: kube-system
|
|
||||||
roleRef:
|
|
||||||
kind: ClusterRole
|
|
||||||
name: ebs-external-attacher-role
|
|
||||||
apiGroup: rbac.authorization.k8s.io
|
|
@ -1,15 +0,0 @@
|
|||||||
---
|
|
||||||
kind: ClusterRoleBinding
|
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
|
||||||
metadata:
|
|
||||||
name: ebs-csi-provisioner-binding
|
|
||||||
labels:
|
|
||||||
{{- include "aws-ebs-csi-driver.labels" . | nindent 4 }}
|
|
||||||
subjects:
|
|
||||||
- kind: ServiceAccount
|
|
||||||
name: ebs-csi-controller-sa
|
|
||||||
namespace: kube-system
|
|
||||||
roleRef:
|
|
||||||
kind: ClusterRole
|
|
||||||
name: ebs-external-provisioner-role
|
|
||||||
apiGroup: rbac.authorization.k8s.io
|
|
@ -1,18 +0,0 @@
|
|||||||
{{- if .Values.enableVolumeResizing }}
|
|
||||||
---
|
|
||||||
kind: ClusterRoleBinding
|
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
|
||||||
metadata:
|
|
||||||
name: ebs-csi-resizer-binding
|
|
||||||
labels:
|
|
||||||
{{- include "aws-ebs-csi-driver.labels" . | nindent 4 }}
|
|
||||||
subjects:
|
|
||||||
- kind: ServiceAccount
|
|
||||||
name: ebs-csi-controller-sa
|
|
||||||
namespace: kube-system
|
|
||||||
roleRef:
|
|
||||||
kind: ClusterRole
|
|
||||||
name: ebs-external-resizer-role
|
|
||||||
apiGroup: rbac.authorization.k8s.io
|
|
||||||
|
|
||||||
{{- end}}
|
|
@ -1,18 +0,0 @@
|
|||||||
{{- if .Values.enableVolumeSnapshot }}
|
|
||||||
---
|
|
||||||
kind: ClusterRoleBinding
|
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
|
||||||
metadata:
|
|
||||||
name: ebs-csi-snapshot-controller-binding
|
|
||||||
labels:
|
|
||||||
{{- include "aws-ebs-csi-driver.labels" . | nindent 4 }}
|
|
||||||
subjects:
|
|
||||||
- kind: ServiceAccount
|
|
||||||
name: ebs-snapshot-controller
|
|
||||||
namespace: kube-system
|
|
||||||
roleRef:
|
|
||||||
kind: ClusterRole
|
|
||||||
name: ebs-snapshot-controller-role
|
|
||||||
apiGroup: rbac.authorization.k8s.io
|
|
||||||
|
|
||||||
{{- end }}
|
|
@ -1,18 +0,0 @@
|
|||||||
{{- if .Values.enableVolumeSnapshot }}
|
|
||||||
---
|
|
||||||
kind: ClusterRoleBinding
|
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
|
||||||
metadata:
|
|
||||||
name: ebs-csi-snapshotter-binding
|
|
||||||
labels:
|
|
||||||
{{- include "aws-ebs-csi-driver.labels" . | nindent 4 }}
|
|
||||||
subjects:
|
|
||||||
- kind: ServiceAccount
|
|
||||||
name: ebs-csi-controller-sa
|
|
||||||
namespace: kube-system
|
|
||||||
roleRef:
|
|
||||||
kind: ClusterRole
|
|
||||||
name: ebs-external-snapshotter-role
|
|
||||||
apiGroup: rbac.authorization.k8s.io
|
|
||||||
|
|
||||||
{{- end }}
|
|
@ -1,157 +0,0 @@
|
|||||||
# Controller Service
|
|
||||||
kind: Deployment
|
|
||||||
apiVersion: apps/v1
|
|
||||||
metadata:
|
|
||||||
name: ebs-csi-controller
|
|
||||||
namespace: kube-system
|
|
||||||
labels:
|
|
||||||
{{- include "aws-ebs-csi-driver.labels" . | nindent 4 }}
|
|
||||||
spec:
|
|
||||||
replicas: {{ .Values.replicaCount }}
|
|
||||||
selector:
|
|
||||||
matchLabels:
|
|
||||||
app: ebs-csi-controller
|
|
||||||
{{- include "aws-ebs-csi-driver.selectorLabels" . | nindent 6 }}
|
|
||||||
template:
|
|
||||||
metadata:
|
|
||||||
labels:
|
|
||||||
app: ebs-csi-controller
|
|
||||||
{{- include "aws-ebs-csi-driver.labels" . | nindent 8 }}
|
|
||||||
{{- if .Values.podAnnotations }}
|
|
||||||
annotations: {{ toYaml .Values.podAnnotations | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
nodeSelector:
|
|
||||||
kubernetes.io/os: linux
|
|
||||||
{{- with .Values.nodeSelector }}
|
|
||||||
{{ toYaml . | indent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
serviceAccountName: ebs-csi-controller-sa
|
|
||||||
priorityClassName: system-cluster-critical
|
|
||||||
{{- with .Values.affinity }}
|
|
||||||
affinity: {{ toYaml . | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
tolerations:
|
|
||||||
- operator: Exists
|
|
||||||
{{- with .Values.tolerations }}
|
|
||||||
{{ toYaml . | indent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
containers:
|
|
||||||
- name: ebs-plugin
|
|
||||||
image: {{ .Values.image.repository }}:{{ .Values.image.tag }}
|
|
||||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
|
||||||
args:
|
|
||||||
{{- if ne .Release.Name "kustomize" }}
|
|
||||||
- controller
|
|
||||||
{{- else }}
|
|
||||||
# - {all,controller,node} # specify the driver mode
|
|
||||||
{{- end }}
|
|
||||||
- --endpoint=$(CSI_ENDPOINT)
|
|
||||||
{{- if .Values.extraVolumeTags }}
|
|
||||||
{{- include "aws-ebs-csi-driver.extra-volume-tags" . | nindent 12 }}
|
|
||||||
{{- end }}
|
|
||||||
- --logtostderr
|
|
||||||
- --v=5
|
|
||||||
env:
|
|
||||||
- name: CSI_ENDPOINT
|
|
||||||
value: unix:///var/lib/csi/sockets/pluginproxy/csi.sock
|
|
||||||
- name: AWS_ACCESS_KEY_ID
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: aws-secret
|
|
||||||
key: key_id
|
|
||||||
optional: true
|
|
||||||
- name: AWS_SECRET_ACCESS_KEY
|
|
||||||
valueFrom:
|
|
||||||
secretKeyRef:
|
|
||||||
name: aws-secret
|
|
||||||
key: access_key
|
|
||||||
optional: true
|
|
||||||
{{- if .Values.region }}
|
|
||||||
- name: AWS_REGION
|
|
||||||
value: {{ .Values.region }}
|
|
||||||
{{- end }}
|
|
||||||
volumeMounts:
|
|
||||||
- name: socket-dir
|
|
||||||
mountPath: /var/lib/csi/sockets/pluginproxy/
|
|
||||||
ports:
|
|
||||||
- name: healthz
|
|
||||||
containerPort: 9808
|
|
||||||
protocol: TCP
|
|
||||||
livenessProbe:
|
|
||||||
httpGet:
|
|
||||||
path: /healthz
|
|
||||||
port: healthz
|
|
||||||
initialDelaySeconds: 10
|
|
||||||
timeoutSeconds: 3
|
|
||||||
periodSeconds: 10
|
|
||||||
failureThreshold: 5
|
|
||||||
{{- with .Values.resources }}
|
|
||||||
resources: {{ toYaml . | nindent 12 }}
|
|
||||||
{{- end }}
|
|
||||||
- name: csi-provisioner
|
|
||||||
image: {{ printf "%s:%s" .Values.sidecars.provisionerImage.repository .Values.sidecars.provisionerImage.tag }}
|
|
||||||
args:
|
|
||||||
- --csi-address=$(ADDRESS)
|
|
||||||
- --v=5
|
|
||||||
{{- if .Values.enableVolumeScheduling }}
|
|
||||||
- --feature-gates=Topology=true
|
|
||||||
{{- end}}
|
|
||||||
- --enable-leader-election
|
|
||||||
- --leader-election-type=leases
|
|
||||||
env:
|
|
||||||
- name: ADDRESS
|
|
||||||
value: /var/lib/csi/sockets/pluginproxy/csi.sock
|
|
||||||
volumeMounts:
|
|
||||||
- name: socket-dir
|
|
||||||
mountPath: /var/lib/csi/sockets/pluginproxy/
|
|
||||||
- name: csi-attacher
|
|
||||||
image: {{ printf "%s:%s" .Values.sidecars.attacherImage.repository .Values.sidecars.attacherImage.tag }}
|
|
||||||
args:
|
|
||||||
- --csi-address=$(ADDRESS)
|
|
||||||
- --v=5
|
|
||||||
- --leader-election=true
|
|
||||||
- --leader-election-type=leases
|
|
||||||
env:
|
|
||||||
- name: ADDRESS
|
|
||||||
value: /var/lib/csi/sockets/pluginproxy/csi.sock
|
|
||||||
volumeMounts:
|
|
||||||
- name: socket-dir
|
|
||||||
mountPath: /var/lib/csi/sockets/pluginproxy/
|
|
||||||
{{- if .Values.enableVolumeSnapshot }}
|
|
||||||
- name: csi-snapshotter
|
|
||||||
image: {{ printf "%s:%s" .Values.sidecars.snapshotterImage.repository .Values.sidecars.snapshotterImage.tag }}
|
|
||||||
args:
|
|
||||||
- --csi-address=$(ADDRESS)
|
|
||||||
- --leader-election=true
|
|
||||||
env:
|
|
||||||
- name: ADDRESS
|
|
||||||
value: /var/lib/csi/sockets/pluginproxy/csi.sock
|
|
||||||
volumeMounts:
|
|
||||||
- name: socket-dir
|
|
||||||
mountPath: /var/lib/csi/sockets/pluginproxy/
|
|
||||||
{{- end }}
|
|
||||||
{{- if .Values.enableVolumeResizing }}
|
|
||||||
- name: csi-resizer
|
|
||||||
image: {{ printf "%s:%s" .Values.sidecars.resizerImage.repository .Values.sidecars.resizerImage.tag }}
|
|
||||||
imagePullPolicy: Always
|
|
||||||
args:
|
|
||||||
- --csi-address=$(ADDRESS)
|
|
||||||
- --v=5
|
|
||||||
env:
|
|
||||||
- name: ADDRESS
|
|
||||||
value: /var/lib/csi/sockets/pluginproxy/csi.sock
|
|
||||||
volumeMounts:
|
|
||||||
- name: socket-dir
|
|
||||||
mountPath: /var/lib/csi/sockets/pluginproxy/
|
|
||||||
{{- end }}
|
|
||||||
- name: liveness-probe
|
|
||||||
image: {{ printf "%s:%s" .Values.sidecars.livenessProbeImage.repository .Values.sidecars.livenessProbeImage.tag }}
|
|
||||||
args:
|
|
||||||
- --csi-address=/csi/csi.sock
|
|
||||||
volumeMounts:
|
|
||||||
- name: socket-dir
|
|
||||||
mountPath: /csi
|
|
||||||
volumes:
|
|
||||||
- name: socket-dir
|
|
||||||
emptyDir: {}
|
|
@ -1,9 +0,0 @@
|
|||||||
apiVersion: storage.k8s.io/v1beta1
|
|
||||||
kind: CSIDriver
|
|
||||||
metadata:
|
|
||||||
name: ebs.csi.aws.com
|
|
||||||
labels:
|
|
||||||
{{- include "aws-ebs-csi-driver.labels" . | nindent 4 }}
|
|
||||||
spec:
|
|
||||||
attachRequired: true
|
|
||||||
podInfoOnMount: false
|
|
@ -1,117 +0,0 @@
|
|||||||
# Node Service
|
|
||||||
kind: DaemonSet
|
|
||||||
apiVersion: apps/v1
|
|
||||||
metadata:
|
|
||||||
name: ebs-csi-node
|
|
||||||
namespace: kube-system
|
|
||||||
labels:
|
|
||||||
{{- include "aws-ebs-csi-driver.labels" . | nindent 4 }}
|
|
||||||
spec:
|
|
||||||
selector:
|
|
||||||
matchLabels:
|
|
||||||
app: ebs-csi-node
|
|
||||||
{{- include "aws-ebs-csi-driver.selectorLabels" . | nindent 6 }}
|
|
||||||
template:
|
|
||||||
metadata:
|
|
||||||
labels:
|
|
||||||
app: ebs-csi-node
|
|
||||||
{{- include "aws-ebs-csi-driver.labels" . | nindent 8 }}
|
|
||||||
{{- if .Values.node.podAnnotations }}
|
|
||||||
annotations: {{ toYaml .Values.node.podAnnotations | nindent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
spec:
|
|
||||||
affinity:
|
|
||||||
nodeAffinity:
|
|
||||||
requiredDuringSchedulingIgnoredDuringExecution:
|
|
||||||
nodeSelectorTerms:
|
|
||||||
- matchExpressions:
|
|
||||||
- key: eks.amazonaws.com/compute-type
|
|
||||||
operator: NotIn
|
|
||||||
values:
|
|
||||||
- fargate
|
|
||||||
nodeSelector:
|
|
||||||
kubernetes.io/os: linux
|
|
||||||
hostNetwork: true
|
|
||||||
priorityClassName: system-node-critical
|
|
||||||
tolerations:
|
|
||||||
- operator: Exists
|
|
||||||
{{- with .Values.node.tolerations }}
|
|
||||||
{{ toYaml . | indent 8 }}
|
|
||||||
{{- end }}
|
|
||||||
containers:
|
|
||||||
- name: ebs-plugin
|
|
||||||
securityContext:
|
|
||||||
privileged: true
|
|
||||||
image: {{ .Values.image.repository }}:{{ .Values.image.tag }}
|
|
||||||
args:
|
|
||||||
- node
|
|
||||||
- --endpoint=$(CSI_ENDPOINT)
|
|
||||||
- --logtostderr
|
|
||||||
- --v=5
|
|
||||||
env:
|
|
||||||
- name: CSI_ENDPOINT
|
|
||||||
value: unix:/csi/csi.sock
|
|
||||||
volumeMounts:
|
|
||||||
- name: kubelet-dir
|
|
||||||
mountPath: /var/lib/kubelet
|
|
||||||
mountPropagation: "Bidirectional"
|
|
||||||
- name: plugin-dir
|
|
||||||
mountPath: /csi
|
|
||||||
- name: device-dir
|
|
||||||
mountPath: /dev
|
|
||||||
ports:
|
|
||||||
- name: healthz
|
|
||||||
containerPort: 9808
|
|
||||||
protocol: TCP
|
|
||||||
livenessProbe:
|
|
||||||
httpGet:
|
|
||||||
path: /healthz
|
|
||||||
port: healthz
|
|
||||||
initialDelaySeconds: 10
|
|
||||||
timeoutSeconds: 3
|
|
||||||
periodSeconds: 10
|
|
||||||
failureThreshold: 5
|
|
||||||
- name: node-driver-registrar
|
|
||||||
image: {{ printf "%s:%s" .Values.sidecars.nodeDriverRegistrarImage.repository .Values.sidecars.nodeDriverRegistrarImage.tag }}
|
|
||||||
args:
|
|
||||||
- --csi-address=$(ADDRESS)
|
|
||||||
- --kubelet-registration-path=$(DRIVER_REG_SOCK_PATH)
|
|
||||||
- --v=5
|
|
||||||
lifecycle:
|
|
||||||
preStop:
|
|
||||||
exec:
|
|
||||||
command: ["/bin/sh", "-c", "rm -rf /registration/ebs.csi.aws.com-reg.sock /csi/csi.sock"]
|
|
||||||
env:
|
|
||||||
- name: ADDRESS
|
|
||||||
value: /csi/csi.sock
|
|
||||||
- name: DRIVER_REG_SOCK_PATH
|
|
||||||
value: /var/lib/kubelet/plugins/ebs.csi.aws.com/csi.sock
|
|
||||||
volumeMounts:
|
|
||||||
- name: plugin-dir
|
|
||||||
mountPath: /csi
|
|
||||||
- name: registration-dir
|
|
||||||
mountPath: /registration
|
|
||||||
- name: liveness-probe
|
|
||||||
image: {{ printf "%s:%s" .Values.sidecars.livenessProbeImage.repository .Values.sidecars.livenessProbeImage.tag }}
|
|
||||||
args:
|
|
||||||
- --csi-address=/csi/csi.sock
|
|
||||||
volumeMounts:
|
|
||||||
- name: plugin-dir
|
|
||||||
mountPath: /csi
|
|
||||||
volumes:
|
|
||||||
- name: kubelet-dir
|
|
||||||
hostPath:
|
|
||||||
path: /var/lib/kubelet
|
|
||||||
type: Directory
|
|
||||||
- name: plugin-dir
|
|
||||||
hostPath:
|
|
||||||
path: /var/lib/kubelet/plugins/ebs.csi.aws.com/
|
|
||||||
type: DirectoryOrCreate
|
|
||||||
- name: registration-dir
|
|
||||||
hostPath:
|
|
||||||
path: /var/lib/kubelet/plugins_registry/
|
|
||||||
type: Directory
|
|
||||||
- name: device-dir
|
|
||||||
hostPath:
|
|
||||||
path: /dev
|
|
||||||
type: Directory
|
|
@ -1,15 +0,0 @@
|
|||||||
{{- if .Values.enableVolumeSnapshot }}
|
|
||||||
---
|
|
||||||
kind: Role
|
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
|
||||||
metadata:
|
|
||||||
name: ebs-snapshot-controller-leaderelection
|
|
||||||
namespace: kube-system
|
|
||||||
labels:
|
|
||||||
{{- include "aws-ebs-csi-driver.labels" . | nindent 4 }}
|
|
||||||
rules:
|
|
||||||
- apiGroups: ["coordination.k8s.io"]
|
|
||||||
resources: ["leases"]
|
|
||||||
verbs: ["get", "watch", "list", "delete", "update", "create"]
|
|
||||||
|
|
||||||
{{- end }}
|
|
@ -1,19 +0,0 @@
|
|||||||
{{- if .Values.enableVolumeSnapshot }}
|
|
||||||
---
|
|
||||||
kind: RoleBinding
|
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
|
||||||
metadata:
|
|
||||||
name: snapshot-controller-leaderelection
|
|
||||||
namespace: kube-system
|
|
||||||
labels:
|
|
||||||
{{- include "aws-ebs-csi-driver.labels" . | nindent 4 }}
|
|
||||||
subjects:
|
|
||||||
- kind: ServiceAccount
|
|
||||||
name: ebs-snapshot-controller
|
|
||||||
namespace: kube-system
|
|
||||||
roleRef:
|
|
||||||
kind: Role
|
|
||||||
name: snapshot-controller-leaderelection
|
|
||||||
apiGroup: rbac.authorization.k8s.io
|
|
||||||
|
|
||||||
{{- end }}
|
|
@ -1,15 +0,0 @@
|
|||||||
apiVersion: v1
|
|
||||||
kind: ServiceAccount
|
|
||||||
metadata:
|
|
||||||
name: ebs-csi-controller-sa
|
|
||||||
namespace: kube-system
|
|
||||||
labels:
|
|
||||||
{{- include "aws-ebs-csi-driver.labels" . | nindent 4 }}
|
|
||||||
{{- with .Values.serviceAccount.controller.annotations }}
|
|
||||||
annotations: {{ toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
{{- if eq .Release.Name "kustomize" }}
|
|
||||||
#Enable if EKS IAM for SA is used
|
|
||||||
#annotations:
|
|
||||||
# eks.amazonaws.com/role-arn: arn:aws:iam::586565787010:role/ebs-csi-role
|
|
||||||
{{- end }}
|
|
@ -1,13 +0,0 @@
|
|||||||
{{- if .Values.enableVolumeSnapshot }}
|
|
||||||
---
|
|
||||||
apiVersion: v1
|
|
||||||
kind: ServiceAccount
|
|
||||||
metadata:
|
|
||||||
name: ebs-snapshot-controller
|
|
||||||
namespace: kube-system
|
|
||||||
labels:
|
|
||||||
{{- include "aws-ebs-csi-driver.labels" . | nindent 4 }}
|
|
||||||
{{- with .Values.serviceAccount.snapshot.annotations }}
|
|
||||||
annotations: {{ toYaml . | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
{{- end }}
|
|
@ -1,30 +0,0 @@
|
|||||||
{{- if .Values.enableVolumeSnapshot }}
|
|
||||||
#Snapshot controller
|
|
||||||
kind: StatefulSet
|
|
||||||
apiVersion: apps/v1
|
|
||||||
metadata:
|
|
||||||
name: ebs-snapshot-controller
|
|
||||||
namespace: kube-system
|
|
||||||
labels:
|
|
||||||
{{- include "aws-ebs-csi-driver.labels" . | nindent 4 }}
|
|
||||||
spec:
|
|
||||||
serviceName: ebs-snapshot-controller
|
|
||||||
replicas: 1
|
|
||||||
selector:
|
|
||||||
matchLabels:
|
|
||||||
app: ebs-snapshot-controller
|
|
||||||
{{- include "aws-ebs-csi-driver.selectorLabels" . | nindent 6 }}
|
|
||||||
template:
|
|
||||||
metadata:
|
|
||||||
labels:
|
|
||||||
app: ebs-snapshot-controller
|
|
||||||
{{- include "aws-ebs-csi-driver.labels" . | nindent 8 }}
|
|
||||||
spec:
|
|
||||||
serviceAccountName: ebs-snapshot-controller
|
|
||||||
containers:
|
|
||||||
- name: snapshot-controller
|
|
||||||
image: quay.io/k8scsi/snapshot-controller:v2.1.1
|
|
||||||
args:
|
|
||||||
- --v=5
|
|
||||||
- --leader-election=false
|
|
||||||
{{- end }}
|
|
@ -1,86 +0,0 @@
|
|||||||
# Default values for aws-ebs-csi-driver.
|
|
||||||
# This is a YAML-formatted file.
|
|
||||||
# Declare variables to be passed into your templates.
|
|
||||||
|
|
||||||
replicaCount: 2
|
|
||||||
|
|
||||||
image:
|
|
||||||
repository: amazon/aws-ebs-csi-driver
|
|
||||||
tag: "v0.7.1"
|
|
||||||
pullPolicy: IfNotPresent
|
|
||||||
|
|
||||||
sidecars:
|
|
||||||
provisionerImage:
|
|
||||||
repository: quay.io/k8scsi/csi-provisioner
|
|
||||||
tag: "v1.5.0"
|
|
||||||
attacherImage:
|
|
||||||
repository: quay.io/k8scsi/csi-attacher
|
|
||||||
tag: "v1.2.0"
|
|
||||||
snapshotterImage:
|
|
||||||
repository: quay.io/k8scsi/csi-snapshotter
|
|
||||||
tag: "v2.1.1"
|
|
||||||
livenessProbeImage:
|
|
||||||
repository: quay.io/k8scsi/livenessprobe
|
|
||||||
tag: "v1.1.0"
|
|
||||||
resizerImage:
|
|
||||||
repository: quay.io/k8scsi/csi-resizer
|
|
||||||
tag: "v0.3.0"
|
|
||||||
nodeDriverRegistrarImage:
|
|
||||||
repository: quay.io/k8scsi/csi-node-driver-registrar
|
|
||||||
tag: "v1.1.0"
|
|
||||||
|
|
||||||
imagePullSecrets: []
|
|
||||||
nameOverride: ""
|
|
||||||
fullnameOverride: ""
|
|
||||||
|
|
||||||
podAnnotations: {}
|
|
||||||
|
|
||||||
# True if enable volume scheduling for dynamic volume provisioning
|
|
||||||
enableVolumeScheduling: false
|
|
||||||
|
|
||||||
# True if enable volume resizing
|
|
||||||
enableVolumeResizing: false
|
|
||||||
|
|
||||||
# True if enable volume snapshot
|
|
||||||
enableVolumeSnapshot: false
|
|
||||||
|
|
||||||
resources: {}
|
|
||||||
# We usually recommend not to specify default resources and to leave this as a conscious
|
|
||||||
# choice for the user. This also increases chances charts run on environments with little
|
|
||||||
# resources, such as Minikube. If you do want to specify resources, uncomment the following
|
|
||||||
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
|
|
||||||
# limits:
|
|
||||||
# cpu: 100m
|
|
||||||
# memory: 128Mi
|
|
||||||
# requests:
|
|
||||||
# cpu: 100m
|
|
||||||
# memory: 128Mi
|
|
||||||
|
|
||||||
nodeSelector: {}
|
|
||||||
|
|
||||||
tolerations: []
|
|
||||||
|
|
||||||
affinity: {}
|
|
||||||
|
|
||||||
# Extra volume tags to attach to each dynamically provisioned volume.
|
|
||||||
# ---
|
|
||||||
# extraVolumeTags:
|
|
||||||
# key1: value1
|
|
||||||
# key2: value2
|
|
||||||
extraVolumeTags: {}
|
|
||||||
|
|
||||||
# AWS region to use. If not specified then the region will be looked up via the AWS EC2 metadata
|
|
||||||
# service.
|
|
||||||
# ---
|
|
||||||
# region: us-east-1
|
|
||||||
region: ""
|
|
||||||
|
|
||||||
node:
|
|
||||||
podAnnotations: {}
|
|
||||||
tolerations: []
|
|
||||||
|
|
||||||
serviceAccount:
|
|
||||||
controller:
|
|
||||||
annotations: {}
|
|
||||||
snapshot:
|
|
||||||
annotations: {}
|
|
@ -1,14 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
set -ex
|
|
||||||
|
|
||||||
# Upstream doesnt have proper Helm repo yet so we just download latest release and stuff it into charts
|
|
||||||
|
|
||||||
REPO="kubernetes-sigs/aws-ebs-csi-driver"
|
|
||||||
[ -z "$RELEASE" ] && RELEASE=$(curl -sL -s https://api.github.com/repos/${REPO}/releases | grep '"tag_name":' | cut -d'"' -f4 | grep -v -E "(alpha|beta|rc)" | sort -t"." -k 1,1 -k 2,2 -k 3,3 -k 4,4 | tail -n 1)
|
|
||||||
|
|
||||||
rm -rf git
|
|
||||||
git clone https://github.com/$REPO.git git
|
|
||||||
cd git && git checkout $RELEASE && cd -
|
|
||||||
|
|
||||||
rm -rf charts/aws-ebs-csi-driver && mkdir -p charts/aws-ebs-csi-driver
|
|
||||||
mv git/aws-ebs-csi-driver/* charts/aws-ebs-csi-driver
|
|
Loading…
Reference in New Issue
Block a user