Conectar grupos de Google a GKE en Azure
Este documento describe cómo puede conectarse a GKE en Azure como miembro de un grupo de Google .
Usar grupos de Google para otorgar acceso al clúster es más eficiente que crear autorizaciones independientes para usuarios individuales. Por ejemplo, supongamos que desea agregar 50 usuarios al grupo Administrador del clúster, 75 al grupo Editor y 100 al grupo Lector. Para permitir que todos estos usuarios se conecten al clúster, deberá crear reglas RBAC en el archivo de manifiesto de Kubernetes para 225 usuarios. Sin embargo, habilitar el acceso al clúster con grupos de Google le ahorra tiempo, ya que solo necesita crear reglas RBAC para tres grupos de Google.
Antes de empezar
Para conectarse a su clúster como miembro de un grupo de Google, debe cumplir los siguientes requisitos previos:
Asegúrate de tener la última versión de la CLI de Google Cloud. Para obtener información sobre cómo actualizar la CLI de Google Cloud, consulta
gcloud components update
.Utilice GKE en Azure versión 1.25 o superior, que es necesaria para el acceso
kubectl
mediante la puerta de enlace de conexión.
Conéctate a tu clúster con grupos de Google
Para autorizar a los grupos de Google a conectarse a GKE en Azure, siga estos pasos:
Habilite las API
connectgateway
ycloudresourcemanager
con el siguiente comando:gcloud services enable --project=PROJECT_ID \ connectgateway.googleapis.com \ cloudresourcemanager.googleapis.com
Reemplace
PROJECT_ID
con el ID de su proyecto de Azure.Crea un grupo llamado
gke-security-groups
como un grupo en el dominio de tu proyecto si no existe.Cree uno o más subgrupos dentro del grupo
gke-security-groups
para la autenticación del clúster.Agregue usuarios a los subgrupos recién creados.
Para acceder
kubectl
mediante la puerta de enlace de conexión, debe otorgar roles de IAM a los grupos de Google:Seleccione un rol adecuado 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
oroles/gkehub.gatewayReader
. (Tenga en cuenta que aquí no se otorgan permisos sobre el clúster; ese paso se describe más adelante. Aquí, simplemente se determina cómo los usuarios del grupo pueden manipular la puerta de enlace de conexión).Ejecute el siguiente comando para otorgar el rol al grupo:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=group:GROUP_NAME@DOMAIN \ --role=GATEWAY_ROLE
Reemplace lo siguiente:
-
PROJECT_ID
: su ID de proyecto de Google -
GROUP_NAME
: el nombre del grupo al que se concederá acceso -
DOMAIN
: su dominio de Google Workspace -
GATEWAY_ROLE
: el rol seleccionado. Por ejemplo,roles/gkehub.gatewayAdmin
,roles/gkehub.gatewayEditor
oroles/gkehub.gatewayReader
.
-
En un manifiesto de Kubernetes, defina los permisos que cada grupo de Google tiene en el clúster. Por ejemplo, el siguiente manifiesto otorga al grupo de Google
cluster-admin-team
el rol de administrador del clúster:apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: gateway-cluster-admin-group subjects: - kind: Group name: cluster-admin-team@example.com roleRef: kind: ClusterRole name: cluster-admin apiGroup: rbac.authorization.k8s.io
Guarde el manifiesto en un archivo y aplíquelo al clúster ejecutando el siguiente comando:
kubectl apply -kubeconfig=KUBECONFIG_PATH -f FILENAME
Reemplace lo siguiente:
-
KUBECONFIG_PATH
: la ruta a su archivokubeconfig
. -
FILENAME
: el nombre del archivo de manifiesto que usted creó.
-
Una vez realizados estos pasos, los usuarios de ciertos grupos de Google podrán conectarse al clúster. En el ejemplo, los usuarios del grupo de Google cluster-admin-team
pueden conectarse al clúster como administradores.