3.2. Cycle de vie d’un volume et d’une revendication
Les PVS sont des ressources dans le cluster. Les PVC sont des demandes pour ces ressources et agissent également comme des vérifications de réclamation de la ressource. L’interaction entre les PV et les PVC a le cycle de vie suivant.
3.2.1. Entreposage des provisions Copier lienLien copié sur presse-papiers!
En réponse aux demandes d’un développeur défini dans un PVC, un administrateur de cluster configure un ou plusieurs provisionneurs dynamiques qui fournissent un stockage et un PV correspondant.
3.2.2. Lier les revendications Copier lienLien copié sur presse-papiers!
Lorsque vous créez un PVC, vous demandez une quantité spécifique de stockage, spécifiez le mode d’accès requis et créez une classe de stockage pour décrire et classer le stockage. La boucle de commande dans les montres principales pour les nouveaux PVC et lie le nouveau PVC à un PV approprié. En cas d’absence d’un PV approprié, un provisionneur pour la classe de stockage en crée un.
La taille de tous les PV pourrait dépasser votre taille de PVC. Cela est particulièrement vrai avec les PV fournis manuellement. Afin de minimiser l’excès, OpenShift Dedicated se lie au plus petit PV qui correspond à tous les autres critères.
Les réclamations restent illimitées si un volume correspondant n’existe pas ou ne peut pas être créé avec un fournisseur disponible desservant une classe de stockage. Les revendications sont liées au fur et à mesure que les volumes correspondants deviennent disponibles. À titre d’exemple, un cluster avec de nombreux volumes 50Gi fournis manuellement ne correspondrait pas à un PVC demandant 100Gi. Le PVC peut être lié lorsqu’un PV 100Gi est ajouté au cluster.
3.2.3. Employez des gousses et des PV revendiqués Copier lienLien copié sur presse-papiers!
Les pods utilisent les revendications comme volumes. Le cluster inspecte la revendication pour trouver le volume lié et monte ce volume pour un pod. Dans le cas des volumes qui prennent en charge plusieurs modes d’accès, vous devez spécifier quel mode s’applique lorsque vous utilisez la revendication comme volume dans un pod.
Lorsque vous avez une réclamation et que cette revendication est liée, le PV lié vous appartient aussi longtemps que vous en avez besoin. Il est possible de programmer des pods et d’accéder aux PV revendiqués en incluant persistantVolumeClaim dans le bloc volumes du pod.
Lorsque vous attachez des volumes persistants qui ont un nombre élevé de fichiers à des pods, ces gousses peuvent échouer ou peuvent prendre beaucoup de temps pour démarrer. Lorsque vous utilisez des volumes persistants avec des nombres de fichiers élevés dans OpenShift, pourquoi les pods ne commencent-ils pas ou prennent-ils trop de temps pour atteindre l’état « Ready »?
3.2.4. Libérer un volume persistant Copier lienLien copié sur presse-papiers!
Lorsque vous avez terminé avec un volume, vous pouvez supprimer l’objet PVC de l’API, ce qui permet la récupération de la ressource. Le volume est considéré comme libéré lorsque la revendication est supprimée, mais il n’est pas encore disponible pour une autre revendication. Les données du demandeur précédent restent sur le volume et doivent être traitées conformément à la politique.
3.2.5. La politique de récupération des volumes persistants Copier lienLien copié sur presse-papiers!
La politique de récupération d’un volume persistant indique au cluster ce qu’il faut faire avec le volume après sa sortie. La politique de récupération d’un volume peut être Retain, Recycle ou Supprimer.
- La stratégie de récupération permet la récupération manuelle de la ressource pour les plugins de volume qui la prennent en charge.
- La politique de recyclage recycle le volume dans le bassin de volumes persistants non liés une fois qu’il est libéré de sa réclamation.
La politique de récupération de recyclage est obsolète dans OpenShift Dedicated 4. Le provisionnement dynamique est recommandé pour une fonctionnalité équivalente et améliorée.
- La stratégie de récupération supprime à la fois l’objet PersistentVolume d’OpenShift Dedicated et l’actif de stockage associé dans l’infrastructure externe, comme Amazon Elastic Block Store (Amazon EBS) ou VMware vSphere.
Les volumes provisionnés dynamiquement sont toujours supprimés.
3.2.6. La récupération d’un volume persistant manuellement Copier lienLien copié sur presse-papiers!
Lorsqu’une revendication de volume persistant (PVC) est supprimée, le volume persistant (PV) existe toujours et est considéré comme « libéré ». Cependant, le PV n’est pas encore disponible pour une autre demande parce que les données du précédent demandeur restent sur le volume.
Procédure
De récupérer manuellement le PV en tant qu’administrateur de cluster:
Efface le PV.
oc delete pv <pv-name>
$ oc delete pv <pv-name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow L’actif de stockage associé dans l’infrastructure externe, tel qu’un volume AWS EBS ou GCE PD, existe toujours après la suppression du PV.
- Nettoyer les données sur l’actif de stockage associé.
- Effacer l’actif de stockage associé. Alternativement, pour réutiliser le même actif de stockage, créez un nouveau PV avec la définition de l’actif de stockage.
Le PV récupéré est maintenant disponible pour une utilisation par un autre PVC.
3.2.7. Changer la politique de récupération d’un volume persistant Copier lienLien copié sur presse-papiers!
Changer la politique de récupération d’un volume persistant:
Énumérez les volumes persistants de votre cluster:
oc get pv
$ oc get pv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie
NAME CAPACITY ACCESSMODES RECLAIMPOLICY STATUS CLAIM STORAGECLASS REASON AGE pvc-b6efd8da-b7b5-11e6-9d58-0ed433a7dd94 4Gi RWO Delete Bound default/claim1 manual 10s pvc-b95650f8-b7b5-11e6-9d58-0ed433a7dd94 4Gi RWO Delete Bound default/claim2 manual 6s pvc-bb3ca71d-b7b5-11e6-9d58-0ed433a7dd94 4Gi RWO Delete Bound default/claim3 manual 3s
NAME CAPACITY ACCESSMODES RECLAIMPOLICY STATUS CLAIM STORAGECLASS REASON AGE pvc-b6efd8da-b7b5-11e6-9d58-0ed433a7dd94 4Gi RWO Delete Bound default/claim1 manual 10s pvc-b95650f8-b7b5-11e6-9d58-0ed433a7dd94 4Gi RWO Delete Bound default/claim2 manual 6s pvc-bb3ca71d-b7b5-11e6-9d58-0ed433a7dd94 4Gi RWO Delete Bound default/claim3 manual 3s
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Choisissez un de vos volumes persistants et modifiez sa politique de récupération:
oc patch pv <your-pv-name> -p '{"spec":{"persistentVolumeReclaimPolicy":"Retain"}}'
$ oc patch pv <your-pv-name> -p '{"spec":{"persistentVolumeReclaimPolicy":"Retain"}}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Assurez-vous que votre volume persistant choisi a la bonne politique:
oc get pv
$ oc get pv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie
NAME CAPACITY ACCESSMODES RECLAIMPOLICY STATUS CLAIM STORAGECLASS REASON AGE pvc-b6efd8da-b7b5-11e6-9d58-0ed433a7dd94 4Gi RWO Delete Bound default/claim1 manual 10s pvc-b95650f8-b7b5-11e6-9d58-0ed433a7dd94 4Gi RWO Delete Bound default/claim2 manual 6s pvc-bb3ca71d-b7b5-11e6-9d58-0ed433a7dd94 4Gi RWO Retain Bound default/claim3 manual 3s
NAME CAPACITY ACCESSMODES RECLAIMPOLICY STATUS CLAIM STORAGECLASS REASON AGE pvc-b6efd8da-b7b5-11e6-9d58-0ed433a7dd94 4Gi RWO Delete Bound default/claim1 manual 10s pvc-b95650f8-b7b5-11e6-9d58-0ed433a7dd94 4Gi RWO Delete Bound default/claim2 manual 6s pvc-bb3ca71d-b7b5-11e6-9d58-0ed433a7dd94 4Gi RWO Retain Bound default/claim3 manual 3s
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Dans la sortie précédente, le volume lié à la réclamation par défaut3 a maintenant une politique de récupération de retenue. Le volume ne sera pas automatiquement supprimé lorsqu’un utilisateur supprime la réclamation par défaut/claim3.