Esta documentação é referente à versão mais recente do GKE no Azure, lançada em novembro de 2021. Consulte as Notas de lançamento para mais informações.
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Conectar grupos do Google ao GKE no Azure
Neste documento, descrevemos como se conectar ao GKE no Azure como membro de um
grupo do Google.
Usar os Grupos do Google para conceder acesso ao cluster é mais eficiente do que criar autorizações separadas para usuários individuais. Por exemplo, digamos que você queira adicionar 50 usuários ao grupo de administradores de clusters, 75 usuários a um grupo de editores e 100 usuários a um grupo de leitores. Permitir que todos esses usuários se conectem ao seu
cluster exigiria que você criasse regras do RBAC no arquivo de manifesto do Kubernetes
para 225 usuários. Ativar o acesso ao cluster com os Grupos do Google economiza tempo, já que você só precisa criar regras do RBAC para três Grupos do Google.
Antes de começar
Para se conectar ao cluster como membro de um Grupo do Google, é necessário atender aos seguintes pré-requisitos:
Verifique se você tem a versão mais recente da CLI do Google Cloud CLI. Para
informações sobre como atualizar a CLI gcloud, consulte
gcloud components update.
Use o GKE no Azure 1.25 ou mais recente, que é necessário para o acesso kubectl
usando o gateway de conexão.
Conecte-se ao cluster com os Grupos do Google
Para autorizar os grupos do Google a se conectarem ao GKE no Azure, siga estas
etapas:
Ative as APIs connectgateway e cloudresourcemanager
com o seguinte comando:
Crie um grupo chamado gke-security-groups como um grupo no domínio do projeto se ele não existir.
Crie um ou mais subgrupos no grupo gke-security-groups para autenticação de cluster.
Adicione usuários aos subgrupos recém-criados.
Para ter acesso kubectl usando o gateway de conexão, você precisa conceder
papéis do IAM aos Grupos do Google:
Selecione a função apropriada para um grupo. Esse papel determina como o grupo interage com o gateway de conexão. O papel pode ser um dos seguintes: roles/gkehub.gatewayAdmin, roles/gkehub.gatewayEditor, roles/gkehub.gatewayReader.
(Observe que você não está concedendo permissões sobre o cluster aqui. Essa etapa vem depois.
Aqui, você está apenas determinando como os usuários do grupo podem manipular o gateway de conexão.)
Execute o seguinte comando para conceder o papel ao grupo:
GROUP_NAME: o nome do grupo ao qual conceder acesso
DOMAIN: seu domínio do Google Workspace
GATEWAY_ROLE: o papel selecionado. Por exemplo, roles/gkehub.gatewayAdmin, roles/gkehub.gatewayEditor ou roles/gkehub.gatewayReader.
Em um manifesto do Kubernetes, defina as permissões de cada grupo do Google no cluster. Por exemplo, o manifesto a seguir concede ao Grupo do Google cluster-admin-team o papel de administrador do cluster:
KUBECONFIG_PATH: o caminho para o
arquivo kubeconfig
FILENAME: o nome do arquivo de manifesto que você criou
Depois de executar essas etapas, os usuários pertencentes a determinados grupos do Google poderão se conectar ao cluster. No exemplo fornecido, os usuários pertencentes ao Grupo do Google cluster-admin-team podem se conectar ao cluster como administradores.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2024-06-26 UTC."],[],[],null,["# Connect Google groups to GKE on Azure\n=====================================\n\nThis document describes how you can connect to GKE on Azure as a member of a\n[Google group](/iam/docs/groups-in-cloud-console).\n\nUsing Google groups to grant cluster access is more efficient than creating\nseparate authorizations for individual users. For example, let's say you want\nto add 50 users to the cluster Administrator group, 75 users to an Editor group,\nand 100 users to a Reader group. Enabling all these users to connect to your\ncluster would require you to create RBAC rules in the Kubernetes manifest file\nfor 225 users. Enabling access to your cluster with Google groups, however\nsaves you time because you only need to create RBAC rules for three Google\ngroups.\n\nBefore you begin\n----------------\n\nTo connect to your cluster as a member of a Google group, you need to satisfy\nthe following prerequisites:\n\n1. Ensure that you have the latest version of the Google Cloud CLI. For\n information on updating gcloud CLI, see\n [`gcloud components update`](/sdk/gcloud/reference/components/update).\n\n2. Use GKE on Azure version 1.25 or above, which is required for `kubectl`\n access using connect gateway.\n\nConnect to your cluster with Google groups\n------------------------------------------\n\nTo authorize Google groups to connect to GKE on Azure, follow these\nsteps:\n\n1. Enable the `connectgateway` and `cloudresourcemanager` APIs\n with the following command:\n\n gcloud services enable --project=\u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e \\\n connectgateway.googleapis.com \\\n cloudresourcemanager.googleapis.com\n\n Replace \u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e with the ID of your\n Azure project.\n2. Create a group called `gke-security-groups` as a group in your project's\n domain if it doesn't exist.\n\n3. Create one or more sub-groups within the `gke-security-groups` group for\n cluster authentication.\n\n4. Add users to the newly created sub-groups.\n\n5. For `kubectl` access using connect gateway, you need to grant\n IAM roles to Google groups:\n\n 1. Select an appropriate role for a group. This role determines how the\n group interacts with the connect gateway. The role can be\n one of the following: `roles/gkehub.gatewayAdmin`,\n `roles/gkehub.gatewayEditor`, `roles/gkehub.gatewayReader`.\n (Note that you're not granting\n permissions over the cluster here - that step comes later.\n Here, you're just determining how users of the group can manipulate\n the connect gateway.)\n\n 2. Run the following command to grant the role to the group:\n\n gcloud projects add-iam-policy-binding \u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e \\\n --member=group:\u003cvar translate=\"no\"\u003eGROUP_NAME\u003c/var\u003e@\u003cvar translate=\"no\"\u003eDOMAIN\u003c/var\u003e \\\n --role=\u003cvar translate=\"no\"\u003eGATEWAY_ROLE\u003c/var\u003e\n\n Replace the following:\n - \u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e: your Google project ID\n - \u003cvar translate=\"no\"\u003eGROUP_NAME\u003c/var\u003e: the name of the group to grant access to\n - \u003cvar translate=\"no\"\u003eDOMAIN\u003c/var\u003e: your Google Workspace domain\n - \u003cvar translate=\"no\"\u003eGATEWAY_ROLE\u003c/var\u003e: the selected role. For example `roles/gkehub.gatewayAdmin`, `roles/gkehub.gatewayEditor`, or `roles/gkehub.gatewayReader`.\n\n | **Note:** To grant `kubectl` access through a private endpoint, follow the preceding steps, but grant `roles/gkemulticloud.viewer` to the Google groups instead.\n6. In a Kubernetes manifest, define the permissions each Google group\n has on the cluster. For example, the following manifest grants the Google\n Group `cluster-admin-team` the role of cluster administrator:\n\n apiVersion: rbac.authorization.k8s.io/v1\n kind: ClusterRoleBinding\n metadata:\n name: gateway-cluster-admin-group\n subjects:\n - kind: Group\n name: cluster-admin-team@example.com\n roleRef:\n kind: ClusterRole\n name: cluster-admin\n apiGroup: rbac.authorization.k8s.io\n\n7. Save the manifest to a file and apply it to the cluster by running the\n following command:\n\n kubectl apply -kubeconfig=\u003cvar translate=\"no\"\u003eKUBECONFIG_PATH\u003c/var\u003e -f \u003cvar translate=\"no\"\u003eFILENAME\u003c/var\u003e\n\n Replace the following:\n - \u003cvar translate=\"no\"\u003eKUBECONFIG_PATH\u003c/var\u003e: the path to your `kubeconfig` file.\n - \u003cvar translate=\"no\"\u003eFILENAME\u003c/var\u003e: the name of the manifest file you created.\n\nOnce you've performed these steps, users belonging to certain Google groups can\nconnect to the cluster. In the given example, users belonging to the Google\ngroup `cluster-admin-team` can connect to the cluster as administrators."]]