Qu'est-ce que PersistrentVolume (PV) et persistantVolumeClaim (PVC)?
Un Volume persistant (PV) est défini comme un morceau de stockage qui a été créé manuellement ou provisionné dynamiquement via des classes de stockage dans un cluster. Il fonctionne comme une ressource de cluster de la même manière qu'un nœud fait. Les PVS sont des plugins de volume similaires aux volumes, mais leur cycle de vie est indépendant des gousses. Cet objet API suit la méthode de stockage, que ce soit NFS, ISCSI ou un système de stockage natif d'un fournisseur de cloud.
Un PersistentVolumeClaim est une demande de stockage d'un utilisateur (PVC). Il semble être un pod. Les pods consomment des ressources de nœud, tandis que les PVC consomment des ressources PV. Les pods ont la capacité de demander des niveaux de ressources qui leur sont spécifiques (CPU et mémoire).
Dans les réclamations, des modalités de taille et d'accès spécifiques peuvent être nécessaires (e.g., Ils peuvent être montés ReadOnlyMany, ReadWriteOnce, ReadWriteMany, ou voir AccessModes).
Bien que PersistrentVolumeClaims permette aux utilisateurs de consommer des ressources de stockage abstraites, il est typique pour les utilisateurs d'exiger des volumes persistants avec des fonctionnalités distinctes, telles que les performances, pour diverses situations.
Sans exposer les utilisateurs à des détails techniques, les gestionnaires de cluster doivent proposer une sélection de volumes persistants qui varient en plus d'aspects que la taille et le mode d'accès. La ressource StorageClass peut être utilisée pour répondre à ces exigences.
Prérequis:
Pour commencer, vous aurez besoin d'un cluster Kubernetes et de l'outil de ligne de commande Kubectl configuré pour se connecter avec lui. Minikube peut vous aider à configurer un cluster si vous n'en avez pas déjà. Ubuntu 20.04 a été utilisé pour implémenter les commandes de ce sujet. Nous pouvons également utiliser notre système d'exploitation préféré car nous avons déjà installé Kubectl. Il doit être installé avant que les commandes puissent être exécutées.
Lorsque l'installation est terminée, nous pouvons démarrer un terminal en utilisant l'une des deux méthodes. Une option consiste à utiliser la barre d'application de notre système d'exploitation pour atteindre le terminal. Une autre façon consiste à utiliser le raccourci clavier «Ctrl + Alt + T.«Pour démarrer un terminal, sélectionnez l'une de ces options.
Maintenant, au terminal, utilisez la commande ci-dessous pour démarrer le minikube.
$ minikube start
La sortie est attachée dans l'image affixée ci-dessus.
Étapes pour créer un fichier html sur votre nœud
Pour créer un fichier HTML, vous devrez ouvrir un shell sur le seul nœud du cluster. La façon dont vous ouvrez un shell est déterminée par la configuration de votre cluster. Si vous utilisez Minikube, la saisie de Minikube SSH ouvrira un shell sur votre nœud. Créez un répertoire A / Mnt / Data dans le shell de votre nœud.
Faire un index.fichier html. Le fichier est créé dans le répertoire / mnt / données. Si votre nœud demande un accès aux superutilisateurs via un outil autre que sudo, vous pouvez généralement avoir cette fonction en substituant Sudo par le nom de l'outil alternatif.
$ sudo sh -c "echo 'bonjour de Kubernetes Storage'> / mnt / data / index.html "
Assurez-vous que l'index.Le fichier HTML est présent. La sortie est également incluse. Vous pouvez maintenant éteindre le shell qui est attaché à votre nœud.
$ cat / mnt / data / index.html
La sortie est attachée dans l'image affixée ci-dessus.
Étapes pour créer un Volume persistant
Ici, vous pouvez découvrir les détails sur la création d'un hôte persistantVolume. Sur un cluster à un nœud, Kubernetes permet l'hôte pour le développement et les tests. Un hôte PersistentVolume utilise un fichier ou un répertoire sur le nœud pour imiter le stockage attaché au réseau.
$ nano pvc.yaml
Vous ne pourriez pas utiliser HostPath dans un cluster de production. Les administrateurs de cluster peuvent également utiliser les classes de storage pour constituer une provisioning dynamique. Le fichier de configuration HostPath PersistentVolume est le suivant:
La configuration PV diffère considérablement en fonction de votre cluster et de votre type de stockage. La commande ci-dessus montera le volume sur la machine virtuelle Minikube et est compatible avec les grappes de minikube.
Selon le fichier de configuration, le disque est stocké à l'emplacement de / mnt / données sur le nœud du cluster. La taille du volume est définie sur 10 gibytes, et le mode d'accès est défini sur ReadWriteOnce, indiquant que le volume peut toujours être monté en lecture par un nœud particulier.
Pour construire un Volume persistant, utilisez la commande suivante:
$ kubectl appliquer -f PVC.yaml
La sortie est attachée dans l'image affixée ci-dessus. Gardez à l'esprit que le PVC d'abréviation peut être utilisé pour rechercher des allégations de volume persistant. La sortie comprend le nom du PVC qui a été produit ainsi que certaines informations de base:
La sortie est attachée dans l'image affixée ci-dessus.
Supprimer le persistant Volume
La commande kubectl delete peut être utilisée pour supprimer les PVC. Pour supprimer un PVC avec Kubectl, fournissez-le par fichier ou nom.
$ kubectl supprimer le volume de tâche PV PV
La sortie est attachée dans l'image affixée ci-dessus. Veuillez garder à l'esprit que la suppression d'un PV ou d'un PVC qui est actuellement utilisé par un pod ne supprime pas immédiatement le PVC. Le nettoyage en PVC sera reporté jusqu'à ce que tous les pods aient cessé de l'utiliser.
De plus, à une époque où un administrateur supprime un PV qui est attaché à un PVC, le PV n'est pas supprimé sur place. Le PV n'est pas déconnecté du PVC jusqu'à ce qu'il ne soit plus connecté.
Conclusion:
Pour résumer, les cours de stockage à Kubernetes permettent le déploiement et la consommation de volumes persistants Ressources de stockage (PV). Les PVS sont consommés par des pods à l'aide de PVC. Cet article a expliqué comment créer et supprimer un VolumeClaim persistant pour le stockage des pods. Nous avons également fourni des sections sur la façon dont vous pouvez gérer les réclamations de volume persistant (PVC).