Usa varios proyectos de Google Cloud

En este documento, se muestra cómo asociar uno o más proyectos de Google Cloud a un clúster de Anthos en 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 la 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. Y cada clúster de usuario administrado por 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 a 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.

A fin de 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 usas Google Cloud Console para crear un clúster de usuario, el proyecto actual de Google Cloud se convierte automáticamente en el proyecto host de 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 \
    cloudresourcemanager.googleapis.com \
    connectgateway.googleapis.com \
    container.googleapis.com \
    gkeconnect.googleapis.com \
    gkehub.googleapis.com \
    serviceusage.googleapis.com \
    iam.googleapis.com

Si deseas administrar el ciclo de vida de los clústeres de usuario en Google Cloud Console, Google Cloud CLI o Terraform, habilita estas API adicionales en el proyecto host de tu flota:

gcloud services enable --project FLEET_HOST_PROJECT_ID \
    anthosgke.googleapis.com \
    anthosaudit.googleapis.com \
    gkeonprem.googleapis.com  \
    opsconfigmonitoring.googleapis.com \
    stackdriver.googleapis.com \
    monitoring.googleapis.com \
    logging.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 ^
    cloudresourcemanager.googleapis.com ^
    connectgateway.googleapis.com ^
    container.googleapis.com ^
    gkeconnect.googleapis.com ^
    gkehub.googleapis.com ^
    serviceusage.googleapis.com ^
    iam.googleapis.com

Si deseas administrar el ciclo de vida de los clústeres de usuario en Google Cloud Console, Google Cloud CLI o Terraform, habilita estas API adicionales en el proyecto host de tu flota:

gcloud services enable --project FLEET_HOST_PROJECT_ID ^
    anthosgke.googleapis.com ^
    anthosaudit.googleapis.com ^
    gkeonprem.googleapis.com  ^
    opsconfigmonitoring.googleapis.com ^
    stackdriver.googleapis.com ^
    monitoring.googleapis.com ^
    logging.googleapis.com ^
    storage.googleapis.com

Visualiza registros y métricas en tu proyecto host de 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 administrador y usuario del clúster.

Esta 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 de tu 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 \
    opsconfigmonitoring.googleapis.com \
    monitoring.googleapis.com \
    logging.googleapis.com \
    serviceusage.googleapis.com \
    iam.googleapis.com \
    cloudresourcemanager.googleapis.com

Windows

gcloud services enable --project FLEET_HOST_PROJECT_ID ^
    stackdriver.googleapis.com ^
    opsconfigmonitoring.googleapis.com ^
    monitoring.googleapis.com ^
    logging.googleapis.com ^
    serviceusage.googleapis.com ^
    iam.googleapis.com ^
    cloudresourcemanager.googleapis.com

Permite ver registros de auditoría en el proyecto host de su 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 administrador 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 de tu 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, los clústeres de Anthos alojados en VMware almacenan 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 la flota, o bien ser diferente.

Para habilitar la medición de uso, en el archivo de configuración del clúster de usuario, establece usageMetering.bigQueryProjectID en 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 los clústeres de Anthos alojados en VMware puedan 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 superior 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.