Schéma de gestion des versions

Jalons et numéros de build

Les versions majeures des images Container-Optimized OS sont identifiées à l'aide de ce que nous appelons des jalons. Les jalons Container-Optimized OS sont des entiers augmentant de manière monotone. Chaque nouveau jalon indique le début d'un nouveau cycle de développement (une branche de notre code), et peut présenter de nouvelles fonctionnalités et d'autres modifications importantes.

Pendant toute la durée de vie d'un jalon Container-Optimized OS, nous pouvons publier plusieurs mises à jour contenant des corrections de bugs, des correctifs de sécurité et d'autres modifications. Ces releases incrémentielles d'un jalon peuvent être identifiées à l'aide du numéro de build.

Le jalon et le numéro de build de l'instance Container-Optimized OS que vous utilisez peuvent être identifiés en inspectant le fichier /etc/os-release. Dans ce fichier, la valeur du champ VERSION_ID (par exemple, VERSION_ID=81) représente le jalon, et la valeur du champ BUILD_ID (par exemple, BUILD_ID=12871.1160.0) représente le numéro de build. Le jalon et le numéro de build figurent également dans le nom de l'image Container-Optimized OS. Par exemple, l'image cos-81-12871-1160-0 comporte le jalon 81 et le numéro de build 12871-1160-0.

Jalons LTS (Long Term Support)

Les jalons conçus pour une utilisation en production et bénéficiant d'une assistance de plus longue durée portent le libellé LTS (Long Term Support). Sur Compute Engine, nous utilisons la fonctionnalité des familles d'images pour ajouter un libellé à nos releases LTS et les identifier.

Le tableau suivant fournit un résumé des versions de Container-Optimized OS disponibles sur Compute Engine:

Jalons actifs

Version d'OS Projet de l'image Famille d'images x86 Famille d'images Arm Créé par Fin de la période de compatibilité Notes de version
COS 113 LTS cos-cloud cos-113-lts cos-arm64-113-lts Google Mars 2026 jalon 113
COS 109 LTS cos-cloud cos-109-lts cos-arm64-109-lts Google Septembre 2025 jalon 109
COS 105 LTS cos-cloud cos-105-lts cos-arm64-105-lts Google Mars 2025 jalon 105
COS 101 LTS cos-cloud cos-101-lts cos-arm64-101-lts Google Septembre 2024 jalon 101

Jalons obsolètes

Version d'OS Projet de l'image Famille d'images x86 Famille d'images Arm Créé par Début de la période d'abandon Notes de version
COS 97 LTS cos-cloud cos-97-lts N/A Google Avril 2024 jalon 97
COS 93 LTS cos-cloud cos-93-lts N/A Google Octobre 2023 jalon 93
COS 89 LTS cos-cloud cos-89-lts N/A Google Mars 2023 jalon 89
COS 85 LTS cos-cloud cos-85-lts N/A Google Septembre 2022 jalon 85
COS 81 LTS cos-cloud cos-81-lts N/A Google Septembre 20211 jalon 81
COS 77 LTS cos-cloud cos-77-lts N/A Google Avril 20211 jalon 77
COS 73 LTS cos-cloud cos-73-lts N/A Google Juin 2020 jalon 73
COS 69 LTS cos-cloud cos-69-lts N/A Google Décembre 2019 jalon 69
  1. Lorsqu'ils sont associés à GKE, COS 77 LTS et COS 81 LTS présentent des durées de compatibilité légèrement plus longues. Les utilisateurs de GKE doivent consulter le calendrier des lancements GKE pour en savoir plus.

Notes de version de développement

Pour obtenir les notes de version liées au jalon en cours de développement, consultez la page Notes de version de développement.
Pour obtenir les notes de version concernant cos-dev avant le jalon M93, consultez la page Anciennes notes de version.

Il peut y avoir plusieurs jalons LTS actifs à tout moment. Par exemple, la commande suivante affiche les familles d'images LTS actuellement actives :

gcloud compute images list --no-standard-images --project=cos-cloud | grep lts
cos-101-17162-40-16               cos-cloud  cos-101-lts                    READY
cos-89-16108-766-3                cos-cloud  cos-89-lts                     READY
cos-93-16623-295-5                cos-cloud  cos-93-lts                     READY
cos-97-16919-189-3                cos-cloud  cos-97-lts                     READY
cos-arm64-101-17162-40-16         cos-cloud  cos-arm64-101-lts              READY

Cycle de vie d'un jalon LTS

Un nouveau jalon LTS de Container-Optimized OS est introduit tous les six mois environ dans sa propre famille d'images nommée cos-[MILESTONE]-lts (x86) et cos-arm64-[MILESTONE]-lts (Arm). Avant d'être qualifié de LTS, le jalon subit environ six mois de développement de fonctionnalités, et deux mois de tests et de stabilisation approfondis.

Le cycle de vie d'un jalon LTS Container-Optimized OS se présente comme suit :

Étape Durée Description
Développement 6 mois Développement actif au cours duquel le jalon reçoit des mises à niveau de packages majeures, de nouvelles fonctionnalités.
Disponible tous les mois ou selon les besoins sur les familles cos-dev et cos-arm64-dev.
Stabilisation 2 mois Les fonctionnalités sont figées et l'accent est mis sur les tests étendus, la correction de bugs et la stabilisation de la version.
Publication si nécessaire sur les familles cos-beta et cos-arm64-beta.
Production 2 ans Maintien active du jalon en résolvant les problèmes de production et les correctifs de sécurité avec priorité.
Publication si nécessaire sur les familles cos-[MILESTONE]-lts et cos-arm64-[MILESTONE]-lts.
Obsolescence Non disponible Toutes les images du jalon sont marquées comme obsolètes, et cos-[MILESTONE]-lts et cos-arm64-[MILESTONE]-lts sont supprimés. Les utilisateurs pourront toujours se référer aux images obsolètes, mais ne bénéficieront d'aucune correction de bugs ni mise à jour de sécurité.

Une fois promu dans la famille LTS, le jalon LTS présente les avantages suivants :

  • Compatibilité d'une durée de deux ans
  • Correctifs de sécurité pendant toute la durée de l'assistance
  • Corrections des problèmes de production
  • Page dédiée aux notes de version répertoriant toutes les modifications apportées à l'image

Pour tous vos déploiements de production, nous vous recommandons d'utiliser une image de l'une des familles LTS.

Lorsque la période d'assistance LTS est terminée pour un jalon LTS, la famille d'images correspondante ne reçoit plus de correctifs de sécurité ni de corrections de bugs. En outre, les familles d'images cos-[MILESTONE]-lts et cos-arm64-[MILESTONE]-lts correspondantes seront marquées comme obsolètes.

Pour en savoir plus sur les engagements d'assistance pour ces familles, consultez la page Règles d'assistance.

Versions de LTS Refresh

Les versions à la demande sont publiées sur des jalons LTS en réponse à des bugs de priorité élevée et à des correctifs de sécurité. Tous les trois mois, une version est publiée. Elle inclut des bugs de priorité moyenne et faible, ainsi que des correctifs de sécurité. Nous appelons ces versions des versions "LTS Refresh". Ces versions sont publiées moins fréquemment pour aider les utilisateurs à gérer les risques liés aux mises à jour.

La page des notes de version du jalon indique quelles versions sont des versions d'actualisation LTS. Les utilisateurs doivent faire preuve de vigilance lors du déploiement de ces versions, car les corrections de bugs et de sécurité de priorité moyenne ou faible peuvent entraîner des régressions.

Choisir la bonne version de Container-Optimized OS

Sur Compute Engine, les familles d'images de Container-Optimized OS peuvent vous guider dans la sélection de l'image qui vous convient. Nous vous recommandons vivement de configurer des tests à plusieurs niveaux en même temps que votre environnement de production afin de profiter des avantages offerts par l'API Image Family.

Famille d'images x86 Famille d'images Arm Description Utilisation suggérée
cos-[MILESTONE]-lts cos-arm64-[MILESTONE]-lts Cette famille d'images suit les releases pour un jalon adapté à une mise en production spécifique. Les images de cette famille ne reçoivent que des correctifs de sécurité et de stabilité. Convient pour exécuter toutes les charges de travail de production. Commencez par le jalon le plus élevé afin de profiter d'une durée d'assistance maximale.
cos-stable cos-arm64-stable Cette famille suit notre dernier jalon adapté à une mise en production. Les images de cette famille reçoivent tous les correctifs de sécurité et de stabilité. Tous les six mois, le dernier jalon LTS contenant de nouvelles fonctionnalités est également publié sur cette famille. Créez des instances ponctuelles que vous prévoyez de configurer et de gérer manuellement.
cos-beta cos-arm64-beta Cette famille suit notre prochaine release majeure en phase de stabilisation. À utiliser pour effectuer des tests continus afin de valider les nouvelles fonctionnalités et les mises à niveau du système d'exploitation.
cos-dev cos-arm64-dev Cette famille suit notre dernière release en développement. Les images de cette famille reçoivent des modifications importantes et des fonctionnalités potentiellement instables. À utiliser à des fins d'expérimentation et de tests ponctuels.

Une configuration de tests à plusieurs niveaux comme celle-ci devrait permettre de minimiser les problèmes lors du déploiement des versions majeures les plus récentes des images Container-Optimized OS dans votre environnement de production.