Solução de problemas de acesso ao cluster no IBM Cloud Kubernetes

Resolva problemas relacionados à visualização ou ao uso do seu cluster do IBM Cloud Kubernetes verificando as permissões de acesso do usuário e a configuração do grupo de recursos.

Nuvem privada virtual Infraestrutura clássica

Não é possível encontrar um cluster. Quando você executa ibmcloud oc cluster ls, o cluster não é listado na saída. Ou você não pode trabalhar com um cluster. Quando você executa ibmcloud oc cluster config ou outros comandos específicos do cluster, o cluster não é localizado.

No IBM Cloud, cada recurso deve estar em um grupo de recursos. Por exemplo, o cluster mycluster pode existir no grupo de recursos default.

Quando o proprietário da conta conceder acesso aos recursos designando-lhe uma função de acesso à plataforma do IBM Cloud IAM, o acesso poderá ser a um recurso específico ou ao grupo de recursos. Quando você recebe acesso a um recurso específico, não é necessário acesso ao grupo de recursos. Nesse caso, você não precisa destinar um grupo de recursos para trabalhar com os clusters aos quais tem acesso. Se você destinar um grupo de recursos diferente do grupo no qual o cluster está, as ações com relação a esse cluster poderão falhar. Por outro lado, quando você recebe acesso a um recurso como parte de seu acesso a um grupo de recursos, deve-se destinar um grupo de recursos para trabalhar com um cluster nesse grupo. Se você não destinar a sua sessão da CLI para o grupo de recursos no qual o cluster está, as ações com relação a esse cluster poderão falhar.

Se não for possível localizar ou trabalhar com um cluster, você pode estar enfrentando um dos problemas a seguir:

  • Você tem acesso ao cluster e ao grupo de recursos no qual o cluster está, mas a sessão da CLI não é destinada para o grupo de recursos no qual o cluster está.
  • Você tem acesso ao cluster, mas não como parte do grupo de recursos no qual o cluster está. Sua sessão da CLI é destinada a esse ou outro grupo de recursos.
  • Você não tem acesso ao cluster.

Para verificar suas permissões de acesso de usuário:

  1. Liste todas as permissões de usuário.

    ibmcloud iam user-policies <your_user_name>
    
  2. Verifique se você tem acesso ao cluster e ao grupo de recursos no qual o cluster está.

    1. Procure uma política que tenha um valor de Nome do grupo de recursos do grupo de recursos do cluster e um valor de Memorando igual a Policy applies to the resource group. Se tiver essa política, você terá acesso ao grupo de recursos. Por exemplo, a política a seguir indica que um usuário tem acesso ao 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. Procure uma política que tenha um valor de **Nome do grupo de recursos** do grupo de recursos do cluster, um valor de **Nome do serviço** igual a `containers-kubernetes` ou nenhum valor e um valor de **Memorando** igual a `Policy applies to the resource(s) within the resource group`. Se você tiver essa política, terá acesso aos clusters ou a todos os recursos dentro do grupo de recursos. Por exemplo, a política a seguir indica que um usuário tem acesso aos clusters do 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. Se você tiver ambas as políticas, vá para a Etapa 4, primeiro marcador. Se você não tiver a política da Etapa 2a, mas tiver a política da Etapa 2b, vá para a Etapa 4, segundo marcador. Se você não tiver nenhuma dessas políticas, continue na Etapa 3.
    
    
  3. Verifique se você tem acesso ao cluster, mas não como parte de acesso ao grupo de recursos no qual o cluster está.

    1. Procure uma política que não tenha valores além dos campos ID de política e Funções. Se tiver essa política, você terá acesso ao cluster como parte do acesso à conta inteira. Por exemplo, a política a seguir indica que um usuário tem acesso a todos os recursos da conta:
        Policy ID:   8898bdfd-d520-49a7-85f8-c0d382c4934e
        Roles:       Administrator, Manager
        Resources:
        Service Name
        Service Instance
        Region
        Resource Type
        Resource
        ```
    2. Procure uma política que possua um valor de **Nome do serviço** igual a `containers-kubernetes` e um valor de **Instância de serviço** do ID do cluster. É possível localizar um ID de cluster executando `ibmcloud oc cluster get --cluster <cluster_name>`. Por exemplo, a política a seguir indica que um usuário tem acesso a um cluster 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. Se você tiver alguma dessas políticas, vá para o segundo marcador da etapa 4. Se você não tiver nenhuma dessas políticas, vá para o terceiro marcador da etapa 4.
    
    
  4. Dependendo de suas políticas de acesso, escolha uma das opções a seguir.

    • Se você tiver acesso ao cluster e ao grupo de recursos no qual o cluster está:
      1. Destine o grupo de recursos. Você não poderá trabalhar com clusters em outros grupos de recursos até que altere este grupo de recursos.
        ibmcloud target -g <resource_group>
        
      2. Direcione o cluster.
        ibmcloud oc cluster config --cluster <cluster_name_or_ID>
        
    • Se você tiver acesso ao cluster, mas não ao grupo de recursos no qual o cluster está:
      1. Não destinar um grupo de recursos. Se você já tiver como destino um grupo de recursos, remova o destino
        ibmcloud target --unset-resource-group
        
      2. Direcione o cluster.
        ibmcloud oc cluster config --cluster <cluster_name_or_ID>
        
    • Se você não tiver acesso ao cluster:
      1. Solicite que o proprietário da conta atribua a você uma função de acesso de plataforma do IAM do IBM Cloud para esse cluster.
      2. Não destinar um grupo de recursos. Se você já tiver como destino um grupo de recursos, remova o destino
        ibmcloud target --unset-resource-group
        
      3. Direcione o cluster.
        ibmcloud oc cluster config --cluster <cluster_name_or_ID>