Créer et gérer des pools privés

Cette page explique comment créer, mettre à jour, afficher et supprimer des pools privés Cloud Build. Si vous ne connaissez pas le fonctionnement des pools privés, consultez la page Présentation des pools privés.

Avant de commencer

  1. Créez un Nouveau projet Google Cloud ou choisissez un projet existant. Vous allez utiliser ce projet pour créer le pool privé.

  2. Enable the Cloud Build API.

    Enable the API

  3. Pour utiliser les exemples de ligne de commande de ce guide, installez et configurer la Google Cloud CLI.

  4. [Facultatif] Pour que les compilations puissent accéder aux ressources privées de votre réseau de cloud privé virtuel, vous devez configurer une connexion d'appairage entre votre réseau de cloud privé virtuel et le réseau de cloud privé virtuel où résident les pools privés. Pour obtenir des instructions, consultez la page Configurer votre environnement pour créer des pools privés.

Créer un pool privé

Autorisations IAM: vous devez disposer du rôle Propriétaire de pool de nœuds de calcul Cloud Build pour effectuer cette tâche. Pour obtenir des instructions sur l'attribution de ce rôle, consultez la page Configurer l'accès aux ressources Cloud Build.

Vous pouvez créer jusqu'à 10 pools privés par projet Google Cloud et par région. Pour créer un pool privé, procédez comme suit :

Console

  1. Ouvrez la page Pool de nœuds de calcul dans la console Google Cloud:

    Ouvrir la page Pool de nœuds de calcul Cloud Build

  2. Sélectionnez le projet dans lequel vous souhaitez créer le pool privé.

  3. Sur la page Pool de nœuds de calcul, cliquez sur Créer.

    Le panneau latéral Créer un pool privé s'affiche.

    Saisissez les informations suivantes pour créer votre pool privé:

    1. Nom: saisissez un nom pour votre pool privé. Cette valeur ne peut contenir que des caractères alphanumériques ; /[a-z][0-9]/ ou ; tiret -. Le nom de votre pool privé doit être compris entre 1 et 63 caractères.

    2. Région: sélectionnez la région dans laquelle vous souhaitez créer le pool privé.

    3. Type de machine: sélectionnez le type de machine Compute Engine que vous souhaitez utiliser pour votre piscine privée.

    4. Available disk size (Taille de disque disponible) : saisissez la taille de disque de votre pool privé. Spécifiez un valeur supérieure ou égale à 100 et inférieure ou égale à 4000. Si aucune valeur n'est fournie, Cloud Build utilise une taille de disque de 100.

      Sous Type de réseau, sélectionnez l'une des options suivantes:

      1. Default network (Réseau par défaut) : sélectionnez cette option si votre instance est accessibles via l'Internet public. Lorsque le réseau par défaut est sélectionnée, votre pool privé utilise le service le réseau de producteurs. Pour en savoir plus, consultez Configurer l'environnement à utiliser des pools privés dans un réseau VPC.

      2. Réseau privé: sélectionnez cette option si votre instance est hébergée. sur un réseau privé.

        1. Project (Projet) : sélectionnez l'ID de votre projet Google Cloud.

        2. Réseau: sélectionnez votre réseau dans le menu déroulant. Si vous n'avez pas créé de réseau, consultez la section Créer et gérer des réseaux pour apprendre à créer un réseau.

        3. Plage d'adresses IP: saisissez la plage d'adresses IP internes sur laquelle du réseau de producteurs Cloud Build peut allouer Des VM maintenant une connexion avec des dépôts privés

          Vous pouvez spécifier la plage à l'aide du format de routage CIDR (Classless Inter-Domain Routing) au format STARTING_IP_ADDRESS/SUBNET_PREFIX_SIZE. Par exemple, 192.0.2.0/24 a une longueur de préfixe de 24. Les 24 premiers bits de la plage d'adresses IP servent de masque de sous-réseau (192.0.2.0), tandis que les adresses des hôtes possibles vont de 192.0.2.0 à 192.0.2.255.

          La valeur de votre longueur de préfixe ne doit pas dépasser /29. Si non est spécifiée pour la plage, la valeur par défaut /24 est automatiquement attribuée. Si aucune valeur n'est spécifiée pour la longueur de préfixe, les adresses IP sont automatiquement attribuées au sein du réseau VPC appairé. Si aucune valeur n'est spécifiée pour l'adresse IP l'adresse IP se voit automatiquement attribuer une plage au sein du réseau VPC appairé.

    5. Attribuer des adresses IP externes: cette option est sélectionnée par défaut pour autoriser les connexions pour accéder à l'Internet public. Décochez cette case pour restreindre l'accès à votre réseau privé.

  4. Cliquez sur Créer pour créer votre pool privé.

gcloud

Deux options s'offrent à vous pour créer un pool privé à l'aide de gcloud : Vous pouvez transmettre votre fichier de configuration de pool privé à la commande gcloud ou transmettre les options de configuration directement à la commande gcloud.

Transmettre le fichier de configuration du pool privé à la commande gcloud :

  1. Créez le fichier de configuration du pool privé au format YAML ou JSON.

  2. Exécutez la commande gcloud suivante, où PRIVATEPOOL_ID est un identifiant unique pour votre pool privé, PRIVATEPOOL_CONFIG_FILE est le nom de votre fichier de configuration de pool privé et REGION la région dans laquelle vous souhaitez créer votre pool privé :

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

    Un résultat semblable aux lignes suivantes doit s'afficher :

    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
    

Transmettre les options de configuration directement à la commande gcloud :

Exécutez la commande gcloud suivante :

    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

Remplacez les valeurs d'espace réservé dans les commandes ci-dessus par les éléments suivants :

  • PRIVATEPOOL_ID : identifiant unique de votre pool de nœuds de calcul. Cette valeur doit contenir entre 1 et 63 caractères, et les caractères valides sont [a-zA-Z0-9_-]+.
  • PRIVATEPOOL_PROJECT_ID: ID du projet Google Cloud où vous voulez créer votre pool privé.
  • REGION : l'une des régions disponibles.
  • PEERED_NETWORK : URL de la ressource réseau du réseau appairé avec le réseau du producteur de services. PEERED_NETWORK doit être au format projects/NETWORK_PROJECT_ID/global/networks/NETWORK_NAME, où NETWORK_PROJECT_ID est l'ID du projet le projet Google Cloud qui contient votre réseau VPC NETWORK_NAME est le nom de votre réseau VPC. Si vous ne spécifiez pas de valeur, Cloud Build utilise le réseau du fournisseur de services.
  • PRIVATEPOOL_DISK_SIZE_GB : taille du disque associé au pool privé. Spécifiez une valeur supérieure ou égale à 100 et inférieures ou égales à 4 000. Si cette valeur n'est pas spécifiée, Cloud Build utilise une taille de disque de 100. --worker-disk-size est remplacé si vous spécifiez une autre taille de disque à l'aide de --disk-size lors de la commande gcloud builds submit.
  • PRIVATEPOOL_MACHINE_TYPE : type de machine du nœud de calcul. Si aucune valeur n'est spécifiée, Cloud Build utilise la valeur par défaut e2-standard-2. Pour obtenir la liste des types de machines compatibles, consultez la section Schéma de fichier de configuration du pool privé. --worker-machine-type est remplacé si vous spécifiez un type de machine différent à l'aide de --machine-type lors de la commande gcloud builds submit.
  • --no-public-egress: si cette option est définie, le pool privé est créé sans adresse IP externe. Définissez cette option si vous créez le pool privé dans un périmètre VPC Service Controls.

API

  1. Créez votre fichier de configuration de pool privé nommé workerpool.json.

  2. Utilisez cURL pour appeler l'API 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
    

    Remplacez les valeurs d'espace réservé dans la commande ci-dessus par les éléments suivants :

    • PRIVATEPOOL_PROJECT_ID: ID du projet Google Cloud où vous voulez créer votre pool privé.
    • PRIVATEPOOL_ID : ID de votre pool privé. Cette valeur doit contenir entre 1 et 63 caractères, et les caractères valides sont [a-zA-Z0-9_-]+.
    • REGION : l'une des régions disponibles pour créer votre pool privé.

Créer un pool privé dans un périmètre VPC Service Controls

Si vous créez un pool privé dans un périmètre VPC Service Controls, consultez la page Utiliser VPC Service Controls.

Mettre à jour un pool privé

Autorisations IAM: vous devez disposer du rôle Éditeur de pools de nœuds de calcul Cloud Build pour effectuer cette tâche. Pour obtenir des instructions sur l'attribution d'un rôle, consultez la page Configurer l'accès aux ressources Cloud Build.

Vous pouvez mettre à jour la taille de disque et le type de machine d'une piscine privée. Pour mettre à jour un pool privé, procédez comme suit:

Console

  1. Ouvrez la page Pool de nœuds de calcul dans la console Google Cloud:

    Ouvrir la page Pool de nœuds de calcul Cloud Build

  2. Sélectionnez le projet dans lequel vous avez créé le pool privé.

  3. Cliquez sur le nom du pool privé.

  4. Dans le panneau latéral Modifier le pool privé, mettez à jour le type de machine et/ou la taille du disque.

  5. Cliquez sur Enregistrer.

gcloud

En mettant à jour le fichier de configuration du pool privé :

  1. Mettez à jour le champ que vous souhaitez modifier dans votre fichier de configuration du pool privé.

  2. Exécutez la commande suivante, où PRIVATEPOOL_ID correspond à l'identifiant unique de votre pool privé, REGION est la région où se trouve votre pool privé, et PRIVATEPOOL_CONFIG_FILE ; est le nom de votre fichier de configuration de pool privé:

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

En transmettant la valeur à mettre à jour directement à la commande 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

Remplacez les valeurs d'espace réservé dans les commandes ci-dessus par les éléments suivants :

  • PRIVATEPOOL_ID : ID de votre pool privé existant. Vous ne pouvez pas mettre à jour cette valeur. Vous devez spécifier un ID de pool privé existant.
  • REGION: région dans laquelle vous avez créé votre pool privé.
  • PRIVATEPOOL_DISK_SIZE : taille du disque mise à jour.
  • PRIVATEPOOL_MACHINE_TYPE est le type de machine mis à jour.

API

  1. Dans le fichier de configuration du pool privé, procédez comme suit : mettre à jour la taille du disque et/ou le type de machine.

  2. Utilisez cURL pour appeler l'API Cloud Build, en remplaçant les variables par les valeurs appropriées :

    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
    

    Remplacez les valeurs d'espace réservé dans la commande ci-dessus par les éléments suivants :

    • PRIVATEPOOL_ID : ID de votre pool privé.
    • PRIVATEPOOL_PROJECT_ID: ID du projet Google Cloud qui contient votre pool privé.
    • REGION: région dans laquelle vous avez créé votre pool privé.

Afficher les détails de votre pool privé

Autorisations IAM: vous devez disposer du rôle Lecteur de pools de nœuds de calcul Cloud Build pour effectuer cette tâche. Pour obtenir des instructions sur l'attribution d'un rôle, consultez la page Configurer l'accès aux ressources Cloud Build.

Pour afficher les détails d'un pool privé, procédez comme suit :

Console

  1. Ouvrez la page Pool de nœuds de calcul dans la console Google Cloud:

    Ouvrir la page Pool de nœuds de calcul Cloud Build

  2. Sélectionnez le projet dans lequel vous avez créé le pool privé.

  3. Cliquez sur le nom du pool privé.

Le panneau latéral Modifier le pool privé s'affiche. Il contient les détails du pool privé.

gcloud

Si vous ne connaissez pas l'ID de votre pool privé, exécutez la commande suivante pour répertorier les détails de votre pool privé :

gcloud builds worker-pools list --project=PRIVATEPOOL_PROJECT_ID

PRIVATEPOOL_PROJECT_ID est l'ID du projet Google Cloud contenant le pool privé.

Un résultat semblable aux lignes suivantes doit s'afficher :

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

Si vous connaissez l'ID de votre pool privé, exécutez la commande suivante pour obtenir plus d'informations sur le pool privé :

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

Remplacez les valeurs d'espace réservé dans la commande ci-dessus par les éléments suivants :

  • PRIVATEPOOL_ID : ID de votre pool privé.
  • REGION: région dans laquelle vous avez créé votre pool privé.
  • PRIVATEPOOL_PROJECT_ID: ID du projet Google Cloud qui contient votre pool privé.

API

Si vous ne connaissez pas l'ID de votre pool privé, exécutez la commande suivante : cURL pour Listez les détails de votre pool privé, où PRIVATEPOOL_PROJECT_ID correspond à l'ID du projet Google Cloud contenant le pool privé:

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

Si vous connaissez votre ID de pool privé, exécutez la commande cURL suivante pour obtenir les détails de votre pool privé :

    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

Remplacez les valeurs d'espace réservé dans les commandes ci-dessus par les éléments suivants :

  • PRIVATEPOOL_ID : ID de votre pool privé.
  • PRIVATEPOOL_PROJECT_ID: ID du projet Google Cloud qui contient votre pool privé.
  • REGION : région dans laquelle vous avez créé votre pool privé.

Supprimer un pool privé

Autorisations IAM: vous devez disposer du rôle Propriétaire de pool de nœuds de calcul Cloud Build pour effectuer cette tâche. Pour obtenir des instructions sur l'attribution d'un rôle, consultez la page Configurer l'accès aux ressources Cloud Build.

Pour supprimer un pool privé, procédez comme suit :

Console

  1. Ouvrez la page Pool de nœuds de calcul dans la console Google Cloud:

    Ouvrir la page Pool de nœuds de calcul Cloud Build

  2. Sur la ligne correspondant à votre pool privé, cliquez sur l'icône Corbeille.

gcloud

Pour supprimer un pool privé, exécutez la commande gcloud builds worker-pools delete :

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

Remplacez les valeurs d'espace réservé dans la commande ci-dessus par les éléments suivants :

  • PRIVATEPOOL_ID : ID de votre pool privé.
  • PRIVATEPOOL_PROJECT_ID: ID du projet Google Cloud qui contient votre pool privé.
  • REGION : région dans laquelle vous avez créé votre pool privé.

Une fois le pool privé supprimé, un résultat semblable aux lignes suivantes s'affiche :

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

API

Utilisez cURL pour appeler l'API 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

Remplacez les valeurs d'espace réservé dans les commandes ci-dessus par les éléments suivants :

  • PRIVATEPOOL_ID : ID de votre pool privé.
  • PRIVATEPOOL_PROJECT_ID: ID du projet Google Cloud qui contient votre pool privé.
  • REGION : région dans laquelle vous avez créé votre pool privé.

Étape suivante