背景简介
Kubernetes 启动容器时,使用本地路径进行数据持久化。
环境配置
- Kubernetes 已安装。【参考链接】
详细步骤
第一步: 自定义 StorageClass 
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: es-local-storage
provisioner: kubernetes.io/no-provisioner
volumeBindingMode: WaitForFirstConsumer
第二步: 自定义 PersistentVolume  并使用先前定义的 StorageClass 
apiVersion: v1
kind: PersistentVolume
metadata:
  name: es-pv
spec:
  capacity:
    storage: 30Gi
  accessModes:
    - ReadWriteOnce
  persistentVolumeReclaimPolicy: Retain
  storageClassName: es-local-storage
  local:
    path: /path/to/es/pv/pv1
  nodeAffinity:
    required:
      nodeSelectorTerms:
      - matchExpressions:
        - key: kubernetes.io/hostname
          operator: In
          values:
          - your-node-name
Note: your-node-name 可以通过以下指令获取
myserver@pega-minikube-poc:~/pega/srs$ kubectl get nodes
NAME       STATUS   ROLES           AGE    VERSION
minikube   Ready    control-plane   172m   v1.32.0
第三步: 在 volumeClaimTemplate  指定 StorageClass  绑定 PersistentVolume  
  volumeClaimTemplates:
  - metadata:
      name: es-vct
    spec:
      accessModes: [ "ReadWriteOnce" ]
      storageClassName: "es-local-storage"
      resources:
        requests:
          storage: 1Gi
以上便是本文的全部内容,感谢您的阅读。