Configurar una VPC compartida

En esta página, se describen los requisitos de proyecto host y de la red de VPC compartida para Cloud Composer.

La VPC compartida permite a las organizaciones establecer límites de presupuesto y de control de acceso a nivel de proyecto y, al mismo tiempo, permitir una comunicación segura y eficiente mediante IP privadas en esas límites. En la configuración de la VPC compartida, Cloud Composer puede invocar servicios alojados en otros proyectos de Google Cloud en la misma organización sin exponerlos a la Internet pública.

Lineamientos para VPC compartida

  • La VPC compartida requiere que designes un proyecto host al que pertenecen las redes y subredes, y un proyecto de servicio, que se adjunta al proyecto host. Cuando Cloud Composer participa en una VPC compartida, el entorno de Cloud Composer está en el proyecto de servicio.

    Proyectos de servicio y host para Cloud Composer
  • Para configurar una VPC compartida, selecciona los siguientes rangos de IP en el proyecto host:

    • Rango de IP principal de la subred que usan los nodos de GKE que Cloud Composer usa como capa de procesamiento
    • Rango de IP secundario para servicios de GKE
    • Rango de IP secundario para Pods de GKE
  • Los rangos de IP secundarios no pueden superponerse con ningún otro rango secundario en esta VPC.

  • Asegúrate de que los rangos secundarios sean lo suficientemente grandes como para adaptarse al tamaño del clúster y el crecimiento previsto.

    Los prefijos de red de los rangos secundarios no se pueden aumentar sobre los siguientes valores. Especifica prefijos de red que sean iguales o inferiores a estos valores. Especificar valores más bajos da como resultado rangos de CIDR más grandes.

    • Pods: /21
    • Servicios: /27

    Consulta Crea un clúster nativo de la VPC a fin de obtener pautas sobre la configuración de rangos secundarios para pods y servicios.

  • El rango de direcciones principal de la subred debe adaptarse al crecimiento previsto y debe tener en cuenta las direcciones IP reservadas.

    El prefijo de red del rango de direcciones principal de la subred no se puede aumentar por encima de /29. Especifica un prefijo de red que sea igual o inferior a este valor. Especificar un valor más bajo da como resultado un rango CIDR más grande.

Preparación

  1. Busca los siguientes ID del proyecto y números de proyecto:
    • Proyecto host: el proyecto que contiene la red de VPC compartida.
    • Proyecto de servicio: el proyecto que contiene el entorno de Cloud Composer.
  2. Prepara tu organización.
  3. Habilita la API de GKE en el proyecto de servicio y el proyecto host.

Configuración del proyecto host

  1. Elige una de las siguientes opciones para asignar y configurar recursos de red.

    Para cada opción, debes asignar un nombre a los rangos de IP secundarias para los pods y los servicios.

  2. Configura una VPC compartida y vincula un proyecto de servicio para usar los entornos de Cloud Composer.

    • Si la VPC compartida ya existe, comienza desde el paso Adjunta un proyecto de servicio.
    • Cuando adjuntas un proyecto, deja los permisos predeterminados de la red de VPC en su lugar.
  3. En el proyecto host ocurre lo siguiente:

    1. Editar permisos para la cuenta de servicio de las API de Google, SERVICE_PROJECT_NUMBER@cloudservices.gserviceaccount.com.

    2. En esta cuenta, agrega otra función, compute.networkUser a nivel del proyecto. Este es un requisito para los grupos de instancias administrados que se usan con VPC compartida porque este tipo de cuenta de servicio realiza tareas como la creación de instancias.

  4. En el proyecto host ocurre lo siguiente:

    1. Editar permisos para las cuentas de servicio de GKE, service-SERVICE_PROJECT_NUMBER@container-engine-robot.iam.gserviceaccount.com.
    2. Para cada cuenta de servicio, agrega otra función, compute.networkUser. Para ello, ve a la lista de redes de VPC y selecciona la red de destino. Este permiso se debe otorgar a nivel de red para permitir que una cuenta de servicio configure la arquitectura de intercambio de tráfico de VPC requerida por Cloud Composer.
  5. En el proyecto host ocurre lo siguiente:

    1. Editar permisos para la cuenta de servicio de GKE del proyecto de servicio.
    2. Para esta cuenta, agrega otra función, Host Service Agent User. Con esto, la cuenta de servicio de GKE del proyecto de servicio podrá usar la cuenta de servicio de GKE del proyecto host a fin de configurar los recursos de la red compartida.
  6. En el proyecto host ocurre lo siguiente:

    1. Asegúrese de que DNS *.pkg.dev se resuelva en 199.36.153.4/30. Para hacerlo, crea una zona nueva como: CNAME *.pkg.dev -> pkg.dev. A pkg.dev. -> 199.36.153.4, 199.36.153.5, 199.36.153.6, 199.36.153.7
  7. En el proyecto host, si este es el primer entorno de Cloud Composer, aprovisiona la cuenta de servicio del agente de Composer: gcloud beta services identity create --service=composer.googleapis.com.

  8. En el proyecto host ocurre lo siguiente:

    1. Permisos de edición para la cuenta de servicio del agente de Composer, service-SERVICE_PROJECT_NUMBER@cloudcomposer-accounts.iam.gserviceaccount.com)
    2. Para esta cuenta, agrega otra función:
      • Para los entornos de IP privada, agrega la función Composer Shared VPC Agent.
      • Para entornos de IP pública, agrega la función Compute Network User.

Completaste la configuración de la red de VPC compartida para el proyecto host.

¿Qué sigue?

Con el SDK de Cloud, crea un entorno de Cloud Composer y proporciona la red y la subred del proyecto host como parámetros de configuración.