¿Por qué el almacenamiento en bloque cambia a solo lectura?
Solución de problemas de volúmenes de almacenamiento en bloque que pasan a ser de solo lectura.
[Nube privada virtual] {: tag-vpc} Infraestructura clásica
Es posible que note los siguientes síntomas:
- Cuando ejecuta
oc get pods -o wide, ve que varios pods del mismo nodo trabajador quedan bloqueados en el estadoContainerCreatingoCrashLoopBackOff. Todos estos pods utilizan la misma instancia de almacenamiento en bloque. - Cuando ejecuta un mandato
oc describe pod, ve el siguiente error en la sección Events:MountVolume.SetUp failed for volume ... read-only.
Si se produce un error de red mientras un pod escribe en un volumen, la infraestructura de IBM Cloud protege los datos del volumen para que no resulten dañados cambiando el volumen a una modalidad de solo lectura. Los pods que utilizan este volumen no pueden continuar escribiendo en el volumen y fallan.
Comprueba la versión del complemento, vuelve a crear tu aplicación y reinicia de forma segura tu nodo de trabajo.
- Compruebe la versión del plugin IBM Cloud Block Storage que está instalado en el clúster.
helm list --all-namespaces - Compruebe que utiliza la versión más reciente del plugin IBM Cloud Block Storage. Si no es así, actualice el plugin.
- Si ha utilizado un despliegue de Kubernetes para el pod, reinicie el pod que está fallando eliminando el pod y dejando que Kubernetes lo vuelva a crear. Si no ha utilizado un despliegue, recupere el archivo YAML que se ha utilizado para crear
el pod ejecutando
oc get pod <pod_name> -o yaml >pod.yaml. A continuación, suprima y vuelva a crear manualmente el pod.oc delete pod <pod_name> - Compruebe si volver a crear el pod ha resuelto el problema. Si no es así, vuelva a cargar el nodo trabajador.
- Busque el nodo trabajador en el que se ejecuta el pod y anote la dirección IP privada asignada al nodo trabajador.
oc describe pod <pod_name> | grep Node ``` Salida de ejemplo: ```sh {: screen} Node: 10.75.XX.XXX/10.75.XX.XXX Node-Selectors: <none> ``` 2. Recupere el **ID** del nodo trabajador utilizando la dirección IP privada del paso anterior. ```sh {: pre} ibmcloud oc worker ls --cluster CLUSTER_NAME_OR_ID ``` 3. [vuelva a cargar el nodo trabajador](/docs/openshift?topic=openshift-kubernetes-service-cli#worker-reload-cli) de forma segura.