Questa pagina descrive come creare, aggiornare, visualizzare ed eliminare i pool privati di Cloud Build. Se non hai dimestichezza con i pool privati, consulta la panoramica sui pool privati.
Prima di iniziare
Crea un nuovo progetto Google Cloud o scegline uno esistente. Utilizzerai questo progetto per creare il pool privato.
-
Attiva l'API Cloud Build.
Per utilizzare gli esempi di riga di comando in questa guida, installa e configura Google Cloud CLI.
[Facoltativo] Affinché le build accedano alle risorse private dalla tua rete Virtual Private Cloud, devi configurare una connessione in peering tra la rete Virtual Private Cloud e la rete Virtual Private Cloud in cui si trovano i pool privati. Per le istruzioni, vedi Configurare l'ambiente per creare pool privati.
Creazione di un nuovo pool privato
Autorizzazioni IAM: devi avere il ruolo Proprietario pool di worker Cloud Build per eseguire questa attività. Per istruzioni sulla concessione di questo ruolo, consulta Configurare l'accesso alle risorse di Cloud Build.
Puoi creare fino a 10 pool privati per progetto Google Cloud per area geografica. Per creare un nuovo pool privato:
Console
Apri la pagina Pool di worker nella console Google Cloud:
Seleziona il progetto in cui vuoi creare il pool privato.
Nella pagina Pool di worker, fai clic su Crea.
Verrà visualizzato il riquadro laterale Crea pool privato.
Inserisci le seguenti informazioni per creare il tuo pool privato:
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.Regione: seleziona la regione in cui vuoi creare il pool privato.
Tipo di macchina: seleziona il tipo di macchina Compute Engine da utilizzare per il pool privato.
Dimensioni disco disponibile: inserisci una dimensione del disco per il pool privato. Specifica un valore maggiore o uguale a 100 e minore o uguale a 1000. Se non specificato, Cloud Build utilizza una dimensione disco pari a 100.
In Tipo di rete, seleziona una delle seguenti opzioni:
Rete predefinita: seleziona questa opzione se l'istanza è accessibile tramite la rete internet pubblica. Quando è selezionata l'opzione Rete predefinita, il pool privato utilizza la rete del producer di servizi. Per ulteriori informazioni, consulta Configurare l'ambiente per l'utilizzo di pool privati in una rete VPC.
Rete privata: seleziona questa opzione se l'istanza è ospitata su una rete privata.
Progetto: seleziona il tuo ID progetto Google Cloud.
Rete: seleziona la rete dal menu a discesa. Se non hai creato una rete, consulta Creazione e gestione delle reti VPC per informazioni su come creare una rete.
Intervallo IP: inserisci l'intervallo IP interno che la rete del producer di Cloud Build può utilizzare per allocare alle VM mantenendo una connessione con 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, il prefisso192.0.2.0/24
è di 24 caratteri. I primi 24 bit dell'intervallo IP vengono utilizzati come subnet mask (192.0.2.0
), mentre gli indirizzi host possibili sono compresi nell'intervallo192.0.2.0
-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, all'indirizzo IP viene assegnato automaticamente un intervallo all'interno della rete VPC in peering.
Assegna IP esterni: questa opzione è selezionata per impostazione predefinita per consentire ai pool privati di accedere alla rete internet pubblica. Deseleziona questa casella per limitare l'accesso alla tua rete privata.
Fai clic su Crea per creare il pool privato.
gcloud
Hai due opzioni per creare un nuovo pool privato utilizzando gcloud
: puoi passare il file di configurazione del pool privato al comando gcloud
o passare le opzioni di configurazione direttamente al comando gcloud
.
Passare il file di configurazione del pool privato al comando gcloud
:
Crea il file di configurazione del pool privato in formato YAML o JSON.
Esegui questo comando
gcloud
, dovePRIVATEPOOL_ID
è un identificatore univoco per il pool privato,PRIVATEPOOL_CONFIG_FILE
è il nome del file di configurazione del pool privato eREGION
è l'area geografica 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
Passare le 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 riportati sopra con quanto segue:
PRIVATEPOOL_ID
: un identificatore univoco per il pool privato. Questo valore deve contenere da 1 a 63 caratteri. 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 in peering con la rete del producer di servizi.PEERED_NETWORK
deve essere nel formatoprojects/NETWORK_PROJECT_ID/global/networks/NETWORK_NAME
, doveNETWORK_PROJECT_ID
è l'ID del progetto Google Cloud che contiene la rete VPC eNETWORK_NAME
è il nome della rete VPC. Se non specifichi un valore, Cloud Build utilizza la rete del fornitore di servizi.PRIVATEPOOL_DISK_SIZE_GB
: la dimensione del disco collegato al pool privato. Specifica un valore maggiore o uguale a 100 e minore o uguale a 1000. Se non specificato, Cloud Build utilizza una dimensione del disco pari a 100.--worker-disk-size
viene sostituito se specifichi una dimensione del disco diversa utilizzando--disk-size
durantegcloud builds submit
.PRIVATEPOOL_MACHINE_TYPE
: il tipo di macchina del worker. Se lasciato vuoto, Cloud Build utilizza il valore predefinito die2-standard-2
. Per un elenco dei tipi di macchine supportati, consulta lo schema del file di configurazione del pool privato.--worker-machine-type
viene sostituito se specifichi un tipo di macchina diverso utilizzando--machine-type
durantegcloud builds submit
.--no-public-egress
: se questo flag è impostato, il pool privato viene creato senza un indirizzo IP esterno. Imposta questo flag se stai creando il pool privato all'interno di un perimetro dei Controlli di servizio VPC.
API
Crea il file di configurazione del pool privato denominato
workerpool.json
.Utilizza cURL per chiamare 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 nel comando precedente con quanto segue:
PRIVATEPOOL_PROJECT_ID
: l'ID del progetto Google Cloud in cui vuoi creare il pool privato.PRIVATEPOOL_ID
: l'ID del tuo pool privato. Questo valore deve contenere da 1 a 63 caratteri e i caratteri validi sono[a-zA-Z0-9_-]+
.REGION
: una delle regioni supportate per creare il 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 avere il ruolo Editor pool di worker di Cloud Build per eseguire questa attività. Per istruzioni sulla concessione di questo ruolo, vedi Configurazione dell'accesso alle risorse di Cloud Build.
Puoi aggiornare le dimensioni del disco e il tipo di macchina di un pool privato esistente. Per aggiornare un pool privato:
Console
Apri la pagina Pool di worker nella console Google Cloud:
Seleziona il progetto in cui hai creato il pool privato.
Fai clic sul nome del pool privato.
Nel riquadro laterale Modifica pool privato, aggiorna il tipo di macchina e/o le dimensioni del disco.
Fai clic su Salva.
gcloud
Aggiornando il file di configurazione del pool privato:
Aggiorna il campo che vuoi modificare nel file di configurazione del pool privato.
Esegui questo comando, dove
PRIVATEPOOL_ID
è l'identificatore univoco del pool privato,REGION
è la regione in cui si trova il pool privato ePRIVATEPOOL_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 l'aggiornamento 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 riportati sopra con quanto segue:
PRIVATEPOOL_ID
: l'ID del pool privato esistente. 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
: le dimensioni del disco aggiornate.PRIVATEPOOL_MACHINE_TYPE
è il tipo di macchina aggiornato.
API
Nel file di configurazione del pool privato, aggiorna le dimensioni del disco e/o il tipo di macchina.
Utilizza cURL per chiamare 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 pool privato.REGION
: la regione in cui hai creato il pool privato.
Visualizzazione dei dettagli del pool privato
Autorizzazioni IAM: per eseguire questa attività devi avere il ruolo Visualizzatore pool di worker Cloud Build. Per istruzioni sulla concessione di questo ruolo, vedi Configurazione dell'accesso alle risorse di Cloud Build.
Per visualizzare i dettagli di un pool privato:
Console
Apri la pagina Pool di worker nella console Google Cloud:
Seleziona il progetto in cui hai creato il pool privato
Fai clic sul nome del pool privato.
Viene visualizzato il riquadro laterale Modifica pool privato, con i dettagli del pool privato.
gcloud
Se non conosci l'ID del pool privato, esegui il comando seguente per elencare i dettagli del pool privato:
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 tuo pool privato, esegui questo comando per ottenere maggiori informazioni sul pool privato:
gcloud builds worker-pools describe PRIVATEPOOL_ID \
--region=REGION \
--project=PRIVATEPOOL_PROJECT_ID
Sostituisci i valori segnaposto nel comando precedente con quanto segue:
PRIVATEPOOL_ID
: l'ID del pool privato.REGION
: la regione in cui hai creato il pool privato.PRIVATEPOOL_PROJECT_ID
: l'ID del progetto Google Cloud che contiene il 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 tuo pool privato, esegui il seguente comando cURL per ottenere i dettagli del 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 riportati sopra con quanto segue:
PRIVATEPOOL_ID
: l'ID del pool privato.PRIVATEPOOL_PROJECT_ID
: l'ID del progetto Google Cloud che contiene il pool privato.REGION
: la regione in cui hai creato il pool privato.
Eliminazione di un pool privato
Autorizzazioni IAM: devi avere il ruolo Proprietario pool di worker Cloud Build per eseguire questa attività. Per istruzioni sulla concessione di questo ruolo, vedi Configurazione dell'accesso alle risorse di Cloud Build.
Per eliminare un pool privato:
Console
Apri la pagina Pool di worker nella console Google Cloud:
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 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 pool privato.REGION
: la regione in cui hai creato il pool privato.
Dopo l'eliminazione del pool privato, dovresti visualizzare un output simile al seguente:
Deleted [https://cloudbuild.googleapis.com/v1/projects/gcb-docs-project/locations/us-central1/workerPools/[PRIVATEPOOL_ID].
API
Utilizza cURL per chiamare 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 riportati sopra con quanto segue:
PRIVATEPOOL_ID
: l'ID del pool privato.PRIVATEPOOL_PROJECT_ID
: l'ID del progetto Google Cloud che contiene il pool privato.REGION
: la regione in cui hai creato il pool privato.
Passaggi successivi
- Scopri come eseguire build in pool privati.
- Scopri come utilizzare i Controlli di servizio VPC con pool privati.