Esta página explica como configurar o acesso ao cluster para a ferramenta de linha de comando kubectl para GKE na AWS.
Esta página é para administradores e operadores de TI que desejam configurar, monitorar e gerenciar a infraestrutura de nuvem. Para saber mais sobre funções comuns e tarefas de exemplo que mencionamos em Google Cloud conteúdo, consulte Funções e tarefas comuns do usuário do GKE Enterprise .
Visão geral
Para acessar seu GKE na AWS, você precisa configurar kubectl
. Você pode definir um cluster padrão para kubectl
definindo o contexto atual no arquivo kubeconfig
do Kubernetes. Além disso, você pode executar comandos kubectl
em um cluster específico usando a flag --cluster
.
Para obter mais informações sobre kubeconfig
e endpoints de cluster, consulte Sobre o Kubeconfig .
Antes de começar
Se você usar o gateway Connect para acesso kubectl
, deverá conceder aos usuários administradores que não são proprietários do projeto as funções do IAM descritas em Usar kubectl com identidade da CLI do gcloud .
Verifique o kubeconfig atual
Esta seção explica como verificar seu kubeconfig
atual.
Exibir contextos do kubeconfig
Para visualizar kubeconfig
do seu ambiente e todos os contextos que ele contém, execute o seguinte comando:
kubectl config view
O comando retorna uma lista de todos os clusters para os quais as entradas kubeconfig
foram geradas. Se um cluster do GKE na AWS estiver listado, você poderá executar comandos kubectl
nele no seu ambiente atual. Caso contrário, você precisará gerar uma entrada kubeconfig
para o cluster.
Veja o contexto atual para kubectl
Para visualizar o contexto atual usado pela ferramenta de linha de comando kubectl, execute o seguinte comando:
kubectl config current-context
kubectl
gera o nome do contexto atual.
Gerar uma entrada kubeconfig
Para executar comandos kubectl
em clusters do GKE, você precisa gerar uma entrada kubeconfig
. A forma como você gera um arquivo kubeconfig
depende de como você deseja se conectar ao seu cluster. Recomendamos que você use o gateway Connect . Ao usar o gateway Connect, a implantação gke-connect-agent
envia solicitações pelo Google para o plano de controle do cluster.
Para verificar quais comandos kubectl
são suportados pelo gateway Connect, consulte Limitações .
Se você quiser se conectar por meio de um endpoint privado , precisará ter uma conexão e um roteamento para o endpoint do plano de controle na sua Nuvem Privada Virtual da AWS. O kube-apiserver do cluster faz parte do plano de controle. Para enviar solicitações diretamente ao endpoint privado, talvez seja necessário ampliar as regras de firewall. Para obter mais informações sobre como se conectar ao seu plano de controle, consulte Grupos de segurança da AWS .
Conectar gateway
gcloud container aws clusters get-credentials CLUSTER_NAME \
--location GOOGLE_CLOUD_LOCATION
Substitua o seguinte:
-
CLUSTER_NAME
: o nome do seu cluster -
GOOGLE_CLOUD_LOCATION
: o Google Cloud região ou zona onde seu GKE na AWS é gerenciado
Ponto final privado
Para se conectar ao endpoint privado, você precisa de conectividade com o plano de controle do cluster. Consulte Conectar-se ao plano de controle do seu cluster .
gcloud container aws clusters get-credentials CLUSTER_NAME \
--location GOOGLE_CLOUD_LOCATION \
--private-endpoint
Substitua o seguinte:
-
CLUSTER_NAME
: o nome do seu cluster -
GOOGLE_CLOUD_LOCATION
: o Google Cloud região ou zona onde seu GKE na AWS é gerenciado
Trabalhar com vários clusters
Esta seção descreve como usar kubectl
com vários clusters do GKE.
Definir um cluster padrão para comandos kubectl
Você pode alternar o contexto atual do kubectl
para esse cluster executando:
gcloud container aws clusters get-credentials CLUSTER_NAME \
--location GOOGLE_CLOUD_LOCATION \
Substitua o seguinte:
-
CLUSTER_NAME
: o nome do seu cluster -
GOOGLE_CLOUD_LOCATION
: o Google Cloud região ou zona onde seu GKE na AWS é gerenciado
Por exemplo, considere um projeto com dois clusters, cluster-1
e cluster-2
. O contexto atual é cluster-2
. Para alternar o contexto atual de cluster-2
para cluster-1
, execute o seguinte comando:
gcloud container aws clusters get-credentials cluster-1 \
--location GOOGLE_CLOUD_LOCATION
Execute comandos kubectl individuais em um cluster específico
Você pode executar comandos kubectl
individuais em um cluster específico passando o nome do cluster como ele aparece no kubeconfig
como argumento para o sinalizador --cluster
.
Por exemplo, considere um ambiente com dois clusters, cluster-1
e cluster-2
, em que o contexto atual é cluster-1
. Você não quer alterar o contexto atual. Para obter uma lista de objetos Pod no cluster-2
sem alterar o contexto atual, execute o seguinte comando:
kubectl get pod --cluster cluster-2