Terminologia di Cloud Deploy

I termini in questo documento sono definiti in base al loro utilizzo in Cloud Deploy.

Abbandona

Per disattivare definitivamente una release.

Applicazione

Il software che vuoi eseguire il deployment utilizzando Cloud Deploy.

Distribuzione delle applicazioni

Caricamento delle risorse necessarie per eseguire il deployment di un'applicazione in un ambiente di destinazione previsto. In Cloud Deploy, il deployment delle applicazioni consiste nel generare, promuovere e pubblicare i manifest Kubernetes della tua applicazione nel cluster.

Artefatto

Le immagini container da eseguire (artefatti di build) e i file di configurazione, come i manifest e le configurazioni di Skaffold, utilizzati per il deployment (artefatti target).

Automazione

L'Automation ti consente di configurare la pipeline di distribuzione e i target in modo da poter eseguire alcune azioni su release e implementazioni per la pipeline senza richiedere l'intervento umano. Ad esempio, puoi configurare la pipeline di pubblicazione in modo che la promozione in un target specifico venga eseguita automaticamente nelle circostanze giuste. Scopri di più.

Regola di automazione

Il comportamento di un'automazione è definito in parte dalla regola di automazione. Una regola di automazione definisce cosa viene automatizzato, ad esempio la promozione di una release.

Le regole di automazione disponibili sono elencate nel documento Utilizzare le regole di automazione.

Esecuzione automazione

Un'istanza di un'automazione.

Deployment canary

Una strategia di implementazione in cui implementi prima le modifiche per un sottoinsieme di utenti, le testi per verificarne l'affidabilità e poi le implementi completamente.

Implementazione secondaria

Per il deployment parallelo, l'implementazione generata per il deployment in un target secondario.

Vedi anche Implementazione del controller.

Target secondario

Per il deployment parallelo, un target che rappresenta uno dei molteplici target GKE, GKE Enterprise o Cloud Run su cui stai eseguendo il deployment contemporaneamente.

Vedi anche Multi-target, Deployment parallelo, Implementazione secondaria.

Distribuzione continua

Una pratica di ingegneria del software in cui le modifiche possono essere rilasciate agli utenti in modo sicuro, frequente e principalmente automatico.

Deployment continuo

Una pratica di ingegneria del software che comporta il deployment automatico delle modifiche al codice e alla configurazione.

Mentre il deployment continuo richiede l'approvazione manuale in una o più fasi, il deployment continuo è automatico e non richiede l'approvazione manuale.

Implementazione del controller

Un rollout generato per il deployment parallelo. L'implementazione del controller non viene utilizzata per il deployment in un singolo cluster o servizio di destinazione, ma ha un'implementazione secondaria per ogni target secondario.

Vedi anche Deployment parallelo, Multitarget.

Target personalizzato

Un target che utilizza un tipo di target personalizzato definito dall'utente anziché uno dei tipi di target supportati.

Dichiarativo

Configurazione per un sistema, ad esempio un cluster Kubernetes, che descrive lo stato previsto e si basa su quel sistema per raggiungerlo. È diverso dalla configurazione imperativa, in cui descrivi i passaggi specifici per raggiungere questo stato.

Oltre a eseguire il rendering e il deployment di manifest Kubernetes dichiarativi, Cloud Deploy utilizza definizioni di risorse dichiarative per definire il procedura di rendering e distribuzione. skaffold.yaml e clouddeploy.yaml sono nomi file tipici per la definizione di Skaffold e la definizione della pipeline di distribuzione.

Pipeline di distribuzione

Una rappresentazione del flusso di lavoro che distribuisce un'applicazione in ogni destinazione nel corso di un deployment.

La documentazione di Cloud Deploy utilizza il termine "pipeline di distribuzione" per distinguerla da altre pipeline che potresti utilizzare, ad esempio una pipeline CI.

In Cloud Deploy, la pipeline di distribuzione è definita in un file di configurazione YAML, in genere clouddeploy.yaml, e la definizione è composta da quanto segue:

  • Destinazioni di deployment
  • La sequenza della promozione tra questi target

Vedi anche Istanza pipeline.

Hook di deployment

Un'azione arbitraria che puoi eseguire prima o dopo il deployment. Scopri di più.

Parametri di deployment

Segnaposto che possono essere aggiunti a un manifest, ma che non vengono risolti nell'ambito del rendering. I valori di questi segnaposto vengono invece assegnati dopo il rendering di ogni manifest specifico per target. Scopri di più.

Strategia di deployment

Una tecnica per implementare in sicurezza le modifiche all'applicazione riducendo al minimo l'impatto sugli utenti.

Ambiente di esecuzione

Un insieme di risorse Google Cloud su cui viene eseguito Cloud Deploy. È composto da:

  • Il pool di worker predefinito o privato in cui Cloud Deploy esegue le azioni di rendering e di deployment

  • L'account di servizio dell'ambiente di esecuzione predefinito o alternativo che chiama Cloud Deploy per eseguire il rendering e il deployment

  • La posizione di archiviazione predefinita o alternativa per i manifest visualizzati in Cloud Storage.

Idratante

Vedi Eseguire il rendering.

Job

Un'operazione specifica da eseguire su un'implementazione, ad esempio il deployment o la verifica. Scopri di più.

Esecuzione job

Una risorsa secondaria di un'implementazione, l'esecuzione del job è un'istanza di un job. In altre parole, rappresenta un tentativo di eseguire un job come il deployment o la verifica. Scopri di più.

Manifest

Un oggetto di configurazione Kubernetes utilizzato per creare, modificare ed eliminare le risorse Kubernetes, come pod, deployment, servizi o ingressi.

I manifest in Cloud Deploy esistono in uno dei due stati: visualizzato o visualizzato. Un manifest non sottoposto a rendering non è pronto per il deployment in una destinazione. Il processo di rendering, che include il completamento di valori specifici nel manifest, viene spesso eseguito da strumenti come Helm, Kustomize e kpt. Cloud Deploy utilizza Skaffold per orchestrare il rendering della configurazione (comando skaffold render).

Vedi anche Rendering.

Più target

Quando configuri o esegui un deployment parallelo, un target multiplo è un singolo livello della pipeline, ma può comprendere più di un runtime target.

Consulta anche Destinazione secondaria, Deployment parallelo, Implementazione del controller.

Deployment parallelo

La pratica di implementare un'applicazione su più target contemporaneamente, nella stessa fase della pipeline di importazione. Questa tecnica ti consente di eseguire il deployment su più cluster o servizi di produzione, ad esempio.

Fase

La raccolta di operazioni (job) in un rollout raggruppate insieme in modo logico, ad esempio un deployment o un deployment e una verifica. Scopri di più.

Pipeline

Consulta Pipeline di distribuzione

Istanza pipeline

Uno snapshot di una pipeline di distribuzione, acquisito quando viene creato un release. Cloud Deploy conserva questo snapshot per garantire che tutti i deployment di una release siano gestiti in modo coerente utilizzando la pipeline così come è stata definita al momento della creazione del release.

Per saperne di più, consulta Istanze pipeline per release.

Mancata corrispondenza della pipeline

Quando una pipeline di distribuzione o una destinazione viene modificata dopo la creazione di una release, l'istanza della pipeline associata a release è diversa dalla definizione della pipeline.

Se si verifica una mancata corrispondenza della pipeline, Cloud Deploy ti chiede di esaminare le definizioni prima di promuovere una release o tentare un rollback.

Per saperne di più, consulta la sezione Istanze pipeline per release.

Progressione

Una configurazione nel file di configurazione della pipeline di distribuzione che descrive una sequenza di promozione da un target a un altro, ad esempio da test a staging a prod.

Promozione

Il processo di avanzamento di una release da un target all'altro, in base alla progressione definita nella pipeline di distribuzione.

Registrati

Fornire un'applicazione al servizio Cloud Deploy, sotto forma di una pipeline di distribuzione, in modo che la distribuzione dell'applicazione sia gestita dal servizio.

Rilascia

Una risorsa Cloud Deploy che rappresenta le modifiche (codice, configurazione o entrambe) da eseguire.

Il ciclo di vita delle release è descritto nel documento Architettura del servizio Cloud Deploy.

Esegui il rendering

Per preparare un manifest per il deployment nella destinazione. Il rendering di un manifest consiste principalmente nel fornire valori per le variabili al suo interno. Cloud Deploy esegue questa operazione utilizzando skaffold render.

Implementazione

Una risorsa che associa una release a una destinazione di deployment . Viene creato un rollout per release e per target, quindi in una semplice progressione su tre target in una pipeline di distribuzione, ci saranno tre risorse rollout per la release, una per ogni target.

Per i deployment più complessi, ad esempio se utilizzi una strategia di deployment canary, un rollout può essere più complicato. Scopri di più.

Strategia di deployment standard

La strategia di implementazione standard è il modo predefinito per eseguire il deployment di un'applicazione su un target. Per ogni fase definita nella pipeline di distribuzione, la tua applicazione viene eseguita completamente nella destinazione, sostituendola ogni volta come è stato eseguito in precedenza.

Fase

Un target o più target in una pipeline di distribuzione. Ad esempio, in una semplice pipeline di importazione con le seguenti fasi:

  • dev
  • staging
  • prod

Ciascuno di questi è una fase.

Quando esegui il deployment parallelo, il target multiplo è un singolo passaggio, ma i target secondari non sono passaggi separati.

Sospendi (una pipeline di distribuzione)

Per impedire la creazione e la promozione di release da una determinata pipeline di distribuzione. Per saperne di più, consulta la sezione Sospendere una pipeline di distribuzione

Target

L'ambiente di runtime specifico (cluster Kubernetes, servizio Cloud Run o altro runtime supportato) in cui eseguire il deployment dell'applicazione. Inoltre, la configurazione per quell'ambiente.

Puoi definire i target nel file di configurazione della pipeline di importazione o in un file separato.

I target devono essere definiti nello stesso progetto e nella stessa regione della pipeline di importazione. Tuttavia, i runtime in cui vengono eseguiti i deployment dei target possono trovarsi in progetti e regioni diversi.

Un target può anche essere un target multiplo o un target figlio per supportare il deployment parallelo.

Artefatto target

Un file di configurazione utilizzato per il rendering e il deployment di un'applicazione su un target. Sono inclusi il manifest Kubernetes o la definizione del servizio Cloud Run, i file di configurazione Skaffold e l'origine di rendering utilizzata per crearli.

Verifica

La possibilità di verificare che un deployment sia andato a buon fine, eseguendo un container arbitrario con i test. Scopri di più sulla verifica del deployment.