Les applications avec état, par exemple les bases de données, enregistrent les données entre les sessions et nécessitent un stockage persistant pour stocker les données. Les données conservées sont appelées l'état de l'application. Vous pouvez ensuite récupérer les données et les utiliser lors de la prochaine session. Kubernetes offre des volumes persistants en tant qu'objets pouvant conserver leur état et leurs données.
Dans l'environnement vSphere, les objets de volume persistant sont sauvegardés par des disques virtuels résidant sur des banques de données. Les banques de données sont représentées par des stratégies de stockage. Une fois que l'administrateur vSphere a créé une stratégie de stockage, par exemple Gold et l'attribue à un espace de noms dans un Superviseur, la stratégie de stockage s'affiche comme une classe de stockage Kubernetes correspondante dans l'Espace de noms vSphere et tous les clusters TKG disponibles.
En tant qu'ingénieur DevOps, vous pouvez utiliser la classe de stockage dans vos spécifications de réclamation de volume persistant. Vous pouvez ensuite déployer une application qui utilise le stockage à partir de la réclamation de volume persistant. Dans cet exemple, le volume persistant de l'application est créé dynamiquement.
Conditions préalables
Assurez-vous que votre administrateur vSphere a créé une stratégie de stockage appropriée et l'a attribuée à l'espace de noms.
Procédure
- Accédez à votre espace de noms dans l'environnement vSphere Kubernetes.
- Vérifiez que les classes de stockage sont disponibles.
- Créez une réclamation de volume persistant.
- Créez un fichier YAML contenant la configuration de réclamation de volume persistant.
Dans cet exemple, le fichier fait référence à la classe de stockage gold.Pour provisionner un volume persistant ReadWriteMany, définissez
accessModes
surReadWriteMany
.apiVersion: v1 kind: PersistentVolumeClaim metadata: name: my-pvc spec: accessModes: - ReadWriteOnce storageClassName: gold resources: requests: storage: 3Gi
- Appliquez la réclamation de volume persistant au cluster TKG.
kubectl apply -f pvc_name.yaml
Cette commande crée dynamiquement un volume persistant Kubernetes et un volume vSphere avec un disque virtuel de sauvegarde qui répond aux exigences de stockage de la réclamation. - Vérifiez l'état de la réclamation du volume persistant.
kubectl get pvc my-pvc
Les résultats indiquent que le volume est lié à la réclamation de volume persistant.
NAME STATUS VOLUME CAPACITY ACCESSMODES STORAGECLASS AGE my-pvc Bound my-pvc 2Gi RWO gold 30s
- Créez un fichier YAML contenant la configuration de réclamation de volume persistant.
- Créez un espace qui monte votre volume persistant.
- Créez un fichier YAML incluant le volume persistant.
Le fichier contient ces paramètres.
... volumes: - name: my-pvc persistentVolumeClaim: claimName: my-pvc
- Déployez l'espace à partir du fichier YAML.
kubectl create -f pv_pod_name.yaml
- Vérifiez que l'espace a été créé.
kubectl get pod
NAME READY STATUS RESTARTS AGE pod_name 1/1 Ready 0 40s
- Créez un fichier YAML incluant le volume persistant.
Résultats
L'espace que vous avez configuré utilise un stockage persistant décrit dans la réclamation de volume persistant.