En este documento, se muestra cómo asociar uno o más proyectos de Google Cloud con un clúster de GKE Enterprise en VMware.
Las instrucciones que aparecen aquí están completas. Para obtener una introducción más breve sobre el uso de un proyecto de Google Cloud, consulta Configura una infraestructura mínima.
Antes de comenzar
Proyecto host de flotas
Cada clúster de administrador debe estar registrado en una flota. Cada clúster de usuario administrado por un clúster de administrador debe registrarse en la misma flota que el clúster de administrador.
Cuando un clúster de administrador o de usuario se registra en una flota, se asocia con un proyecto host de flota. Un clúster de administrador y todos los clústeres de usuario que administra tienen el mismo proyecto host de flota. En la consola de Google Cloud, en el proyecto host de la flota, puedes ver y administrar los clústeres de administrador y de usuario.
Si quieres especificar un proyecto host de flota para un clúster de administrador, ingresa un ID del proyecto en el
campo gkeConnect.projectID
del
archivo de configuración del clúster de administrador.
Si usas la herramienta de línea de comandos de gkectl
para crear un clúster de usuario, ingresa un ID del proyecto en el campo gkeConnect.projectID
del archivo de configuración del clúster de usuario.
Si incluyes las secciones stackdriver
, cloudAuditLogging
y gkeOnPremAPI
en los archivos de configuración, ten en cuenta los siguientes requisitos para los clústeres nuevos:
El ID en
gkeConnect.projectID
debe ser el mismo que el ID configurado enstackdriver.projectID
ycloudAuditLogging.projectID
.Se debe establecer la misma región de Google Cloud en
stackdriver.clusterLocation
ycloudAuditLogging.clusterLocation
. Además, sigkeOnPremAPI.enabled
estrue
, se debe configurar la misma región engkeOnPremAPI.location
.
Si los IDs del proyecto y las regiones no son iguales, la creación del clúster fallará.
Si usas la consola de Google Cloud para crear un clúster de usuario, el proyecto actual de Google Cloud se convierte de forma automática en el proyecto host de la flota.
Habilita las APIs en el proyecto host de tu flota
Linux y macOS
Habilitar las APIs necesarias en el proyecto host de tu flota:
gcloud services enable --project FLEET_HOST_PROJECT_ID \ anthos.googleapis.com \ container.googleapis.com \ gkehub.googleapis.com \ gkeconnect.googleapis.com \ connectgateway.googleapis.com \ stackdriver.googleapis.com \ monitoring.googleapis.com \ logging.googleapis.com \ opsconfigmonitoring.googleapis.com \ serviceusage.googleapis.com \ iam.googleapis.com \ cloudresourcemanager.googleapis.com
Si deseas administrar el ciclo de vida de los clústeres de usuario en la consola de Google Cloud, Google Cloud CLI o Terraform, habilita estas APIs adicionales en el proyecto host de tu flota:
gcloud services enable --project FLEET_HOST_PROJECT_ID \ gkeonprem.googleapis.com \ anthosaudit.googleapis.com \ storage.googleapis.com
Windows
Habilitar las APIs necesarias en el proyecto host de tu flota:
gcloud services enable --project FLEET_HOST_PROJECT_ID ^ anthos.googleapis.com ^ container.googleapis.com ^ gkehub.googleapis.com ^ gkeconnect.googleapis.com ^ connectgateway.googleapis.com ^ stackdriver.googleapis.com ^ monitoring.googleapis.com ^ logging.googleapis.com ^ opsconfigmonitoring.googleapis.com ^ serviceusage.googleapis.com ^ iam.googleapis.com ^ cloudresourcemanager.googleapis.com
Si deseas administrar el ciclo de vida de los clústeres de usuario en la consola de Google Cloud, Google Cloud CLI o Terraform, habilita estas APIs adicionales en el proyecto host de tu flota:
gcloud services enable --project FLEET_HOST_PROJECT_ID ^ gkeonprem.googleapis.com ^ anthosaudit.googleapis.com ^ storage.googleapis.com
Visualiza registros y métricas en el proyecto host de la flota
Si deseas ver los registros y las métricas del clúster en la consola de Google Cloud, ingresa el ID del proyecto host de la flota en el campo stackdriver.projectID
de tus archivos de configuración de admin y admin del clúster.
La sección stackdriver
es obligatoria de forma predeterminada. Es decir, si no completas la sección stackdriver
, debes incluir la marca --skip-validation-stackdriver
cuando ejecutes gkectl create
.
No puedes ingresar ningún otro ID del proyecto en el campo stackdriver.projectID
. Si ingresas un valor, debe ser el ID del proyecto host de la flota.
Si eliges ver los registros y las métricas del clúster en la consola de Google Cloud, habilita estas APIs en el proyecto host de la flota:
Linux y macOS
gcloud services enable --project FLEET_HOST_PROJECT_ID \ stackdriver.googleapis.com \ monitoring.googleapis.com \ logging.googleapis.com \ opsconfigmonitoring.googleapis.com \ serviceusage.googleapis.com \ iam.googleapis.com \ cloudresourcemanager.googleapis.com
Windows
gcloud services enable --project FLEET_HOST_PROJECT_ID ^ stackdriver.googleapis.com ^ monitoring.googleapis.com ^ logging.googleapis.com ^ opsconfigmonitoring.googleapis.com ^ serviceusage.googleapis.com ^ iam.googleapis.com ^ cloudresourcemanager.googleapis.com
Visualiza registros de auditoría en el proyecto host de la flota
Si deseas ver los registros de auditoría y en la consola de Google Cloud, ingresa el ID del proyecto host de tu flota en el campo cloudAuditLogging.projectID
de tus archivos de configuración de admin y usuario del clúster.
No puedes ingresar ningún otro ID del proyecto en el campo cloudAuditLogging.projectID
. Si ingresas un valor, debe ser el ID del proyecto host de la flota.
Si eliges ver los registros de auditoría en la consola de Google Cloud, habilita estas APIs en el proyecto host de tu flota:
Linux y macOS
gcloud services enable --project FLEET_HOST_PROJECT_ID \ anthosaudit.googleapis.com \ serviceusage.googleapis.com \ iam.googleapis.com \ cloudresourcemanager.googleapis.com
Windows
gcloud services enable --project FLEET_HOST_PROJECT_ID ^ anthosaudit.googleapis.com ^ serviceusage.googleapis.com ^ iam.googleapis.com ^ cloudresourcemanager.googleapis.com
Otorga roles a cuentas de servicio en el proyecto host de tu flota
La cuenta de servicio de registro de conexión debe tener ciertos roles en el proyecto host de la flota. Para obtener más información, consulta Cuenta de servicio de registro de conexión.
La cuenta de servicio de supervisión de registros debe tener ciertos roles en el proyecto host de la flota. Para obtener más detalles, consulta Cuenta de servicio de supervisión y registro.
La cuenta de servicio de registro de auditoría debe tener ciertos roles en tu proyecto host de flota. Para obtener más información, consulta Cuenta de servicio de registro de auditoría.
Proyecto de medición del uso
Si habilitas la medición de uso de GKE para un clúster de usuario, GKE en VMware almacena los datos de uso en un conjunto de datos de BigQuery asociado con el proyecto de Google Cloud que elijas. Este proyecto de Google Cloud se llama proyecto de medición de uso.
El proyecto de medición de uso puede ser el mismo que el proyecto host de tu flota o puede ser diferente.
Para habilitar la medición de uso, en el archivo de configuración del clúster de usuario, configura usageMetering.bigQueryProjectID
como el ID del proyecto de medición de uso.
Si eliges habilitar la medición de uso, habilita estas APIs en tu proyecto de medición del uso:
Linux y macOS
gcloud services enable --project USAGE_METERING_PROJECT_ID] \ bigquery.googleapis.com \ serviceusage.googleapis.com \ iam.googleapis.com \ cloudresourcemanager.googleapis.com
Windows
gcloud services enable --project USAGE_METERING_PROJECT_ID ^ bigquery.googleapis.com ^ serviceusage.googleapis.com ^ iam.googleapis.com ^ cloudresourcemanager.googleapis.com
Otorga roles a las cuentas de servicio en el proyecto de medición del uso
Tu cuenta de servicio de medición del uso debe tener ciertas funciones en el proyecto de medición del uso.
Para obtener más detalles, consulta Cuenta de servicio de medición del uso.
Proyecto superior de tu cuenta de servicio de acceso a los componentes
Antes de crear un clúster, debes tener una cuenta de servicio que GKE on VMware pueda usar para descargar componentes de Container Registry. Esta cuenta de servicio se denomina cuenta de servicio de acceso a los componentes.
El proyecto de Google Cloud en el que creaste la cuenta de servicio de acceso a los componentes se denomina parent de la cuenta de servicio de acceso a los componentes. Este proyecto puede ser el mismo que uno de los proyectos que especificas en los archivos de configuración del clúster o puede ser diferente de todos los proyectos que especifica en los archivos de configuración. Para obtener más información sobre las cuentas de servicio y los proyectos superiores, consulta Información sobre las cuentas de servicio y los proyectos de Google Cloud.
A fin de habilitar las API necesarias para el proyecto superior de la cuenta de servicio de acceso a los componentes, haz lo siguiente:
Linux y macOS
gcloud services enable --project [PROJECT_ID] \ serviceusage.googleapis.com \ iam.googleapis.com \ cloudresourcemanager.googleapis.com
donde [PROJECT_ID] es el ID del proyecto superior de tu cuenta de servicio de acceso a los componentes.
Windows
gcloud services enable --project [PROJECT_ID] ^ serviceusage.googleapis.com ^ iam.googleapis.com ^ cloudresourcemanager.googleapis.com
donde [PROJECT_ID] es el ID del proyecto superior de tu cuenta de servicio de acceso a los componentes.
¿Qué sigue?
Crea claves y cuentas de servicio.