Crea y administra grupos privados

En esta página, se describe cómo crear, actualizar, ver y borrar grupos privados de Cloud Build. Si no estás familiarizado con los grupos privados, consulta la descripción general de los grupos privados.

Antes de comenzar

  1. Crea un proyecto de Google Cloud nuevo o elige uno existente. Usarás este proyecto para crear el grupo privado.

  2. Enable the Cloud Build API.

    Enable the API

  3. Para usar los ejemplos de línea de comandos de esta guía, instala y Configura Google Cloud CLI.

  4. [Opcional] Para que las compilaciones accedan a recursos privados desde tu red de nube privada virtual, debes establecer una conexión de intercambio de tráfico entre tu red de nube privada virtual y la Red de nube privada virtual en la que residen los grupos privados. Para obtener instrucciones, consulta cómo configurar tu para crear grupos privados.

Crea un nuevo grupo privado

Permisos de IAM: Necesitas Propietario de grupos de trabajadores de Cloud Build para realizar esta tarea. Si deseas obtener instrucciones para otorgar este rol, consulta Configura el acceso a los recursos de Cloud Build.

Puedes crear hasta 10 grupos privados por proyecto de Google Cloud por región. Para crear un grupo privado nuevo, haz lo siguiente:

Console

  1. Abre la página Grupo de trabajadores en la consola de Google Cloud:

    Abrir la página de grupos de trabajadores de Cloud Build

  2. Selecciona el proyecto en el que deseas crear el grupo privado.

  3. En la página Grupo de trabajadores, haz clic en Crear.

    Verás el panel lateral Crear grupo privado.

    Ingresa la siguiente información para crear tu grupo privado:

    1. Nombre: Ingresa un nombre para tu grupo privado. Este valor solo puede contener caracteres alfanuméricos /[a-z][0-9]/ o guiones -. El nombre de tu grupo privado debe estar entre 1 y 63 caracteres.

    2. Región: Selecciona la región en la que deseas crear el grupo privado.

    3. Tipo de máquina: Selecciona el tipo de máquina de Compute Engine que deseas usar para tu grupo privado.

    4. Tamaño de disco disponible: Ingresa un tamaño de disco para tu grupo privado. Especifica un valor superior o igual a 100 y menor o igual que 4,000. Si no se proporciona, Cloud Build usa un tamaño de disco de 100.

      En Tipo de red, selecciona una de las siguientes opciones:

      1. Red predeterminada: Selecciona esta opción si se puede acceder a tu instancia a través de Internet público. Si seleccionas la opción Red predeterminada está seleccionada, tu grupo privado usa la cuenta de productores. Para obtener más información, consulta Configura el entorno para usar grupos privados en una red de VPC.

      2. Red privada: Selecciona esta opción si tu instancia está alojada en una red privada.

        1. Project: Selecciona el ID de tu proyecto de Google Cloud.

        2. Red: Selecciona tu red en el menú desplegable. Si no crearon una red, consulta Crea y administra VPC redes para aprender a crear una red.

        3. Rango de IP: Ingresa el rango de IP interno que la red de productores de Cloud Build puede usar para asignar a las VMs que mantienen una conexión con repositorios privados.

          Puedes especificar el rango con la notación de enrutamiento entre dominios sin clases (CIDR) en el formato STARTING_IP_ADDRESS/SUBNET_PREFIX_SIZE. Por ejemplo, 192.0.2.0/24 tiene una longitud de prefijo de 24. Los primeros 24 bits del rango de IP se usan como máscara de subred (192.0.2.0), mientras que las direcciones de hosts posibles varían de 192.0.2.0 a 192.0.2.255.

          El valor de la longitud del prefijo no debe exceder /29. Si la respuesta es no se especifica un valor predeterminado para el rango, se asigna automáticamente un valor predeterminado de /24. Si no se especifica ningún valor para la longitud del prefijo, las direcciones IP se asignan automáticamente dentro de la red de VPC con intercambio de tráfico. Si no se especifica ningún valor para la IP dirección IP, se le asigna automáticamente un rango dentro de la red de VPC con intercambio de tráfico.

    5. Asignar IPs externas: Esta opción está seleccionada de forma predeterminada para permitir que los grupos privados accedan a Internet público. Desmarca esta casilla para restringir el acceso a tu red privada.

  4. Haz clic en Crear para crear tu grupo privado.

gcloud

Tienes dos opciones para crear un nuevo grupo privado con gcloud: puedes pasar tu archivo de configuración de grupo privado al comando gcloud o pasar las opciones de configuración directamente al comando gcloud.

Pasa el archivo de configuración del grupo privado al comando gcloud:

  1. Crea el archivo de configuración del grupo privado en formato YAML o JSON.

  2. Ejecute lo siguientegcloud comando, en el que PRIVATEPOOL_ID es un identificador único para tu grupo privado,PRIVATEPOOL_CONFIG_FILE Es el nombre de tu archivo de configuración de grupo privado.REGION es la región donde deseas crear tu grupo privado:

    gcloud builds worker-pools create PRIVATEPOOL_ID --config-from-file PRIVATEPOOL_CONFIG_FILE --region REGION
    

    Deberías ver un resultado similar al siguiente:

    Created [https://cloudbuild.googleapis.com/v1/projects/gcb-docs-project/locations/us-central1/workerPools/private-pool].
    NAME                 CREATE_TIME                STATUS
    private-pool  2018-11-19T16:08:24+00:00  RUNNING
    

Pasar las opciones de configuración directamente al gcloud comando:

Ejecuta el siguiente comando gcloud:

    gcloud builds worker-pools create PRIVATEPOOL_ID \
        --project=PRIVATEPOOL_PROJECT_ID \
        --region=REGION \
        --peered-network=PEERED_NETWORK \
        --worker-machine-type=PRIVATEPOOL_MACHINE_TYPE \
        --worker-disk-size=PRIVATEPOOL_DISK_SIZE_GB \
        --no-public-egress

Reemplaza los valores de marcador de posición en los comandos anteriores por la siguiente información:

  • PRIVATEPOOL_ID: Un identificador único para el grupo de privado. Este valor debe tener entre 1 y 63 caracteres, y los caracteres válidos son [a-zA-Z0-9_-]+.
  • PRIVATEPOOL_PROJECT_ID: Es el ID del proyecto de Google Cloud. en la que quieres crear tu grupo privado.
  • REGION: Es una de las regiones compatibles.
  • PEERED_NETWORK: Es la URL del recurso de la red que intercambia tráfico con la red del productor de servicios. PEERED_NETWORK debe tener el formato projects/NETWORK_PROJECT_ID/global/networks/NETWORK_NAME, en el que NETWORK_PROJECT_ID es el ID del proyecto de Google Cloud que contiene tu red de VPC y NETWORK_NAME es el nombre de tu red de VPC. Si no especificas un valor, Cloud Build usa la red del proveedor de servicios.
  • PRIVATEPOOL_DISK_SIZE_GB: Es el tamaño del disco conectado. al grupo privado. Especifica un valor superior o igual a 100 y menor o igual que 4,000. Si no se proporciona, Cloud Build usa un tamaño de disco de 100. --worker-disk-size se anula si especificas un tamaño de disco diferente con --disk-size durante gcloud builds submit.
  • PRIVATEPOOL_MACHINE_TYPE: Es el tipo de máquina del trabajador. Si se deja en blanco, Cloud Build usa el valor predeterminado de e2-standard-2. Para obtener una lista de los tipos de máquinas compatibles, consulta Esquema del archivo de configuración del grupo privado. --worker-machine-type se anula si especificas un tipo de máquina diferente con --machine-type durante gcloud builds submit.
  • --no-public-egress: Si se configura esta marca, se crea el grupo privado. sin una dirección IP externa. Establece esta marca si creas el grupo privado dentro de un perímetro de Controles del servicio de VPC.

API

  1. Crea el archivo de configuración del grupo privado con el nombre workerpool.json.

  2. Usa cURL para llamar a la API de Cloud Build:

        curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)"
            -H "Content-Type: application/json" \
            https://cloudbuild.googleapis.com/v1/projects/PRIVATEPOOL_PROJECT_ID/locations/REGION/workerPools/?workerPoolId=PRIVATEPOOL_ID -d @workerpool.json
    

    Reemplaza los valores de marcador de posición en el comando anterior por los siguientes:

    • PRIVATEPOOL_PROJECT_ID: El ID del proyecto de Google Cloud en el que deseas crear tu grupo privado.
    • PRIVATEPOOL_ID: El ID de tu grupo privado. Este valor debe tener entre 1 y 63 caracteres, y los caracteres válidos son [a-zA-Z0-9_-]+.
    • REGION: Una de las regiones compatibles para crear tu grupo privado.

Crea un grupo privado dentro de un perímetro de Controles del servicio de VPC

Si creas un grupo privado dentro de un perímetro de Controles del servicio de VPC, consulta Usa los Controles del servicio de VPC.

Actualiza un grupo privado

Permisos de IAM: Necesitas Editor de grupo de trabajadores de Cloud Build para realizar esta tarea. Para obtener instrucciones sobre cómo otorgar este rol, consulta Configura el acceso a los recursos de Cloud Build.

Puedes actualizar el tamaño del disco y el tipo de máquina de un grupo privado. Para actualizar un grupo privado, sigue estos pasos:

Console

  1. Abre la página Grupo de trabajadores en la consola de Google Cloud:

    Abrir la página de grupos de trabajadores de Cloud Build

  2. Selecciona el proyecto en el que creaste el grupo privado.

  3. Haz clic en el nombre del grupo privado.

  4. En el panel lateral Editar grupo privado, actualiza el tipo de máquina o la el tamaño del disco.

  5. Haz clic en Guardar.

gcloud

Actualiza el archivo de configuración del grupo de trabajadores:

  1. Actualiza el campo que deseas cambiar en tu archivo de configuración del grupo privado.

  2. Ejecuta el siguiente comando, en el que PRIVATEPOOL_ID es el identificador único de tu grupo privado, REGION es la región en la que se encuentra tu grupo privado y PRIVATEPOOL_CONFIG_FILE es el nombre de tu archivo de configuración de grupo privado:

    gcloud builds worker-pools update PRIVATEPOOL_ID \
        --region=REGION \
        --config-from-file=PRIVATEPOOL_CONFIG_FILE
    

Pasa el valor que se debe actualizar directamente al comando gcloud builds worker-pools update:

   gcloud builds worker-pools update PRIVATEPOOL_ID  \
       --region=REGION \
       --worker-disk-size=PRIVATEPOOL_DISK_SIZE \
       --worker-machine-type=PRIVATEPOOL_MACHINE_TYPE

Reemplaza los valores de marcador de posición en los comandos anteriores por la siguiente información:

  • PRIVATEPOOL_ID: El ID de tu grupo privado existente. No puedes actualizar este valor; debes especificar un ID de grupo privado existente.
  • REGION: La región en la que creaste tu grupo privado.
  • PRIVATEPOOL_DISK_SIZE: El tamaño del disco actualizado.
  • PRIVATEPOOL_MACHINE_TYPE es el tipo de máquina actualizado.

API

  1. En tu archivo de configuración del grupo privado, actualiza el tamaño del disco o el tipo de máquina.

  2. Usa cURL para llamar a la API de Cloud Build y reemplaza las variables por los valores adecuados:

    curl -X PATCH -H "Authorization: Bearer $(gcloud auth print-access-token)" \
        -H "Content-Type: application/json" \
        https://cloudbuild.googleapis.com/v1/projects/PRIVATEPOOL_PROJECT_ID/locations/REGION/workerPools/PRIVATEPOOL_ID \
        -d @workerpool.json
    

    Reemplaza los valores de marcador de posición en el comando anterior por los siguientes:

    • PRIVATEPOOL_ID: El ID de tu grupo privado.
    • PRIVATEPOOL_PROJECT_ID: Es el ID del proyecto de Google Cloud. que contiene tu grupo privado.
    • REGION: Es la región en la que creaste el grupo privado.

Cómo ver los detalles de tu grupo privado

Permisos de IAM: Necesitas el rol de visualizador de WorkerPool de Cloud Build para realizar esta tarea. Para obtener instrucciones sobre cómo otorgar este rol, consulta Configura el acceso a los recursos de Cloud Build.

Para ver los detalles de un grupo privado, sigue estos pasos:

Console

  1. Abre la página Grupo de trabajadores en la consola de Google Cloud:

    Abrir la página de grupos de trabajadores de Cloud Build

  2. Selecciona el proyecto en el que creaste el grupo privado

  3. Haz clic en el nombre del grupo privado.

Aparecerá el panel lateral Editar grupo privado, que contiene los detalles de el grupo privado.

gcloud

Si no conoces el ID de tu grupo privado, ejecuta el siguiente comando para enumerar los detalles de tu grupo privado:

gcloud builds worker-pools list --project=PRIVATEPOOL_PROJECT_ID

En el ejemplo anterior, PRIVATEPOOL_PROJECT_ID es el ID del proyecto de Google Cloud que contiene el grupo privado.

Deberías ver un resultado similar al siguiente:

NAME                                                                  CREATE_TIME                STATUS
projects/[PRIVATEPOOL_PROJECT_ID]/locations/us-central1/workerPools/[PRIVATEPOOL_ID]      2018-11-19T16:08:24+00:00  RUNNING

Si conoces el ID del grupo privado, ejecuta el siguiente comando para obtener más información sobre el grupo privado:

gcloud builds worker-pools describe PRIVATEPOOL_ID \
    --region=REGION \
    --project=PRIVATEPOOL_PROJECT_ID

Reemplaza los valores de marcador de posición en el comando anterior por los siguientes:

  • PRIVATEPOOL_ID: El ID de tu grupo privado.
  • REGION: Es la región en la que creaste el grupo privado.
  • PRIVATEPOOL_PROJECT_ID: El ID del proyecto de Google Cloud que contiene el grupo privado.

API

Si no conoces el ID de tu grupo privado, ejecuta el siguiente comando cURL para enumerar los detalles de tu grupo privado, en el que PRIVATEPOOL_PROJECT_ID es el ID del proyecto de Google Cloud que contiene el grupo privado:

    curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \
        https://cloudbuild.googleapis.com/v1/projects/PRIVATEPOOL_PROJECT_ID/locations/REGION/workerPools

Si conoces el ID de tu grupo privado, ejecuta el siguiente comando: cURL para obtener los detalles de tu grupo privado:

    curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \
        https://cloudbuild.googleapis.com/v1/projects/PRIVATEPOOL_PROJECT_ID/locations/REGION/workerPools/PRIVATEPOOL_ID

Reemplaza los valores de marcador de posición en los comandos anteriores por la siguiente información:

  • PRIVATEPOOL_ID: El ID de tu grupo privado.
  • PRIVATEPOOL_PROJECT_ID: El ID del proyecto de Google Cloud que contiene el grupo privado.
  • REGION: La región en la que creaste tu grupo privado.

Borra un grupo privado

Permisos de IAM: Necesitas el rol de propietario de WorkerPool de Cloud Build para realizar esta tarea. Si deseas obtener instrucciones para otorgar este rol, consulta Configura el acceso a los recursos de Cloud Build.

Para borrar un grupo privado, haz lo siguiente:

Console

  1. Abre la página Grupo de trabajadores en la consola de Google Cloud:

    Abrir la página de grupos de trabajadores de Cloud Build

  2. Haz clic en el ícono de papelera de la fila del grupo privado.

gcloud

Para borrar un grupo privado, ejecuta el comando gcloud builds worker-pools delete:

 gcloud builds worker-pools delete PRIVATEPOOL_ID \
     --region=REGION \
     --project=PRIVATEPOOL_PROJECT_ID

Reemplaza los valores de marcador de posición en el comando anterior por los siguientes:

  • PRIVATEPOOL_ID: El ID de tu grupo privado.
  • PRIVATEPOOL_PROJECT_ID: Es el ID del proyecto de Google Cloud. que contiene tu grupo privado.
  • REGION: La región en la que creaste tu grupo privado.

Después de borrar el grupo privado, deberías ver un resultado similar al siguiente: lo siguiente:

 Deleted [https://cloudbuild.googleapis.com/v1/projects/gcb-docs-project/locations/us-central1/workerPools/[PRIVATEPOOL_ID].

API

Usa cURL para llamar a la API de Cloud Build:

  curl -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      https://cloudbuild.googleapis.com/v1/projects/PRIVATEPOOL_PROJECT_ID/locations/REGION/workerPools/PRIVATEPOOL_ID

Reemplaza los valores de marcador de posición en los comandos anteriores por la siguiente información:

  • PRIVATEPOOL_ID: El ID de tu grupo privado.
  • PRIVATEPOOL_PROJECT_ID: El ID del proyecto de Google Cloud que contiene el grupo privado.
  • REGION: La región en la que creaste tu grupo privado.

¿Qué sigue?