Solución de problemas de acceso a clústeres en IBM Cloud Kubernetes

Resuelve los problemas relacionados con la visualización o el uso de tu clúster de IBM Cloud Kubernetes comprobando tus permisos de acceso de usuario y la configuración del grupo de recursos.

Nube privada virtual Infraestructura clásica

No se encuentra ningún clúster. Cuando ejecuta ibmcloud oc cluster ls, el clúster no aparece en la lista de salida. O no puedes trabajar con un clúster. Cuando ejecuta ibmcloud oc cluster config u otros mandatos específicos de clúster, no se encuentra el clúster.

En IBM Cloud, cada recurso debe estar en un grupo de recursos. Por ejemplo, es posible que el clúster mycluster exista en el grupo de recursos default.

Cuando el propietario de la cuenta le da acceso a los recursos asignándole un rol de acceso a la plataforma de IBM Cloud IAM, el acceso puede ser para un recurso específico o para el grupo de recursos. Cuando se le da acceso a un recurso específico, no tiene acceso al grupo de recursos. En este caso, no es necesario que tenga como destino un grupo de recursos para trabajar con los clústeres a los que tiene acceso. Si tiene como destino un grupo de recursos distinto al del grupo en el que se encuentra el clúster, las acciones sobre dicho clúster pueden fallar. Por el contrario, si se le da acceso a un recurso como parte de su acceso a un grupo de recursos, debe elegir como destino un grupo de recursos para poder trabajar con un clúster de dicho grupo. Si no elige como destino de la sesión de CLI el grupo de recursos en el que se encuentra el clúster, las acciones sobre dicho clúster pueden fallar.

Si no puede encontrar o trabajar con un clúster, es posible que esté experimentando uno de los problemas siguientes:

  • Tiene acceso al clúster y al grupo de recursos en el que se encuentra el clúster, pero la sesión de CLI no tiene como destino el grupo de recursos en el que se encuentra el clúster.
  • Tiene acceso al clúster, pero no como parte del grupo de recursos en el que se encuentra el clúster. La sesión de CLI tiene como destino este u otro grupo de recursos.
  • No tiene acceso al clúster.

Para comprobar sus permisos de acceso de usuario:

  1. Liste todos los permisos de usuario.

    ibmcloud iam user-policies <your_user_name>
    
  2. Compruebe si tiene acceso al clúster y al grupo de recursos en el que se encuentra el clúster.

    1. Busque una política que tenga el valor Resource Group Name del grupo de recursos del clúster y el valor Memo para Policy applies to the resource group. Si tiene esta política, tiene acceso al grupo de recursos. Por ejemplo, la siguiente política indica que un usuario tiene acceso al grupo de recursos test-rg:
        Policy ID:   3ec2c069-fc64-4916-af9e-e6f318e2a16c
        Roles:       Viewer
        Resources:
        Resource Group ID     50c9b81c983e438b8e42b2e8eca04065
        Resource Group Name   test-rg
        Memo                  Policy applies to the resource group
        ```
    2. Busque una política que tenga el valor **Resource Group Name** del grupo de recursos del clúster, para **Service Name** tenga el valor `containers-kubernetes` o ningún valor y tenga el valor **Memo** para `Policy applies to the resource(s) within the resource group`. Si dispone de esta política, tendrá acceso a los clústeres o a todos los recursos del grupo de recursos. Por ejemplo, la siguiente política indica que un usuario tiene acceso a los clústeres del grupo de recursos `test-rg`:
    ```sh {: screen}
        Policy ID:   e0ad889d-56ba-416c-89ae-a03f3cd8eeea
        Roles:       Administrator
        Resources:
        Resource Group ID     a8a12accd63b437bbd6d58fb6a462ca7
        Resource Group Name   test-rg
        Service Name          containers-kubernetes
        Service Instance
        Region
        Resource Type
        Resource
        Memo                  Policy applies to the resource(s) within the resource group
        ```
    3. Si tiene estas dos políticas, salte al primer punto del paso 4. Si no tiene la política del paso 2a, pero sí tiene la política del paso 2b, salte al segundo punto del paso 4. Si no tiene ninguna de estas políticas, continúe en el Paso 3.
    
    
  3. Compruebe si tiene acceso al clúster, pero no como parte del acceso al grupo de recursos en el que se encuentra el clúster.

    1. Busque una política que no tenga ningún valor junto a los campos Policy ID y Roles. Si tiene esta política, tiene acceso al clúster como parte del acceso a toda la cuenta. Por ejemplo, la siguiente política indica que un usuario tiene acceso a todos los recursos de la cuenta:
        Policy ID:   8898bdfd-d520-49a7-85f8-c0d382c4934e
        Roles:       Administrator, Manager
        Resources:
        Service Name
        Service Instance
        Region
        Resource Type
        Resource
        ```
    2. Busque una política que tenga para **Service Name** el valor `containers-kubernetes` y para **Service Instance** el valor del ID del clúster. Puede encontrar un ID de clúster ejecutando `ibmcloud oc cluster get --cluster <cluster_name>`. Por ejemplo, la siguiente política indica que un usuario tiene acceso a un clúster específico:
    ```sh {: screen}
        Policy ID:   140555ce-93ac-4fb2-b15d-6ad726795d90
        Roles:       Administrator
        Resources:
        Service Name       containers-kubernetes
        Service Instance   df253b6025d64944ab99ed63bb4567b6
        Region
        Resource Type
        Resource
        ```
    3. Si tiene alguna de estas políticas, omita el segundo punto del paso 4. Si no tiene ninguna de estas políticas, omita el tercer punto del paso 4.
    
    
  4. En función de las políticas de acceso, elija una de las opciones siguientes.

    • Si tiene acceso al clúster y al grupo de recursos en el que se encuentra el clúster:
      1. Elija como destino el grupo de recursos. No podrás trabajar con clústeres de otros grupos de recursos hasta que modifiques este grupo de recursos.
        ibmcloud target -g <resource_group>
        
      2. Elija el clúster como destino.
        ibmcloud oc cluster config --cluster <cluster_name_or_ID>
        
    • Si tiene acceso al clúster pero no al grupo de recursos en el que se encuentra el clúster:
      1. No elija como destino un grupo de recursos. Si ya ha establecido como destino un grupo de recursos, elimine el destino.
        ibmcloud target --unset-resource-group
        
      2. Elija el clúster como destino.
        ibmcloud oc cluster config --cluster <cluster_name_or_ID>
        
    • Si no tiene acceso al clúster:
      1. Solicite al propietario de la cuenta que le asigne un rol de acceso a la plataforma de IBM Cloud IAM para ese clúster.
      2. No elija como destino un grupo de recursos. Si ya ha establecido como destino un grupo de recursos, elimine el destino.
        ibmcloud target --unset-resource-group
        
      3. Elija el clúster como destino.
        ibmcloud oc cluster config --cluster <cluster_name_or_ID>