Qu'est-ce que Déploiement canari (canary release) ?

Méthode de mise en production qui expose d'abord une nouvelle version à une partie seulement des utilisateurs ou des requêtes (par exemple 5 %) et augmente cette part progressivement s'il n'y a pas de problème, tout en surveillant des indicateurs comme le taux d'erreur et le temps de réponse. En cas de bogue, seule une partie des requêtes est touchée, et l'ancienne version peut être rétablie rapidement. Le nom vient des canaris que l'on emportait dans les mines de charbon pour être averti tôt de la présence de gaz toxiques. Comparer l'ancienne et la nouvelle version exige suffisamment de requêtes, et la surveillance des indicateurs est souvent combinée à un retour arrière automatique.

Nom japonais: カナリアリリース

« Déploiement canari (canary release) » apparaît dans 2 questions d'entraînement réparties sur 1 thèmes, dont Bases du cloud et des conteneurs.

Domaine: Bases du cloud et des conteneurs

S'entraîner : questions sur Déploiement canari (canary release)

Un service qui reçoit 12 000 requêtes par heure effectue un déploiement canari d'une nouvelle version et n'envoie à celle-ci que 5 % des requêtes. La nouvelle version a un bogue qui fait échouer 3 % des requêtes qu'elle reçoit ; on s'en aperçoit au bout d'une heure, et toutes les requêtes sont renvoyées vers l'ancienne version. Combien de requêtes ont échoué à cause du bogue pendant cette heure ?

  1. A18
  2. B360
  3. C600
Afficher la réponse et l'explication

Réponse : A. 18

La nouvelle version a reçu 12 000 × 5 % = 600 requêtes, dont 3 % ont échoué, soit 600 × 3 % = 18 requêtes en échec. Si toutes les requêtes avaient été basculées d'un coup vers la nouvelle version, 12 000 × 3 % = 360 auraient échoué. Un déploiement canari limite ainsi à une petite part les requêtes touchées par un bogue, et augmente cette part s'il n'y a pas de problème, tout en surveillant des indicateurs comme le taux d'erreur et le temps de réponse. Comparer les indicateurs de la nouvelle et de l'ancienne version exige suffisamment de requêtes : la part et la durée d'observation se décident donc ensemble.

« Déploiement canari (canary release) » dans les explications

Questions mentionnant « Déploiement canari (canary release) » (2)

  1. Un service qui reçoit 12 000 requêtes par heure effectue un déploiement canari d'une nouvelle version et n'envoie à celle-ci que 5 % des requêtes. La nouvelle version a un bogue qui fait échouer 3 % des requêtes qu'elle reçoit ; on s'en aperçoit au bout d'une heure, et toutes les requêtes sont renvoyées vers l'ancienne version. Combien de requêtes ont échoué à cause du bogue pendant cette heure ?
  2. On prépare deux environnements ayant la même configuration que la production ; la version actuelle continue de tourner dans l'un pendant que la nouvelle version est installée et vérifiée dans l'autre, puis le répartiteur de charge est basculé d'un coup vers ce dernier. En cas de problème, on revient rapidement à l'ancienne version en rebasculant. Quelle est cette méthode de mise en production ?

Termes associés

Répartiteur de charge (load balancer) Déploiement bleu-vert (blue-green deployment) Conteneur Docker Image de conteneur Informatique sans serveur (serverless) Infrastructure en tant que code (IaC) Infrastructure immuable (immutable infrastructure) Kubernetes Mise à l'échelle automatique (autoscaling)

Retour au glossaire