Terminologie Cloud Deploy

Les termes de ce document sont définis en fonction de leur utilisation dans Cloud Deploy.

Abandonner

Pour désactiver définitivement une version

Application

Logiciel que vous allez déployer à l'aide de Cloud Deploy.

Livraison d'application

Diffusion des composants nécessaires au déploiement d'une application dans un environnement cible prévu. Dans Cloud Deploy, la diffusion d'applications consiste à générer, promouvoir et diffuser les fichiers manifestes Kubernetes de votre application dans le cluster.

Artefact

Les images de conteneur à déployer (artefacts de compilation) et les fichiers de configuration, tels que les manifestes et les configurations Skaffold, utilisés pour le déploiement (artefacts cibles).

Automatisation

L'automatisation vous permet de configurer votre pipeline de livraison et vos cibles afin que certaines actions puissent être effectuées sur les versions et les déploiements de ce pipeline, sans intervention humaine. Par exemple, vous pouvez configurer votre pipeline de diffusion pour que la promotion vers une cible spécifique se fasse automatiquement, dans les bonnes circonstances. En savoir plus

Règle d'automatisation

Le comportement d'une automatisation est défini en partie par la règle d'automatisation. Une règle d'automatisation définit ce qui est automatisé (par exemple, la promotion d'une version).

Les règles d'automatisation disponibles sont listées dans le document Utiliser les règles d'automatisation.

Exécution de l'automatisation

Instance d'une automatisation.

Déploiement Canary

Stratégie de déploiement dans laquelle vous déployez d'abord vos modifications auprès d'un sous-ensemble d'utilisateurs, les testez pour vous assurer de leur fiabilité, puis les déployez complètement.

Déploiement pour les enfants

Pour le déploiement en parallèle, le déploiement généré pour le déploiement vers une cible enfant.

Voir aussi Déploiement du contrôleur.

Cible enfant

Pour le déploiement parallèle, une cible représente l'une des multiples cibles GKE, GKE attachées ou Cloud Run individuelles sur lesquelles vous effectuez un déploiement simultanément.

Voir aussi : Multicible, Déploiement en parallèle, Déploiement enfant.

Livraison continue

Pratique d'ingénierie logicielle qui permet de déployer des modifications auprès des utilisateurs de manière sûre, fréquente et principalement automatique.

Déploiement continu

Pratique d'ingénierie logicielle qui permet de déployer automatiquement les modifications apportées au code et à la configuration.

Alors que la livraison continue nécessite une approbation manuelle à une ou plusieurs étapes, le déploiement continu est automatique et ne nécessite aucune approbation manuelle.

Déploiement du contrôleur

Déploiement généré pour le déploiement parallèle. Le déploiement du contrôleur n'est pas utilisé pour déployer sur un seul cluster ou service cible. Il comporte plutôt un déploiement enfant pour chaque cible enfant.

Voir aussi Déploiement parallèle, Multicible.

Cible personnalisée

Cible qui utilise un type de cible personnalisé défini par l'utilisateur plutôt qu'un des types de cibles acceptés.

Déclarative

Configuration d'un système, tel qu'un cluster Kubernetes, qui décrit l'état souhaité et s'appuie sur ce système pour atteindre cet état. À l'inverse de la configuration impérative, dans laquelle vous décrivez les étapes spécifiques à suivre pour atteindre cet état.

En plus de générer et de déployer des fichiers manifestes Kubernetes déclaratifs, Cloud Deploy utilise des définitions de ressources déclaratives pour définir le processus de rendu et de livraison. skaffold.yaml et clouddeploy.yaml sont des noms de fichiers typiques pour la définition Skaffold et la définition du pipeline de déploiement.

Pipeline de livraison

Représentation du workflow qui assure la livraison d'une application à chaque cible dans une progression de déploiement.

La documentation de Cloud Deploy utilise le terme "pipeline de livraison" pour le distinguer des autres pipelines que vous pouvez utiliser, tels qu'un pipeline CI.

Dans Cloud Deploy, le pipeline de diffusion est défini dans un fichier de configuration YAML (généralement clouddeploy.yaml). Cette définition se compose des éléments suivants :

  • Ciblesde déploiement
  • Séquence de promotion entre ces cibles

Consultez également la section Instance de pipeline.

Hook de déploiement

Une action arbitraire que vous pouvez exécuter avant ou après le déploiement. En savoir plus

Paramètres de déploiement

Espaces réservés qui peuvent être ajoutés à un fichier manifeste, mais qui ne sont pas résolus lors du rendu. Au lieu de cela, les valeurs de ces espaces réservés sont attribuées après le rendu de chaque fichier manifeste spécifique à la cible. En savoir plus

Stratégie de déploiement

Technique permettant de déployer des modifications dans votre application de manière sécurisée tout en minimisant l'impact sur les utilisateurs.

Environnement d'exécution

Ensemble de ressources Google Cloud sur lesquelles Cloud Deploy s'exécute. Il inclut les éléments suivants:

  • Le pool de nœuds de calcul par défaut ou privé dans lequel Cloud Deploy exécute les actions de rendu et de déploiement.

  • Le compte de service d'environnement d'exécution par défaut ou autre qui appelle Cloud Deploy pour effectuer le rendu et le déploiement.

  • Emplacement de stockage par défaut ou autre pour les fichiers manifestes rendus dans Cloud Storage.

Hydratant

Voir Rendu.

Job

Opération spécifique à effectuer sur un déploiement, comme déployer ou valider. En savoir plus

Exécution du job

Ressource enfant d'un déploiement, l'exécution du job est une instance d'un job. Autrement dit, il représente une tentative d'exécution d'une tâche telle que le déploiement ou la validation. En savoir plus

Fichier manifeste

Objet de configuration Kubernetes utilisé pour créer, modifier et supprimer des ressources Kubernetes telles que des pods, des déploiements, des services ou des entrées.

Dans Cloud Deploy, les fichiers manifestes existent dans l'un des deux états suivants : rendu ou non rendu. Un fichier manifeste non rendu n'est pas prêt pour le déploiement dans une cible. Le processus de rendu, qui inclut le remplissage de valeurs spécifiques dans le fichier manifeste, est souvent effectué à l'aide d'outils tels que Helm, Kustomize et kpt. Cloud Deploy utilise Skaffold pour orchestrer le rendu de la configuration (commande skaffold render).

Voir aussi Rendu.

Multicible

Lors de la configuration ou de l'exécution d'un déploiement parallèle, une multicible est une seule étape de pipeline, mais peut être constituée de plusieurs environnements d'exécution.

Voir aussi Cible enfant, Déploiement en parallèle, Déploiement du contrôleur.

Déploiement parallèle

Pratique consistant à déployer une application sur plusieurs cibles en même temps, au cours de la même étape du pipeline de livraison. Cette technique vous permet de déployer des applications sur plusieurs clusters ou services en production, par exemple.

Phase

Ensemble d'opérations (jobs) d'un déploiement qui sont regroupées de manière logique, par exemple un déploiement ou un déploiement et une vérification. En savoir plus

Pipeline

Consultez Pipeline de livraison.

Instance de pipeline

Instantané d'un pipeline de livraison, pris lors de la création d'un release. Cloud Deploy conserve cet instantané pour s'assurer que tous les déploiements d'une version sont gérés de manière cohérente à l'aide du pipeline tel qu'il a été défini lors de la création de release.

Pour en savoir plus, consultez Instances de pipeline par version.

Divergence du pipeline

Lorsqu'un pipeline de diffusion ou une cible est modifié après la création d'une version, l'instance de pipeline associée à release est désormais différente de la définition de pipeline.

En cas d'incohérence de pipeline, Cloud Deploy vous invite à examiner les définitions avant de promouvoir une version ou de tenter un rollback.

Pour en savoir plus, consultez Instances de pipeline par version.

Progression

Configuration, dans le fichier de configuration de votre pipeline de diffusion, qui décrit une séquence de promotion d'une cible ou d'une cible multiple vers une autre (par exemple, de test à staging à prod).

Promotion

Processus de transfert d'une version d'une cible à une autre, selon la progression définie dans le pipeline de livraison.

Enregistrer

Fournir une application au service Cloud Deploy sous la forme d'un pipeline de livraison, afin que la livraison de l'application soit gérée par le service.

Version

Ressource Cloud Deploy qui représente les modifications (code, configuration ou les deux) à déployer.

Le cycle de vie des versions est décrit dans le document Architecture du service Cloud Deploy.

Rendu

Pour préparer un fichier manifeste à déployer dans la cible. Le rendu d'un fichier manifeste consiste principalement à fournir des valeurs pour les variables du fichier manifeste. Cloud Deploy utilise skaffold render pour cela.

Déploiement

Ressource qui associe une version à une cible de déploiement. Un rollout est créé par version et par cible. Ainsi, dans une progression simple sur trois cibles dans un pipeline de livraison, il y aurait trois ressources rollout pour la version, une pour chaque cible.

Pour les déploiements plus complexes, par exemple en utilisant une stratégie de déploiement canary, un rollout peut être plus compliqué. En savoir plus

Stratégie de déploiement standard

La stratégie de déploiement standard est la méthode par défaut pour déployer une application sur une cible. Pour chaque étape définie dans le pipeline de diffusion, votre application est entièrement déployée sur la cible, en remplaçant à chaque fois l'application telle qu'elle avait été déployée précédemment.

Étape

Une ou plusieurs cibles dans un pipeline de livraison. Par exemple, dans un pipeline de diffusion simple comportant les étapes suivantes :

  • dev
  • staging
  • prod

Chacune de ces étapes est une phase.

Lors d'un déploiement parallèle, la multicible est une étape unique, mais les cibles enfants ne sont pas des étapes distinctes.

Suspendre (un pipeline de livraison)

Pour empêcher la création et la promotion de versions à partir d'un pipeline de livraison donné. Pour en savoir plus, consultez Suspendre un pipeline de livraison.

Cible

Environnement d'exécution spécifique (cluster Kubernetes, service Cloud Run ou autre environnement d'exécution compatible) dans lequel déployer l'application. ainsi que la configuration de cet environnement.

Vous pouvez définir vos cibles dans le fichier de configuration de votre pipeline de diffusion ou dans un fichier distinct.

Les cibles doivent être définies dans le même projet et la même région que le pipeline de livraison. Toutefois, les environnements d'exécution sur lesquels les cibles sont déployées peuvent se trouver dans des projets et régions différents.

Une cible peut également être une cible multicible ou une cible enfant pour prendre en charge le déploiement parallèle.

Artefact cible

Fichier de configuration utilisé pour afficher et déployer une application sur une cible. Il s'agit, entre autres, des fichiers manifestes Kubernetes ou de définition de service Cloud Run, des fichiers de configuration Skaffold et de la source de rendu utilisée pour les créer.

Validation

La possibilité de confirmer qu'un déploiement a réussi en exécutant un conteneur arbitraire avec des tests. En savoir plus sur la validation du déploiement