Esta documentación es para la versión más reciente de GKE en Azure, que se lanzó en noviembre de 2021. Consulta las notas de la versión para obtener más información.
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
Conecta Grupos de Google a GKE en Azure
En este documento, se describe cómo puedes conectarte a GKE en Azure como miembro de un Grupo de Google.
Usar Grupos de Google a fin de otorgar acceso al clúster es más eficiente que crear autorizaciones por separado para usuarios individuales. Por ejemplo, supongamos que deseas agregar 50 usuarios al grupo de administradores de clústeres, 75 usuarios a un grupo de editores y 100 usuarios a un grupo de lectores. Si deseas permitir que todos estos usuarios se conecten a tu clúster, deberás crear reglas de RBAC en el archivo de manifiesto de Kubernetes para 225 usuarios. Sin embargo, habilitar el acceso a tu clúster con Grupos de Google te ahorra tiempo porque solo necesitas crear reglas de RBAC para tres Grupos de Google.
Antes de comenzar
Para conectarte a tu clúster como miembro de un Grupo de Google, debes cumplir con los siguientes requisitos previos:
Asegúrate de tener la versión más reciente de Google Cloud CLI: Para obtener información sobre la actualización de la CLI de gcloud, consulta gcloud components update.
Usa la versión 1.25 o superior de GKE en Azure, que se requiere para el acceso kubectl mediante Connect Gateway.
Conéctate a tu clúster mediante Grupos de Google
Para autorizar a los Grupos de Google a conectarse a GKE en Azure, sigue estos pasos:
Habilita las API de connectgateway y cloudresourcemanager con el siguiente comando:
Reemplaza PROJECT_ID por el ID de tu proyecto de Azure.
Crea un grupo llamado gke-security-groups como un grupo en el dominio de tu proyecto si no existe.
Crea uno o más subgrupos dentro del grupo gke-security-groups para la autenticación de clústeres.
Agrega usuarios a los subgrupos recién creados.
Para el acceso kubectl mediante Connect Gateway, debes otorgar roles de IAM a los Grupos de Google:
Selecciona un rol apropiado para un grupo. Este rol determina cómo interactúa el grupo con la puerta de enlace de conexión. El rol puede ser uno de los siguientes: roles/gkehub.gatewayAdmin, roles/gkehub.gatewayEditor, roles/gkehub.gatewayReader.
(Ten en cuenta que no otorgas permisos sobre el clúster aquí, ya que ese paso se realiza más adelante).
Aquí, solo se determina cómo los usuarios del grupo pueden manipular la puerta de enlace de conexión).
Ejecuta el siguiente comando para otorgar el rol al grupo:
GROUP_NAME: El nombre del grupo al que se otorga acceso
DOMAIN: Tu dominio de Google Workspace
GATEWAY_ROLE: el rol seleccionado. Por ejemplo, roles/gkehub.gatewayAdmin, roles/gkehub.gatewayEditor o roles/gkehub.gatewayReader.
En un manifiesto de Kubernetes, define los permisos que tiene cada Grupo de Google en el clúster. Por ejemplo, en el siguiente manifiesto, se otorga al Grupo de Google cluster-admin-team la función de administrador del clúster:
KUBECONFIG_PATH: La ruta de acceso a tu archivo kubeconfig
FILENAME: el nombre del archivo de manifiesto que creaste.
Una vez que hayas realizado estos pasos, los usuarios que pertenecen a ciertos Grupos de Google pueden conectarse al clúster. En el ejemplo determinado, los usuarios que pertenecen al grupo de Google cluster-admin-team pueden conectarse al clúster como administradores.
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Información o código de muestra incorrectos","incorrectInformationOrSampleCode","thumb-down"],["Faltan la información o los ejemplos que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2024-07-01 (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."]]