Kubernetes 有状态在 AWS EBM 中使用 Helm 设置存储
Kubernetes stateful sets storage in AWS EBM with Helm
我正在使用 Helm 部署有状态集,pods 抱怨卷。
使用 AWS EBS 执行此操作的正确方法是什么?考虑 Helm 模板。
Warning FailedScheduling 30s (x112 over 116m) default-scheduler 0/9 nodes are available: 9 pod has unbound immediate PersistentVolumeClaims.
deployment.yaml
volumeClaimTemplates:
- metadata:
name: {{ .Values.storage.name }}
labels:
app: {{ template "etcd.name" . }}
chart: {{ .Chart.Name }}-{{ .Chart.Version }}
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
spec:
storageClassName: {{ .Values.storage.class | default .Values.global.storage.class }}
accessModes:
- {{ .Values.storage.accessMode }}
resources:
requests:
storage: {{ .Values.storage.size }}
values.yaml
storage:
name: etcd-data
mountPath: /somepath/etcd
class: "default"
size: 1Gi
accessMode: ReadWriteOnce
尝试将 class 名称更改为 EKS 上的默认名称:
...
spec:
storageClassName: {{ .Values.storage.class | default "gp2" | quote }}
accessModes:
- ...
storage:
...
class: "gp2"
...
我正在使用 Helm 部署有状态集,pods 抱怨卷。
使用 AWS EBS 执行此操作的正确方法是什么?考虑 Helm 模板。
Warning FailedScheduling 30s (x112 over 116m) default-scheduler 0/9 nodes are available: 9 pod has unbound immediate PersistentVolumeClaims.
deployment.yaml
volumeClaimTemplates:
- metadata:
name: {{ .Values.storage.name }}
labels:
app: {{ template "etcd.name" . }}
chart: {{ .Chart.Name }}-{{ .Chart.Version }}
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
spec:
storageClassName: {{ .Values.storage.class | default .Values.global.storage.class }}
accessModes:
- {{ .Values.storage.accessMode }}
resources:
requests:
storage: {{ .Values.storage.size }}
values.yaml
storage:
name: etcd-data
mountPath: /somepath/etcd
class: "default"
size: 1Gi
accessMode: ReadWriteOnce
尝试将 class 名称更改为 EKS 上的默认名称:
...
spec:
storageClassName: {{ .Values.storage.class | default "gp2" | quote }}
accessModes:
- ...
storage:
...
class: "gp2"
...