¿Por qué mi pod de app está atascado en Container creating al intentar montar File Storage for VPC?

Solucionar problemas relacionados con la creación de contenedores de archivos en clústeres VPC.

Cuando intentas desplegar una aplicación que utiliza File Storage for VPC ves uno o más de los siguientes mensajes de error.

Mandato de ejemplo para obtener los registros del controlador ibm-vpc-file-csi.

kubectl logs ibm-vpc-file-csi-node-xxx -n kube-system -c iks-vpc-file-node-driver

Salida de ejemplo con mensaje de error.

ibmcsidriver/node.go:94","msg":"CSINodeServer-NodePublishVolume..."
ibmcsidriver/node.go:160","msg":"CSINodeServer-NodeUnpublishVolume..."

Mandato describe pod de ejemplo.

kubectl describe pod ibm-vpc-file-csi-node-xxx -n kube-system -c iks-vpc-file-node-driver

Salida de ejemplo con mensaje de error.

Warning FailedMount 68s kubelet MountVolume.SetUp failed for volume "pvc-c37fe511-ec6d-44c1-8c55-1b5e2c21ec5b" : rpc error: code = DeadlineExceeded desc = context deadline exceeded
Warning FailedMount 65s kubelet Unable to attach or mount volumes: unmounted volumes=[test-persistent-storage], unattached volumes=[], failed to process volumes=[]: timed out waiting for the condition

Mandato de ejemplo para obtener los registros de pipelineruns.

kubectl logs cat -n pipelineruns

Salida de ejemplo con mensaje de error.

Error from server (BadRequest): container "cat" in pod "cat" is waiting to start: ContainerCreating

Una interrupción temporal de la red puede hacer que las comparticiones de archivos sean inalcanzables y desmontables.

Siga estos pasos para resolver el problema.

En las versiones 4.11 y posteriores se introdujeron nuevas reglas de grupos de seguridad. Estos cambios en las reglas significan que debe sincronizar sus grupos de seguridad antes de poder utilizar File Storage for VPC. Si su clúster se creó inicialmente con la versión 4.11 o anterior, ejecute los siguientes comandos para sincronizar la configuración de su grupo de seguridad.

  • Si su clúster se creó inicialmente con la versión 4.11 o anterior:

    1. Consigue el ID de tu clúster.
        ibmcloud oc cluster ls
        ```
    1. Obtiene el ID del grupo de seguridad `kube-<clusterID>`.
    ```sh {: pre}
        ibmcloud is sg kube-<cluster-id>  | grep ID
        ```
    1. Sincronice el grupo de seguridad `kube-<clusterID>` utilizando el ID que recuperó en el paso anterior.
    ```sh {: pre}
        ibmcloud ks security-group sync -c <cluster ID> --security-group <ID>
        ```
    
  • Si su clúster se creó con la versión 4.11 y posteriores, compruebe que el nodo trabajador donde se despliega el pod está incluido en la lista de permitidos del grupo de seguridad VNI.

  1. Si el problema persiste, póngase en contacto con soporte. Abra un caso de soporte. En los detalles del caso, asegúrese de incluir los archivos de registro relevantes, los mensajes de error o las salidas de mandato.