Skip to main content
Uma versão mais recente deste produto está disponível.
O português é fornecido por meio de tradução automática para sua conveniência. O inglês precede o português em caso de inconsistências.

Provisionar um volume

Colaboradores

Crie um Persistentvolume (PV) e um PersistentVolumeClaim (PVC) que use o Kubernetes StorageClass configurado para solicitar acesso ao PV. Em seguida, pode montar o PV num pod.

Visão geral

A "Persistentvolume" (PV) é um recurso de armazenamento físico provisionado pelo administrador de cluster em um cluster do Kubernetes. O "PersistentVolumeClaim" (PVC) é um pedido de acesso ao Persistentvolume no cluster.

O PVC pode ser configurado para solicitar o armazenamento de um determinado tamanho ou modo de acesso. Usando o StorageClass associado, o administrador do cluster pode controlar mais do que o Persistentvolume e o modo de acesso, como desempenho ou nível de serviço.

Depois de criar o PV e o PVC, você pode montar o volume em um pod.

Manifestos de amostra

Persistentvolume Sample MANIFEST

Este manifesto de exemplo mostra um PV básico de 10Gi que está associado ao StorageClass . basic-csi

apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv-storage
  labels:
    type: local
spec:
  storageClassName: basic-csi
  capacity:
    storage: 10Gi
  accessModes:
    - ReadWriteOnce
  hostPath:
    path: "/my/host/path"
PersistentVolumeClaim amostra de manifesto

Este exemplo mostra um PVC básico com acesso RWO associado a um StorageClass basic-csi chamado .

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: pvc-storage
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 1Gi
  storageClassName: basic-csi
Amostra de manifesto do pod
kind: Pod
apiVersion: v1
metadata:
  name: pv-pod
spec:
  volumes:
    - name: pv-storage
      persistentVolumeClaim:
       claimName: basic
  containers:
    - name: pv-container
      image: nginx
      ports:
        - containerPort: 80
          name: "http-server"
      volumeMounts:
        - mountPath: "/my/mount/path"
          name: pv-storage

Crie o PV e o PVC

Passos
  1. Crie o PV.

    kubectl create -f pv.yaml
  2. Verifique o estado do PV.

    kubectl get pv
    NAME        CAPACITY  ACCESS MODES  RECLAIM POLICY  STATUS    CLAIM  STORAGECLASS  REASON  AGE
    pv-storage  4Gi       RWO           Retain          Available                              7s
  3. Crie o PVC.

    kubectl create -f pvc.yaml
  4. Verifique o estado do PVC.

    kubectl get pvc
    NAME        STATUS VOLUME     CAPACITY ACCESS MODES STORAGECLASS AGE
    pvc-storage Bound  pv-name 2Gi      RWO                       5m
  5. Monte o volume num pod.

    kubectl create -f pv-pod.yaml
    Observação Pode monitorizar o progresso utilizando `kubectl get pod --watch`o .
  6. Verifique se o volume está montado no /my/mount/path.

    kubectl exec -it task-pv-pod -- df -h /my/mount/path
  7. Agora você pode excluir o Pod. O aplicativo Pod não existirá mais, mas o volume permanecerá.

    kubectl delete pod task-pv-pod

"Objetos Kubernetes e Trident"Consulte para obter detalhes sobre como as classes de storage interagem com os PersistentVolumeClaim parâmetros e para controlar como o Astra Trident provisiona volumes.