Pourquoi le stockage par blocs passe-t-il en lecture seule ?
Dépannage des volumes de stockage en bloc devenus en lecture seule.
Cloud privé virtuel Infrastructure classique
Vous pouvez observer les symptômes suivants :
- Lorsque vous exécutez la commande
oc get pods -o wide, vous voyez que plusieurs pods sur le même noeud worker sont bloqués à l'étatContainerCreatingouCrashLoopBackOff. Tous ces pods utilisent la même instance de stockage par blocs. - Lorsque vous exécutez une commande
oc describe pod, vous voyez s'afficher l'erreur suivante dans la section Events :MountVolume.SetUp failed for volume ... read-only.
Si une erreur réseau se produit lorsqu'un pod effectue une opération d'écriture dans un volume, l'infrastructure IBM Cloud protège les données sur le volume de toute corruption en faisant passer le volume en mode lecture seule. Les pods qui utilisent ce volume ne peuvent pas continuer à écrire sur le volume et échouent.
Vérifiez la version du plug-in, recréez votre application, puis rechargez votre nœud de travail en toute sécurité.
- Vérifiez la version du plug-in IBM Cloud de stockage par blocs qui est installée dans votre cluster.
helm list --all-namespaces - Vérifiez que vous utilisez la dernière version du plug-in IBM Cloud Block Storage. Si ce n'est pas le cas, mettez votre plug-in à jour.
- Si vous avez utilisé un déploiement Kubernetes pour votre pod, redémarrez le pod en échec en le retirant et en laissant Kubernetes le recréer. Si vous n'avez pas utilisé de déploiement, récupérez le fichier YAML qui a été utilisé pour créer
votre pod en exécutant
oc get pod <pod_name> -o yaml >pod.yaml. Ensuite, supprimez le pod et recréez-le manuellement.oc delete pod <pod_name> - Vérifiez si le fait de recréer votre pod a résolu le problème. Dans le cas contraire, rechargez le noeud worker.
- Retrouvez dans quel noeud worker s'exécute votre pod et notez l'adresse IP privée affectée à votre noeud worker.
oc describe pod <pod_name> | grep Node ``` Exemple de sortie : ```sh {: screen} Node: 10.75.XX.XXX/10.75.XX.XXX Node-Selectors: <none> ``` 2. Récupérez l'**ID** de votre noeud worker en utilisant l'adresse IP privée que vous avez obtenue à l'étape précédente. ```sh {: pre} ibmcloud oc worker ls --cluster CLUSTER_NAME_OR_ID ``` 3. [rechargez le noeud worker](/docs/openshift?topic=openshift-kubernetes-service-cli#worker-reload-cli) en toute sécurité.