Crea e gestisci pool privati

In questa pagina viene descritto come creare, aggiornare, visualizzare ed eliminare Cloud Build e pool privati. Se non hai familiarità con i pool privati, consulta Panoramica dei pool privati.

Prima di iniziare

  1. Crea un nuovo progetto Google Cloud o scegli un progetto esistente. Utilizzerai questo progetto per creare il pool privato.

  2. Enable the Cloud Build API.

    Enable the API

  3. Per utilizzare gli esempi di riga di comando in questa guida, installa e configura Google Cloud CLI.

  4. [Facoltativo] Affinché le build possano accedere alle risorse private dalla tua rete Virtual Private Cloud, devi configurare una connessione in peering tra la tua rete Virtual Private Cloud e la rete Virtual Private Cloud in cui si trovano i pool privati. Per istruzioni, consulta la sezione sulla configurazione per creare pool privati.

Creazione di un nuovo pool privato

Autorizzazioni IAM: devi disporre di un proprietario del pool di worker di Cloud Build per eseguire questa attività. Per istruzioni su come concedere questo ruolo, consulta Configura l'accesso alle risorse Cloud Build.

Puoi creare fino a 10 pool privati per progetto Google Cloud per regione. A crea un nuovo pool privato:

Console

  1. Apri la pagina Pool di worker nella console Google Cloud:

    Apri la pagina del pool di worker di Cloud Build

  2. Seleziona il progetto in cui vuoi creare il pool privato.

  3. Nella pagina Pool di worker, fai clic su Crea.

    Verrà visualizzato il riquadro laterale Crea pool privato.

    Inserisci le seguenti informazioni per creare il pool privato:

    1. Nome: inserisci un nome per il pool privato. Questo valore può contenere solo caratteri alfanumerici /[a-z][0-9]/ o trattini -. Il nome del pool privato deve essere compreso tra 1 e 63 caratteri.

    2. Regione: seleziona la regione in cui vuoi creare il pool privato.

    3. Tipo di macchina: seleziona il tipo di macchina Compute Engine per cui desideri utilizzare la tua piscina privata.

    4. Dimensione disco disponibile: inserisci una dimensione per il pool privato. Specifica un valore maggiore o uguale a 100 e minore o uguale a 4000. Se non viene fornita, Cloud Build utilizza una dimensione del disco di 100.

      In Tipo di rete, seleziona una delle seguenti opzioni:

      1. Rete predefinita: seleziona questa opzione se la tua istanza è accessibili tramite la rete internet pubblica. Quando viene usata l'impostazione Rete predefinita l'opzione è selezionata, il pool privato utilizza il servizio un'azienda di produttori di contenuti. Per ulteriori informazioni, vedi Configurare un ambiente da utilizzare pool privati in una rete VPC.

      2. Rete privata: seleziona questa opzione se l'istanza è ospitata su una rete privata.

        1. Progetto: seleziona l'ID del tuo progetto Google Cloud.

        2. Rete: seleziona la tua rete dal menu a discesa. Se non hanno creato una rete, consulta Creare e gestire VPC reti per imparare a creare una rete.

        3. Intervallo IP: inserisci l'intervallo IP interno che la rete del produttore Cloud Build può utilizzare per allocare alle VM mantenendo una connessione con i repository privati.

          Puoi specificare l'intervallo utilizzando la notazione di routing CIDR (Classless Inter-Domain Routing) nel formato STARTING_IP_ADDRESS/SUBNET_PREFIX_SIZE. Ad esempio, 192.0.2.0/24 ha una lunghezza del prefisso di 24 caratteri. I primi 24 bit dell'intervallo IP vengono utilizzati come subnet mask (192.0.2.0), mentre i possibili indirizzi host sono compresi tra 192.0.2.0 e 192.0.2.255.

          Il valore della lunghezza del prefisso non deve superare /29. Se non viene specificato alcun valore per l'intervallo, viene assegnato automaticamente un valore predefinito di /24. Se non viene specificato alcun valore per la lunghezza del prefisso, gli indirizzi IP vengono assegnati automaticamente all'interno della rete VPC in peering. Se non viene specificato alcun valore per l'indirizzo IP, a quest'ultimo viene assegnato automaticamente un intervallo all'interno della rete VPC con peering.

    5. Assegna IP esterni: questa opzione è selezionata per impostazione predefinita per consentire l'accesso per accedere alla rete internet pubblica. Deseleziona questa casella per limitare l'accesso alla tua rete privata.

  4. Fai clic su Crea per creare il pool privato.

gcloud

Per creare un nuovo pool privato utilizzando gcloud hai due opzioni: puoi passare il file di configurazione del pool privato al comando gcloud oppure passare le opzioni di configurazione direttamente al comando gcloud.

Passaggio del file di configurazione del pool privato al comando gcloud:

  1. Crea la configurazione del pool privato nel file YAML o JSON.

  2. Esegui il seguente comando gcloud, dove PRIVATEPOOL_ID è un identificatore univoco per il tuo pool privato, PRIVATEPOOL_CONFIG_FILE è il nome del file di configurazione del pool privato e REGION è la regione in cui vuoi creare il pool privato:

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

    Dovresti vedere un output simile al seguente:

    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
    

Passaggio delle opzioni di configurazione direttamente al comando gcloud:

Esegui questo 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

Sostituisci i valori segnaposto nei comandi precedenti con i seguenti:

  • PRIVATEPOOL_ID: un identificatore univoco per il pool privato. Questo valore deve contenere da 1 a 63 caratteri e i caratteri validi sono [a-zA-Z0-9_-]+.
  • PRIVATEPOOL_PROJECT_ID: l'ID del progetto Google Cloud in cui vuoi creare il pool privato.
  • REGION: una delle regioni supportate.
  • PEERED_NETWORK: l'URL della risorsa di rete della rete connessa in peering con la rete del producer di servizi. PEERED_NETWORK deve essere nel formato projects/NETWORK_PROJECT_ID/global/networks/NETWORK_NAME, dove NETWORK_PROJECT_ID è l'ID progetto al progetto Google Cloud che contiene la tua rete VPC NETWORK_NAME è il nome della tua rete VPC. Se non specifichi un valore, Cloud Build utilizza il provider di servizi in ogni rete.
  • PRIVATEPOOL_DISK_SIZE_GB: le dimensioni del disco collegato alla piscina privata. Specifica un valore maggiore o uguale a 100 e minore o uguale a 4000. Se non viene specificato, Cloud Build utilizza una dimensione del disco di 100. L'override di --worker-disk-size viene eseguito se specificare una dimensione del disco diversa utilizzando --disk-size durante gcloud builds submit.
  • PRIVATEPOOL_MACHINE_TYPE: il tipo di macchina worker. Se viene lasciato vuoto, Cloud Build utilizza il valore predefinito di e2-standard-2. Per un elenco dei tipi di macchina supportati, vedi Schema del file di configurazione del pool privato. L'override di --worker-machine-type viene eseguito se specifichi una macchina diversa digita utilizzando --machine-type durante gcloud builds submit.
  • --no-public-egress: se questo flag è impostato, il pool privato viene creato senza un indirizzo IP esterno. Imposta questo flag creando un pool privato all'interno di un perimetro dei Controlli di servizio VPC.

API

  1. Crea il file di configurazione del pool privato denominato workerpool.json.

  2. Utilizza cURL per chiama 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
    

    Sostituisci i valori segnaposto del comando precedente con i seguenti:

    • PRIVATEPOOL_PROJECT_ID: l'ID del progetto Google Cloud in cui vuoi creare il pool privato.
    • PRIVATEPOOL_ID: l'ID per il tuo privato piscina. Questo valore deve contenere da 1 a 63 caratteri e caratteri validi sono [a-zA-Z0-9_-]+.
    • REGION: una delle regioni supportate per creare il tuo pool privato.

Creazione di un pool privato all'interno di un perimetro dei Controlli di servizio VPC

Se stai creando un pool privato all'interno di un perimetro dei Controlli di servizio VPC, consulta Utilizzo dei Controlli di servizio VPC.

Aggiornamento di un pool privato

Autorizzazioni IAM: devi disporre dell'editor del pool di worker di Cloud Build per eseguire questa attività. Per istruzioni su come concedere questo ruolo, consulta Configurazione dell'accesso alle risorse Cloud Build.

Puoi aggiornare le dimensioni del disco e il tipo di macchina di un pool privato esistente. Per aggiornare un pool privato:

Console

  1. Apri la pagina Pool di worker nella console Google Cloud:

    Apri la pagina del pool di worker di Cloud Build

  2. Seleziona il progetto in cui hai creato il pool privato.

  3. Fai clic sul nome del pool privato.

  4. Nel riquadro laterale Modifica pool privato, aggiorna il tipo di macchina e/o dimensioni del disco.

  5. Fai clic su Salva.

gcloud

Aggiornando il file di configurazione del pool privato:

  1. Aggiorna il campo che vuoi modificare nella configurazione del pool privato .

  2. Esegui questo comando, dove PRIVATEPOOL_ID è l'identificatore univoco del tuo pool privato, REGION è la regione in cui si trova il pool privato e PRIVATEPOOL_CONFIG_FILE è il nome del file di configurazione del pool privato:

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

Passando il valore per aggiornare direttamente 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

Sostituisci i valori segnaposto nei comandi precedenti con i seguenti:

  • PRIVATEPOOL_ID: l'ID del tuo profilo privato esistente piscina. Non puoi aggiornare questo valore; devi specificare un ID pool privato esistente.
  • REGION: la regione in cui hai creato il pool privato.
  • PRIVATEPOOL_DISK_SIZE: la dimensione del disco aggiornata.
  • PRIVATEPOOL_MACHINE_TYPE è il tipo di macchina aggiornato.

API

  1. Nel file di configurazione del pool privato, aggiornare la dimensione del disco e/o il tipo di macchina.

  2. Utilizza cURL per chiama l'API Cloud Build, sostituendo le variabili con i valori appropriati:

    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
    

    Sostituisci i valori segnaposto nel comando precedente con quanto segue:

    • PRIVATEPOOL_ID: l'ID del pool privato.
    • PRIVATEPOOL_PROJECT_ID: l'ID del progetto Google Cloud che contiene il tuo pool privato.
    • REGION: la regione in cui hai creato il pool privato.

Visualizzazione dei dettagli del pool privato

Autorizzazioni IAM: per eseguire questa operazione, devi disporre del ruolo Visualizzatore pool di lavoro Cloud Build. Per istruzioni su come concedere questo ruolo, consulta Configurazione dell'accesso alle risorse Cloud Build.

Per visualizzare i dettagli di un pool privato:

Console

  1. Apri la pagina Pool di worker nella console Google Cloud:

    Apri la pagina del pool di worker di Cloud Build

  2. Seleziona il progetto in cui hai creato il pool privato

  3. Fai clic sul nome del pool privato.

Viene visualizzato il riquadro laterale Modifica pool privato, che contiene i dettagli piscina privata.

gcloud

Se non conosci l'ID del tuo pool privato, esegui il seguente comando per elencarne i dettagli:

gcloud builds worker-pools list --project=PRIVATEPOOL_PROJECT_ID

dove PRIVATEPOOL_PROJECT_ID è l'ID del progetto Google Cloud che contiene il pool privato.

Dovresti vedere un output simile al seguente:

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

Se conosci l'ID del pool privato, esegui il seguente comando per ottenere ulteriori informazioni sul pool privato:

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

Sostituisci i valori segnaposto del comando precedente con i seguenti:

  • PRIVATEPOOL_ID: l'ID del tuo pool privato.
  • REGION: la regione in cui hai creato il pool privato.
  • PRIVATEPOOL_PROJECT_ID: l'ID del progetto Google Cloud che contiene il tuo pool privato.

API

Se non conosci l'ID del tuo pool privato, esegui il seguente comando cURL per elencare i dettagli del pool privato, dove PRIVATEPOOL_PROJECT_ID è l'ID del progetto Google Cloud contenente il pool privato:

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

Se conosci l'ID del pool privato, esegui questo Comando cURL per ottenere i dettagli del tuo pool privato:

    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

Sostituisci i valori segnaposto nei comandi precedenti con i seguenti:

  • PRIVATEPOOL_ID: l'ID del tuo pool privato.
  • PRIVATEPOOL_PROJECT_ID: l'ID del progetto Google Cloud che contiene il tuo pool privato.
  • REGION: la regione in cui hai creato il tuo pool privato.

Eliminazione di un pool privato

Autorizzazioni IAM: devi disporre di un proprietario del pool di worker di Cloud Build per eseguire questa attività. Per istruzioni su come concedere questo ruolo, consulta Configurazione dell'accesso alle risorse Cloud Build.

Per eliminare un pool privato:

Console

  1. Apri la pagina Pool di worker nella console Google Cloud:

    Apri la pagina del pool di worker di Cloud Build

  2. Nella riga corrispondente al tuo pool privato, fai clic sull'icona del cestino.

gcloud

Per eliminare un pool privato, esegui il comando gcloud builds worker-pools delete:

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

Sostituisci i valori segnaposto del comando precedente con i seguenti:

  • PRIVATEPOOL_ID: l'ID del pool privato.
  • PRIVATEPOOL_PROJECT_ID: l'ID del progetto Google Cloud che contiene il tuo pool privato.
  • REGION: la regione in cui hai creato il tuo pool privato.

Dopo aver eliminato il pool privato, dovresti vedere un output simile a questo: le seguenti:

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

API

Utilizza cURL per chiama 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

Sostituisci i valori segnaposto nei comandi precedenti con i seguenti:

  • PRIVATEPOOL_ID: l'ID del tuo pool privato.
  • PRIVATEPOOL_PROJECT_ID: l'ID del progetto Google Cloud che contiene il tuo pool privato.
  • REGION: la regione in cui hai creato il pool privato.

Passaggi successivi