Proyectos de Google Cloud para GKE en VMware

En este documento, se muestra cómo asociar uno o más proyectos de Google Cloud con un clúster en GKE on VMware.

Las instrucciones que aparecen aquí están completas. Para obtener una introducción más breve al uso de un proyecto de Google Cloud, consulta Configura una infraestructura mínima.

Antes de comenzar

Instala Google Cloud CLI.

Proyecto host de flotas

Cada clúster de administrador debe estar registrado en una flota. Cada clúster de usuario que administra un clúster de administrador debe estar registrado 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 la 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.

Elige un proyecto de Google Cloud para que funcione como el proyecto host de tu flota. Puedes elegir un proyecto existente o crear uno nuevo. Toma nota del ID del proyecto. Necesitarás el ID del proyecto host de la flota en los pasos siguientes.

Habilita las APIs en el proyecto host de tu flota

En el proyecto host de la flota, habilita las APIs necesarias:

Linux y macOS

Habilita las siguientes APIs en el proyecto host de la flota:

gcloud services enable --project FLEET_HOST_PROJECT_ID \
    anthos.googleapis.com \
    container.googleapis.com \
    gkehub.googleapis.com \
    gkeconnect.googleapis.com \
    connectgateway.googleapis.com \
    monitoring.googleapis.com \
    kubernetesmetadata.googleapis.com \
    logging.googleapis.com \
    opsconfigmonitoring.googleapis.com \
    serviceusage.googleapis.com \
    iam.googleapis.com \
    cloudresourcemanager.googleapis.com

Si quieres administrar el ciclo de vida de los clústeres 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

Habilita las siguientes APIs en el proyecto host de la flota:

gcloud services enable --project FLEET_HOST_PROJECT_ID ^
    anthos.googleapis.com ^
    container.googleapis.com ^
    gkehub.googleapis.com ^
    gkeconnect.googleapis.com ^
    connectgateway.googleapis.com ^
    monitoring.googleapis.com ^
    kubernetesmetadata.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

Otorga roles a las cuentas de servicio en el proyecto host de la 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.

Registra un clúster en una flota

Registras un clúster en una flota cuando lo creas. Los detalles del registro dependen de la herramienta que uses para crear el clúster:

HerramientaCómo registrarse
gkectlCompleta el campo gkeConnect.projectID en el archivo de configuración del clúster.
Consola de Google CloudEl clúster se registra automáticamente. El proyecto de Google Cloud que usas para crear el clúster se convierte en el proyecto host de la flota.
TerraformCompleta el campo project_id del archivo.tfvars.
gcloud CLICuando llames a gcloud container vmware clusters create, proporciona un valor para --project.

Proyecto de medición del uso

Si habilitas la medición de uso para un clúster de usuario, GKE en VMware almacena 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 denomina 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.

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 tu proyecto de medición de 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 en 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 el proyecto host de tu flota o puede ser diferente. 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 [PARENT_PROJECT_ID] \
    serviceusage.googleapis.com \
    iam.googleapis.com \
    cloudresourcemanager.googleapis.com

Windows

gcloud services enable --project [PARENT_PROJECT_ID] ^
    serviceusage.googleapis.com ^
    iam.googleapis.com ^
    cloudresourcemanager.googleapis.com

¿Qué sigue?

Crea claves y cuentas de servicio.