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

Le 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 fichiers manifestes et les configurations Skaffold, utilisés pour le déploiement (artefacts cibles).

Automatisation

L'automatisation vous permet de configurer votre pipeline de diffusion 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 afin que la promotion dans une cible spécifique se produise automatiquement, dans les circonstances appropriées. 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 des 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 enfant

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

Consultez également Déploiement du contrôleur.

Cible enfant

Pour le déploiement parallèle, cible représentant l'une des multiples cibles GKE, GKE Enterprise ou Cloud Run sur lesquelles vous effectuez un déploiement simultané.

Consultez également Multi-target (Multi-cible), Parallel deployment (Déploiement en parallèle) et Child rollout (Déploiement enfant).

Livraison continue

Pratique d'ingénierie logicielle permettant de publier 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.

Consultez également les sections Déploiement parallèle et Multi-cible.

Cible personnalisée

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

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. Contrairement à 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 diffusion. skaffold.yaml et clouddeploy.yaml sont des noms de fichier typiques pour la définition Skaffold et la définition du pipeline de diffusion.

Pipeline de livraison

Représentation du workflow qui livre 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
  • La séquence de promotion parmi ces cibles

Consultez également la section Instance de pipeline.

Crochet de déploiement

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 pouvant être ajoutés à un fichier manifeste, mais qui ne sont pas résolus lors du rendu. À la place, les valeurs de ces espaces réservés sont attribuées après l'affichage de chaque fichier manifeste spécifique à la cible. En savoir plus

Stratégie de déploiement

Technique permettant de déployer de manière sécurisée les modifications apportées à votre application 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:

  • 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

  • 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 alternatif pour les fichiers manifestes rendus dans Cloud Storage.

Hydratation

Voir Rendu.

Job

Opération spécifique à effectuer sur un déploiement, comme le déploiement ou la validation. En savoir plus

Exécution de la tâche

Ressource enfant d'un déploiement, l'exécution de la tâche est une instance de la tâche. Autrement dit, il représente une tentative d'effectuer 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.

Les fichiers manifestes dans Cloud Deploy 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 cible multiple est une seule étape de pipeline, mais peut comprendre plusieurs environnements d'exécution cibles.

Consultez également Cible enfant, Déploiement en parallèle et Déploiement du contrôleur.

Déploiement parallèle

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

Phase

Ensemble d'opérations (tâches) d'un déploiement regroupées logiquement, par exemple un déploiement ou un déploiement et une validation. En savoir plus

Pipeline

Consultez Pipeline de livraison.

Instance de pipeline

Instantané d'un pipeline de diffusion, 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 la section 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 de non-concordance 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 la section Instances de pipeline par version.

Progression

Dans votre fichier de configuration du pipeline de diffusion, configuration qui décrit une séquence de promotion d'une cible à une autre (par exemple, de test à staging, puis à prod).

Promotion

Processus consistant à faire passer une version d'une cible à une autre, conformément à 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 diffusion de l'application soit gérée par le service.

Version

Une 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

Préparer un fichier manifeste pour le déploiement 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 ce faire.

Déploiement

Ressource qui associe une version à une cible de déploiement. Un rollout est créé par version et par cible. Par conséquent, dans une progression simple sur trois cibles dans un pipeline de diffusion, 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 de déploiement d'une application sur une cible. Pour chaque étape définie dans le pipeline de livraison, votre application est entièrement déployée sur la cible, chaque fois en la remplaçant telle qu'elle était précédemment déployée.

Préproduction

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

  • dev
  • staging
  • prod

Chacune de ces étapes correspond à une phase.

Lors d'un déploiement parallèle, la multicible est une seule étape, 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 diffusion. Toutefois, les environnements d'exécution sur lesquels les cibles sont déployées peuvent se trouver dans différents projets et régions.

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

Artefact cible

Fichier de configuration utilisé pour l'affichage et le déploiement d'une application sur une cible. Il s'agit notamment du fichier manifeste Kubernetes ou de la définition de service Cloud Run, des fichiers de configuration Skaffold et de la source de rendu utilisée pour les créer.

Validation

Possibilité de vérifier 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