Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie erstelle ich einen MySQL-Kubernetes-Dienst mit einem lokal bereitgestellten Datenvolumen?

Sie müssen ein persistentes Volume erstellen , indem Sie die Speicherklasse als lokal definieren , und ordnen Sie es dann dem lokalen Pfad zu.

Speicherklasse erstellen

storage-class.yml

kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
  name: local-storage
provisioner: kubernetes.io/no-provisioner
volumeBindingMode: WaitForFirstConsumer

Führen Sie dann kubectl create -f storage-class.yml aus

Dauerhaften Wert schaffen

pv-local.yaml

apiVersion: v1
kind: PersistentVolume
metadata:
  name: local-pv
spec:
  capacity:
    storage: 10Gi
  accessModes:
  - ReadWriteOnce
  persistentVolumeReclaimPolicy: Retain
  storageClassName: local-storage
  local:
    path: /mnt/data
  nodeAffinity:
    required:
      nodeSelectorTerms:
      - matchExpressions:
        - key: kubernetes.io/hostname
          operator: In
          values:
          - cka

Erstellen Sie ein persistentes Volume mit kubectl create -f pv-sdc.yml

Ein letztes, Anspruch auf dauerhaftes Volumen erstellen

pvc1.yml

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: pvc1
spec:
  accessModes:
  - ReadWriteOnce
  storageClassName: local-storage
  resources:
    requests:
      storage: 10Gi

Erstellen Sie einen persistenten Volume-Clain, der kubectl create -f pvc1.yml ausführt

Um persistente Werte aufzulisten, führen Sie kubectl get pv aus . Sie sollten eine Ausgabe wie

sehen
NAME           CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS      CLAIM     STORAGECLASS    REASON    AGE
local-pv       10Gi      RWO            Retain           Available             local-storage             10s

Das persistente Volume ist verfügbar, sobald ein Knoten es verwendet.

Dies Post kann Ihnen ein bisschen mehr helfen.