KunnskapsbaseKubernetes

MySQL i Kubernetes

Oppdatert: 2025-01-15
Kubernetes

Denne guiden viser hvordan du setter opp MySQL på Kubernetes. Først lager vi en disk. Se guiden «Kubernetes: Lagring og Persistent Volumes». Legg følgende i «mysql-disk.yaml»:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: mysql-disk
spec:
  accessModes:
    - ReadWriteOnce
  volumeMode: Filesystem
  resources:
    requests:
      storage: 1Gi
  storageClassName: deploi-block-storage

Kjør kubectl apply -f mysql-disk.yaml. Opprett deretter en Secret med passord (mysql-secret.yaml med stringData password). Kjør kubectl apply -f mysql-secret.yaml.

Legg MySQL-deployment i «mysql.yaml»: image mysql:8, env MYSQL_ROOT_PASSWORD fra secretKeyRef mysql-secret, volumeMount /var/lib/mysql, persistentVolumeClaim mysql-disk, resources f.eks. cpu 250m og memory 1Gi. Kjør kubectl apply -f mysql.yaml.

Sjekk at MySQL kjører med kubectl get deployments mysql. For bruk i andre tjenester, opprett en Kubernetes Service. For å logge inn: kubectl exec --stdin --tty <pod-navn> -- /bin/bash, deretter mysql -u root -p.

Backup

For full backup til lokalt: kubectl exec --stdin --tty <pod-navn> -- /bin/bash -c 'exec mysqldump --all-databases -uroot -p"$MYSQL_ROOT_PASSWORD"' > dbdump.sql

Liker du det du leser?

Få lignende artikler rett i innboksen — 1–2 ganger i måneden. Ingen spam.