Création d'un stockage Block Volume hautes performances persistant

Découvrez comment créer un volume de blocs hautes performances en tant que stockage persistant sur Private Cloud Appliance.

Si vous n'avez pas besoin de volume de blocs hautes performances, suivez les instructions de la section Création d'un stockage de volume de blocs persistant.

  1. Créez un volume de blocs hautes performances à l'aide du module d'extension CSI indiqué par la définition de classe de stockage oci-bv-high (provisioner: blockvolume.csi.oraclecloud.com).

    $ kubectl create -f csi-bvs-high.yaml

    Le contenu du fichier csi-bvs-high.yaml est le suivant :

    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: oci-bv-high
    provisioner: blockvolume.csi.oraclecloud.com
    parameters:
      vpusPerGB: "20"
      attachment-type: "paravirtualized"
    volumeBindingMode: WaitForFirstConsumer
    allowVolumeExpansion: true
    reclaimPolicy: Delete
  2. Créez une demande de volume persistant, en indiquant le nom de classe de stockage oci-bv-high.

    $ kubectl create -f csi-bvs-high-pvc.yaml

    Le contenu du fichier csi-bvs-high-pvc.yaml est le suivant :

    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: mynginxclaim-high
    spec:
      storageClassName: "oci-bv-high"
      accessModes:
        - ReadWriteOnce
      resources:
        requests:
          storage: 50Gi

    Le nom de demande de volume persistant dans la section metadata est spécifié par l'utilisateur. Vous pouvez avoir plusieurs demandes de volume persistant sur un volume persistant.

    Pour la valeur de accessModes, indiquez ReadWriteOnce. N'utilisez pas ReadWriteMany.

    La valeur de la propriété storage doit être d'au moins 50 gigaoctets.

  3. Exécutez la commande suivante pour vérifier que la demande PVC a été créée :

    $ kubectl get pvc
    NAME                STATUS   VOLUME   CAPACITY   ACCESSMODES   STORAGECLASS   AGE
    mynginxclaim-high   Pending                                    oci-bv-high    4m

    La demande de volume persistant a le statut En attente car la définition de classe de stockage oci-bv-high inclut les éléments suivants :

    volumeBindingMode: WaitForFirstConsumer
  4. Utilisez la demande de volumes persistants lors de la création d'autres objets, tels que des pods.

    Par exemple, vous avez la possibilité de créer un pod à partir de la définition suivante, qui indique au système d'utiliser la demande de volume persistant mynginxclaim-high comme volume nginx, monté par le pod dans /data :

    apiVersion: v1
    kind: Pod
    metadata:
      name: nginx-high
    spec:
      containers:
        - name: nginx
          image: nginx:latest
          ports:
            - name: http
              containerPort: 80
          volumeMounts:
            - name: data
              mountPath: /usr/share/nginx/html
      volumes:
        - name: data
          persistentVolumeClaim:
            claimName: mynginxclaim-high

    Exécutez la commande suivante pour vérifier que la demande de volume persistant a été liée à un nouveau PV :

    $ kubectl get pvc
    NAME                STATUS   VOLUME          CAPACITY   ACCESSMODES   STORAGECLASS   AGE
    mynginxclaim-high   Bound    csi-unique_ID   50Gi       RWO           oci-bv-high

    Exécutez la commande suivante pour vérifier que le pod utilise la nouvelle demande de volume persistant :

    $ kubectl describe pod nginx-high