IBM Cloud Docs
Depurando problemas de CLI comuns com clusters

Depurando problemas de CLI comuns com clusters

Virtual Private Cloud Infra-estrutura Classic

Revise os motivos comuns a seguir para problemas de conexão da CLI ou falhas de comando.

O firewall impede a execução de comandos da CLI

Quando você executa os comandos ibmcloud, kubectl, oc ou calicoctl por meio da CLI, eles falham.

Você pode ter políticas de rede corporativa que impedem o acesso de seu sistema local a terminais públicos por proxies ou firewalls.

Permita acesso TCP para os comandos da CLI funcionarem.

Essa tarefa requer a função de acesso de plataforma Administrador do IBM Cloud IAM para o cluster.

Os comandos kubectl ou oc não funcionam

Quando você executa os comandos kubectl ou oc com relação ao seu cluster, seus comandos falham com uma mensagem de erro semelhante à seguinte.

No resources found.
Error from server (NotAcceptable): unknown (get nodes)
invalid object doesn't have additional properties
error: No Auth Provider found for name "oidc"

Você possui uma versão diferente de kubectl do que sua versão de cluster.

O Kubernetes não suporta versões do cliente kubectl que sejam duas ou mais versões distantes da versão do servidor (n +/- 2). Se você usar um cluster Kubernetes da comunidade, também será possível que você tenha a versão Red Hat OpenShift de kubectl, que não funciona com os clusters Kubernetes da comunidade.

Para verificar sua versão do kubectl do cliente com relação à versão do servidor de cluster, execute oc version --short.

Instale a versão da CLI que corresponde a versão de seu cluster

Se você tiver vários clusters com versões diferentes ou plataformas de contêineres diferentes, como Red Hat OpenShift, faça o download de cada arquivo binário da versão kubectl em um diretório separado. Em seguida, é possível configurar um alias no perfil da interface da linha de comandos (CLI) local para apontar para o diretório de arquivos binário kubectl que corresponde à versão kubectl do cluster com a qual deseja trabalhar ou talvez seja possível usar uma ferramenta como brew switch kubernetes-cli <major.minor>.

Tempo limite ao tentar se conectar a um pod

Você tenta se conectar a um pod, por exemplo, efetuando login com oc exec ou obtendo logs com oc logs. O pod está em funcionamento, mas você vê uma mensagem de erro semelhante à mostrada a seguir.

Error from server: Get https://<10.xxx.xx.xxx>:<port>/<address>: dial tcp <10.xxx.xx.xxx>:<port>: connect: connection timed out

O servidor VPN está enfrentando problemas de configuração que impedem o acesso ao pod a partir de seu endereço interno.

Antes de começar: acesse o seu cluster do Red Hat OpenShift.

  1. Verifique se um cluster e atualizações do nó do trabalhador estão disponíveis visualizando os detalhes do cluster e do nó do trabalhador no console ou um comando cluster ls ou worker ls. Em caso positivo, atualize seu cluster e nós do trabalhador para a versão mais recente.
  2. Reinicie o pod VPN excluindo-o. Outro pod da VPN será planejado. Quando seu STATUS for Em execução, tente conectar o pod ao qual não foi possível se conectar anteriormente.
    oc delete pod -n kube-system -l app=vpn
    

erro 500 ao tentar fazer login em um cluster Red Hat OpenShift via oc login

Quando você tenta fazer login em um cluster Red Hat OpenShift via oc login pela primeira vez e vê uma mensagem de erro semelhante à seguinte.

$ oc login SERVER -u apikey -p <APIKEY>
The server uses a certificate signed by an unknown authority.
You can bypass the certificate check, but any data you send to the server could be intercepted by others.
Use insecure connections? (y/n): y

Error from server (InternalError): Internal error occurred: unexpected response: 500

Algumas mudanças recentes na função de usuário do IAM ainda não foram sincronizadas para o cluster Red Hat OpenShift.

Sincronize as informações do usuário do IAM para o cluster Red Hat OpenShift. Após a sincronização do usuário inicial ser realizada, a sincronização adicional do RBAC deverá ocorrer automaticamente.

Antes de Iniciar:

Acesse o seu Red Hat OpenShift cluster.

Para sincronizar as informações do IAM para o usuário, você tem 2 opções:

  • Faça login no seu cluster pelo console Red Hat OpenShift.
  • Configure seu contexto de linha de comandos para o cluster executando o comando ibmcloud oc cluster config --cluster CLUSTER.

Se você usar uma chave de API para um ID funcional ou outro usuário, certifique-se de efetuar login como o usuário correto.

Depois que o usuário impactado concluir a sincronização do IAM, o administrador do cluster poderá verificar se o usuário existe no cluster listando os usuários com o comando oc get users.

Os projetos ausentes ou comandos oc e kubectl falham

Virtual Private Cloud Infra-estrutura Classic

Você não vê todos os projetos aos quais tem acesso. Quando você tenta executar comandos oc ou kubectl, você vê um erro semelhante ao mostrado a seguir.

No resources found.
Error from server (Forbidden): <resource> is forbidden: User "IAM#user@email.com" can't list <resources> at the cluster scope: no RBAC policy matched

É necessário fazer o download dos arquivos de configuração do admin para o seu cluster para executar comandos que exigem a função de cluster cluster-admin.

Execute ibmcloud oc cluster config --cluster <cluster_name_or_ID> --admin e tente novamente.