Utilisez un disque cloud préexistant comme volume provisionné statiquement pour vos charges de travail. Créez manuellement un PersistentVolume (PV) pour le disque cloud, liez ce PV à une PersistentVolumeClaim (PVC), puis montez le volume dans un pod.
Prérequis
Créez un disque de données vide dans la console Elastic Compute Service (ECS). Pour plus d'informations, consultez la rubrique Créer un disque de données vide.
Le disque cloud doit se trouver dans la même région et la même zone que le cluster, et son état doit être Available.
Utiliser un volume de disque cloud avec un PV et une PVC
-
Créez un PV de disque cloud.
Créez un PV de disque cloud à l'aide d'un manifeste YAML ou via la console Container Service for Kubernetes (ACK).
-
Créez un PV à l'aide d'un manifeste YAML.
-
Créez un fichier nommé
disk-pv.yamlcontenant les éléments suivants :apiVersion: v1 kind: PersistentVolume metadata: name: d-bp1j17ifxfasvts3**** labels: failure-domain.beta.kubernetes.io/zone: cn-hangzhou-b failure-domain.beta.kubernetes.io/region: cn-hangzhou spec: capacity: storage: 20Gi storageClassName: disk accessModes: - ReadWriteOnce flexVolume: driver: "alicloud/disk" fsType: "ext4" options: volumeId: "d-bp1j17ifxfasvts3****"RemarqueLe nom du PV (
name) doit correspondre à l'ID du disque cloud (volumeId). Remplacez les autres valeurs d'exemple par celles de votre disque cloud. -
Exécutez la commande suivante pour créer le PV.
kubectl apply -f disk-pv.yaml
-
-
Créez un PV dans la console ACK.
Connectez-vous à la console ACK. Dans le volet de navigation de gauche, cliquez sur Clusters.
Sur la page Clusters, cliquez sur le nom du cluster cible ou sur Details dans la colonne Actions.
Dans le volet de navigation de gauche, choisissez Volumes > Persistent Volumes.
Sur la page Persistent Volumes, cliquez sur Create dans le coin supérieur droit.
-
Dans la boîte de dialogue Create PV, configurez les paramètres du volume.
Parameter
Description
PV Type
Dans cet exemple, sélectionnez cloud disk.
Volume Plug-in
Dans cet exemple, sélectionnez Flexvolume.
Access Mode
La valeur par défaut est ReadWriteOnce.
Disk ID:
Sélectionnez le disque cloud que vous avez préparé.
File System Type:
Sélectionnez le type de système de fichiers. Les valeurs valides sont ext4, ext3, xfs et vfat. La valeur par défaut est ext4.
Labels
Ajoutez des libellés au volume.
Une fois les paramètres configurés, cliquez sur Create.
-
-
Créez une PVC.
-
Créez un fichier nommé
disk-pvc.yamlcontenant les éléments suivants :kind: PersistentVolumeClaim apiVersion: v1 metadata: name: pvc-disk spec: accessModes: - ReadWriteOnce storageClassName: disk resources: requests: storage: 20Gi -
Exécutez la commande suivante pour créer la PVC.
kubectl apply -f disk-pvc.yaml
-
-
Créez un pod à l'aide d'un StatefulSet.
-
Créez un fichier nommé
disk-pod.yamlcontenant les éléments suivants afin de définir un Service et un StatefulSet qui montent la PVCpvc-disksur le chemin/data:apiVersion: v1 kind: Service metadata: name: nginx labels: app: nginx spec: ports: - port: 80 name: web clusterIP: None selector: app: nginx --- apiVersion: apps/v1 kind: StatefulSet metadata: name: web spec: selector: matchLabels: app: nginx serviceName: "nginx" template: metadata: labels: app: nginx spec: containers: - name: nginx image: nginx ports: - containerPort: 80 name: web volumeMounts: - name: pvc-disk mountPath: /data volumes: - name: pvc-disk persistentVolumeClaim: claimName: pvc-disk -
Exécutez la commande suivante pour créer le pod.
kubectl apply -f disk-pod.yaml
-