Utilizzo degli ambienti di esecuzione di Google Cloud Deploy

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Un ambiente di esecuzione di Google Cloud Deploy è l'ambiente in cui Google Cloud Deploy esegue le operazioni di rendering, deployment e verifica. L'ambiente di esecuzione è costituito dai seguenti componenti:

  • Il pool di worker di Cloud Build (predefinito o privato) in cui Google Cloud Deploy esegue le operazioni di rendering, deployment e verifica

  • L'account di servizio (predefinito o alternativo) che chiama Google Cloud Deploy per eseguire queste azioni

  • La località di archiviazione (predefinita o alternativa) per i manifest visualizzati in Cloud Storage

  • Il timeout di Cloud Build per le operazioni (predefinito o personalizzato)

Questo articolo descrive l'ambiente di esecuzione predefinito, gli account di servizio e lo spazio di archiviazione per Google Cloud Deploy, nonché perché e come puoi modificarli.

Valori predefiniti

Di seguito sono riportati i valori predefiniti utilizzati da Google Cloud Deploy per l'esecuzione, per eseguire rendering e deployment e per archiviare asset come manifest visualizzati:

  • Pool di worker predefinito

    Per impostazione predefinita, Google Cloud Deploy viene eseguito nel pool di worker di Cloud Build predefinito. Tuttavia, puoi configurare Google Cloud Deploy per utilizzare un pool di worker privato di Cloud Build.

    Per maggiori dettagli sui pool di worker, consulta Panoramica dei pool privati e dei pool privati di Cloud Build.

  • Account di servizio di esecuzione predefinito

    Per impostazione predefinita, Google Cloud Deploy utilizza l'account di servizio predefinito di Compute Engine.

  • Località di archiviazione Google Cloud Deploy predefinita

    Questo valore è il bucket Cloud Storage in cui Google Cloud Deploy archivia i manifest visualizzati. Per impostazione predefinita, Google Cloud Deploy crea un bucket Cloud Storage, nella stessa regione delle risorse Google Cloud Deploy, nel seguente formato:

    <location>.deploy-artifacts.<project ID>.appspot.com

  • Timeout Cloud Build predefinito

    Per impostazione predefinita, Cloud Build ha un timeout di 1 ora sulle operazioni eseguite per Google Cloud Deploy. Puoi modificare il timeout nella specifica dell'ambiente di esecuzione nella configurazione di destinazione.

Le seguenti sezioni descrivono le situazioni in cui cambieresti uno qualsiasi di questi valori e contengono link alle istruzioni per farlo.

Informazioni sui pool di worker di Cloud Build

L'ambiente di esecuzione di Google Cloud Deploy può utilizzare uno dei seguenti:

  • Il pool predefinito di Cloud Build

    Il pool di worker predefinito è un ambiente ospitato sicuro con accesso alla rete Internet pubblica. Le operazioni di rendering, deployment e verifica vengono eseguite nel pool, isolato dagli altri carichi di lavoro.

  • Una piscina privata

    I pool di worker privati sono pool privati e dedicati che possono essere personalizzati in misura maggiore rispetto al pool di worker predefinito. Questa personalizzazione può includere la possibilità di accedere alle risorse in una rete privata. Come il pool di worker predefinito, i pool di worker privati sono ospitati e gestiti completamente da Cloud Build. Questi pool possono fare lo scale up o lo scale down a zero, senza necessità di configurazione, upgrade o scalabilità dell'infrastruttura.

    La panoramica sui pool privati di Cloud Build descrive i pool di worker predefiniti e i pool di worker privati in modo più approfondito, inclusa una tabella che ne confronta le funzionalità.

Modifica dell'ambiente di esecuzione di Google Cloud Deploy

Potresti cambiare l'ambiente di esecuzione di Google Cloud Deploy nelle seguenti circostanze:

  • Vuoi eseguire il deployment in un cluster privato Google Kubernetes Engine

  • Vuoi che le operazioni di rendering, deployment o verifica, o una combinazione delle tre, siano eseguite in un ambiente isolato da altre organizzazioni.

  • Vuoi che queste operazioni vengano eseguite in un ambiente non connesso alla rete Internet pubblica.

  • Vuoi ambienti separati per il rendering e il deployment.

  • Vuoi utilizzare un account di servizio dedicato con autorizzazioni più specifiche per l'utilizzo rispetto alle autorizzazioni disponibili nell'account di servizio predefinito.

  • Vuoi archiviare i manifest visualizzati in una località diversa dal bucket Cloud Storage predefinito.

La configurazione di tutte e tre le parti dell'ambiente di esecuzione (pool di worker, account di servizio e archiviazione) viene eseguita per destinazione, nella configurazione YAML di ogni target.

Passaggio dal pool predefinito a un pool privato

Configura i pool di worker per target, in modo che vengano utilizzati per RENDER, DEPLOY o VERIFY (o una combinazione dei tre) solo per quel target.

Per utilizzare il pool di worker predefinito sia per il rendering che per il deployment, non devi fare nulla.

Di seguito è riportato un esempio di configurazione di destinazione che specifica un pool di worker privato per DEPLOY e il pool di worker predefinito per RENDER e VERIFY:

executionConfigs:
- usages:
  - DEPLOY
  workerPool: "projects/p123/locations/us-central1/workerPools/wp123"
- usages:
  - RENDER
  - VERIFY

Per ulteriori informazioni su come configurare pool privati per le destinazioni, consulta la documentazione di configurazione della pipeline di distribuzione.

Passaggio dall'account di servizio all'esecuzione personalizzata in modo predefinito

Come con il pool di worker, puoi specificare un account di servizio alternativo da utilizzare per il rendering o il deployment (o entrambi) per ogni destinazione. Per farlo, aggiungi la seguente riga alla configurazione di destinazione, dopo l'elemento workerPool:

serviceAccount: "[name]@[project_name].iam.gserviceaccount.com"

L'account di servizio specificato deve includere il ruolo clouddeploy.jobRunner, come descritto nel documento Account di servizio Google Cloud Deploy.

Per ulteriori dettagli su questa configurazione, consulta la sezione Definizioni di destinazione.

Modificare la posizione di archiviazione

Per modificare il bucket di archiviazione dal valore predefinito di Google Cloud Deploy, aggiungi la seguente riga alla definizione di destinazione nella intestazione workerPool:

artifactStorage: "gs://[bucket_name]/[dir]"

Questa configurazione cambia la posizione in cui vengono archiviati i manifest sottoposti a rendering, ma non interessa la posizione in cui è archiviata l'origine di rendering.

Utilizzo di Google Cloud Deploy in un perimetro Controlli di servizio VPC

Google Cloud Deploy supporta i Controlli di servizio VPC.

Puoi seguire la guida rapida di Controlli di servizio VPC per configurare un perimetro di servizio.

Limitazioni

  • Devi utilizzare un pool di worker privato di Cloud Build per l'ambiente di esecuzione della destinazione, non per il pool di worker predefinito.

  • Il progetto che contiene il pool di worker e quello che contiene le tue risorse Google Cloud Deploy deve rimanere nello stesso perimetro di sicurezza dei Controlli di servizio VPC.

  • Qualsiasi cluster GKE di cui esegui il deployment nel perimetro dei Controlli di servizio VPC deve essere un cluster privato.

    Per configurare un pool privato per un cluster privato, consulta questo tutorial.

Passaggi successivi