Configure o acesso ao cluster para o kubectl

Esta página explica como configurar o acesso ao cluster para a ferramenta de linha de comandos kubectl para o GKE no Azure.

Esta página destina-se a administradores de TI e operadores que querem configurar, monitorizar e gerir a infraestrutura na nuvem. Para saber mais sobre as funções comuns e exemplos de tarefas que referimos no Google Cloud conteúdo, consulte Funções e tarefas comuns do utilizador do GKE.

Vista geral

Para aceder ao GKE no Azure, tem de configurar o kubectl. Pode predefinir um cluster para kubectl definindo o contexto atual no ficheiro kubeconfig do Kubernetes. Além disso, pode executar kubectlcomandos--cluster num cluster específico através da flag --cluster.

Para mais informações sobre os pontos finais kubeconfig e de cluster, consulte o artigo Acerca do Kubeconfig.

Antes de começar

Se usar o gateway de ligação para acesso kubectl, tem de conceder aos utilizadores administradores que não são proprietários do projeto as funções do IAM descritas no artigo Use kubectl with identity from the gcloud CLI (Use o kubectl com a identidade da CLI gcloud).

Verifique o kubeconfig atual

Esta secção explica como verificar o seu kubeconfig atual.

Veja contextos kubeconfig

Para ver o kubeconfig do seu ambiente e todos os contextos que contém, execute o seguinte comando:

kubectl config view

O comando devolve uma lista de todos os clusters para os quais foram geradas entradas kubeconfig. Se for apresentado um cluster do GKE no Azure, pode executar comandos kubectl contra o mesmo no seu ambiente atual. Caso contrário, tem de gerar uma entrada kubeconfig para o cluster.

Veja o contexto atual do kubectl

Para ver o contexto atual que a ferramenta de linha de comandos kubectl usa, execute o seguinte comando:

kubectl config current-context

kubectl produz o nome do contexto atual.

Gere uma entrada kubeconfig

Para executar comandos kubectl em clusters do GKE, tem de gerar uma entrada kubeconfig. A forma como gera um ficheiro kubeconfig depende da forma como quer estabelecer ligação ao cluster. Recomendamos que use o Connect gateway. Quando usa o gateway Connect, a implementação gke-connect-agent envia pedidos através da Google para o plano de controlo do cluster.

Para verificar que comandos kubectl são suportados pela gateway Connect, consulte as Limitações.

Se quiser estabelecer ligação através de um ponto final privado, tem de ter uma ligação e encaminhamento para o ponto final do plano de controlo na sua Rede virtual do Azure. O kube-apiserver do cluster faz parte do painel de controlo. Para enviar pedidos diretamente para o ponto final privado, pode ter de alargar as regras da firewall. Para mais informações sobre como se ligar ao seu plano de controlo, consulte o artigo Grupos de segurança de rede.

Ligue o gateway

gcloud container azure clusters get-credentials CLUSTER_NAME \
  --location GOOGLE_CLOUD_LOCATION

Substitua o seguinte:

  • CLUSTER_NAME: o nome do seu cluster
  • GOOGLE_CLOUD_LOCATION: a região ou a zona onde o GKE no Azure é gerido Google Cloud

Ponto final privado

Para estabelecer ligação ao ponto final privado, precisa de conectividade ao plano de controlo do cluster. Consulte o artigo Ligue-se ao plano de controlo do cluster.

gcloud container azure clusters get-credentials CLUSTER_NAME \
  --location GOOGLE_CLOUD_LOCATION \
  --private-endpoint

Substitua o seguinte:

  • CLUSTER_NAME: o nome do seu cluster
  • GOOGLE_CLOUD_LOCATION: a região ou a zona onde o GKE no Azure é gerido Google Cloud

Trabalhe com vários clusters

Esta secção descreve como usar o kubectl com vários clusters do GKE.

Defina um cluster predefinido para comandos kubectl

Pode mudar o contexto atual do kubectl para esse cluster executando o seguinte comando:

gcloud container azure clusters get-credentials CLUSTER_NAME \
  --location GOOGLE_CLOUD_LOCATION \

Substitua o seguinte:

  • CLUSTER_NAME: o nome do seu cluster
  • GOOGLE_CLOUD_LOCATION: a região ou a zona onde o GKE no Azure é gerido Google Cloud

Por exemplo, considere um projeto com dois clusters, cluster-1 e cluster-2. O contexto atual é cluster-2. Para mudar o contexto atual de cluster-2 para cluster-1, execute o seguinte comando:

gcloud container azure clusters get-credentials cluster-1 \
  --location GOOGLE_CLOUD_LOCATION

Executar comandos kubectl individuais num cluster específico

Pode executar comandos kubectlindividuais num cluster específico transmitindo o nome do cluster , tal como aparece em kubeconfig, como argumento para a flag --cluster.

Por exemplo, considere um ambiente com dois clusters, cluster-1 e cluster-2, no qual o contexto atual é cluster-1. Não quer alterar o contexto atual. Para obter uma lista de objetos Pod em cluster-2 sem alterar o contexto atual, execute o seguinte comando:

kubectl get pod --cluster cluster-2