Развертывание MySQL statefulset с постоянным томом не работает

#mysql #kubernetes #kubernetes-helm #bitnami #kubernetes-statefulset

#mysql #kubernetes #kubernetes-helm #bitnami #kubernetes-statefulset-набор состояний

Вопрос:

Окружающая среда :

  • Использование диаграмм Helm v3 для развертывания.
  • Использование диаграмм Bitnami MySQL из следующего источника: https://artifacthub.io/packages/helm/bitnami/mysql
  • Имя пользователя и пароль генерируются случайным образом для каждого развертывания.
  • Создается PersistenceVolume типа «стандартный» класс хранения.
  • Весь кластер k8 выполнен на Baremetal.

При первом развертывании установка проходит успешно, все файлы базы данных mysql генерируются соответствующим образом в каталоге данных. После выполнения удаления и последующей установки не работает, поскольку в каталоге данных mysql есть файлы db и конфигурации для ранее сгенерированных учетных данных.

На данный момент, после удаления, мы вручную очищаем файлы с узла перед установкой. С нетерпением жду, как :

  • Очистка только файлов конфигурации и сохранение файлов БД нетронутыми.
  • При удалении постоянного тома удалите все файлы из каталога данных.
  • Измените DB с новым именем пользователя и паролем, чтобы использовать существующие файлы как есть.

Том сохранения K8 yaml

 kind: PersistentVolume
apiVersion: v1
metadata:
  name: mysql-pv
  labels:
    type: local
    name: mysql-pv
spec:
  storageClassName: standard
  capacity:
    storage: 2Gi
  accessModes:
  - ReadWriteOnce
  hostPath:
    path: "/tmp/"

---

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: mysql-pvc
  labels:
    name: mysql-pvc
spec:
  accessModes:
    - ReadWriteOnce
  volumeMode: Filesystem
  resources:
    requests:
      storage: 2Gi
  selector:
    matchLabels:
      name: mysql-pv
 

Комментарии:

1. Какие ошибки вы получаете? Есть какие-либо выходные kubectl describe данные, что-нибудь в журналах? Не могли бы вы указать шаги, как вы его настроили? Какую версию Kubernetes вы используете? Не могли бы вы предоставить выходные kubectl get pv,pvc данные?

2. Вам необходимо переустановить диаграмму, используя те же учетные данные, что и в первый раз. Пользовательские данные хранятся в таблице в вашей базе данных, поэтому вы не можете выбрать сохранение только ваших данных, а не пользователей.