如何解决使用现有的持久性卷声明部署 bitnami/mysql helm chart
我正在尝试在我的 bitnami/mysql 中部署 minikube 图表。 我使用的是 Kubernetes v1.19、Minikube v1.17.1 和 Helm 3
我创建了一个 PVC 和 PV,如下所示:
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: mysql-pvc
spec:
storageClassName: standard
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 3Gi
selector:
matchLabels:
id: mysql-pv
----
kind: PersistentVolume
apiVersion: v1
metadata:
name: mysql-pv
labels:
type: local
id: mysql-pv
spec:
storageClassName: standard
capacity:
storage: 8Gi
accessModes:
- ReadWriteOnce
hostPath:
path: /var/lib/mysql
我通过执行 /var/lib/mysql
创建了目录 sudo mkdir -p /var/lib/mysql
这就是我创建 PVC 和 PC 的方式:
kubectl apply -f mysql-pv-dev.yaml
kubectl apply -f mysql-pvc-dev.yaml
这似乎有效:
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
mysql-pvc Bound mysql-pv 8Gi RWO standard 59s
我正在部署我的 mysql
:
helm upgrade --install dev-mysql -f mysql-dev.yaml bitnami/mysql
自定义值文件 - mysql-dev.yaml
:
auth:
database: dev_db
username: dev_user
password: passworddev
rootPassword: rootpass
image:
debug: true
primary:
persistence:
existingClaim: mysql-pvc
extraVolumeMounts: |
- name: init
mountPath: /docker-entrypoint-initdb.d
extraVolumes: |
- name: init
hostPath:
path: /home/dev/init_db_scripts/
type: Directory
volumePermissions:
enabled: true
部署有效:
NAME READY STATUS RESTARTS AGE
dev-mysql-0 0/1 Running 0 8s
问题是 pod 永远不会准备好,因为:
Warning Unhealthy 0s (x2 over 10s) kubelet Readiness probe failed: mysqladmin: [Warning] Using a password on the command line interface can be insecure.
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: YES)'
mysqld
正在 pod 内运行,但由于某些原因,root 密码设置不正确,因为当我执行 pod 并尝试连接到 mysql
时,我得到:
$ kubectl exec -ti dev-mysql bash
I have no name!@dev-mysql-0:/$ mysql -u root -prootpass
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
I have no name!@dev-mysql-0:/$
相反,它使用 default values 所以如果我尝试:
mysql -u root -p
没有密码,效果很好。
谢谢
解决方法
这里是一位比特纳米工程师, 我能够重现这个问题,我将创建一个内部任务来解决这个问题。当我们有更多信息时,我们会更新此线程。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。