配置持久化到nfs
mysql默认配置是写到外面的/var/lib/mysql目录, 所以这里面不改配置的情况下,把外面的/var/lib/mysql目录建好, 并mount到 nfs上
initContainers:
- name: "remove-lost-found"
image: "{{ .Values.busybox.image}}:{{ .Values.busybox.tag }}"
imagePullPolicy: {{ .Values.imagePullPolicy | quote }}
resources:
{{ toYaml .Values.initContainer.resources | indent 10 }}
command: ["rm", "-fr", "/var/lib/mysql/lost+found"]
volumeMounts:
- name: data
mountPath: /var/lib/mysql
{{- if .Values.persistence.subPath }}
subPath: {{ .Values.persistence.subPath }}
volumeMounts:
- name: data
mountPath: /var/lib/mysql
{{- if .Values.persistence.subPath }}
subPath: {{ .Values.persistence.subPath }}
{{- end }}
然后执行安装
helm install --name mysql \
--set mysqlRootPassword=root,mysqlUser=my-user,mysqlPassword=my-password,mysqlDatabase=my-database \
stable/mysql
报错 pod has unbound immediate PersistentVolumeClaims
查看 持久化 kubectl describe PersistentVolumeClaim/mysql
Name: mysql
Namespace: default
StorageClass:
Status: Pending
Volume:
Labels: app=mysql
chart=mysql-1.2.0
heritage=Tiller
release=mysql
Annotations:
Finalizers: [kubernetes.io/pvc-protection]
Capacity:
Access Modes:
VolumeMode: Filesystem
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal FailedBinding 14s (x12 over 2m44s) persistentvolume-controller no persistent volumes available for this claim and no storage class is set
Mounted By: mysql-b76bd86d7-d5fw7
重新运行,添加配置
helm install --name mysql2 \
--set mysqlRootPassword=root,mysqlUser=my-user,mysqlPassword=my-password,mysqlDatabase=my-database,persistence.storageClass=nfs,persistence.size=1Gi \
stable/mysql
报错 Error: a release named mysql already exists.
标签:name,mysql,subPath,Values,注意事项,helm,my,persistence
来源: https://blog.csdn.net/gs80140/article/details/93471482