版本控制方案

里程碑和版本号

Container-Optimized OS 映像的主要版本由里程碑标识。Container-Optimized OS 里程碑是单调递增的整数。每个新的里程碑都代表一个新的开发周期(我们代码中的分支)的开始,并且可能会引入新功能和其他重大更改。

在 Container-Optimized OS 里程碑的整个生命周期内,我们可能会发布包含问题修复、安全修复和其他更改的多项更新。可以使用版本号识别里程碑的增量版本。

您可以通过查看 /etc/os-release 文件来识别您正在使用的 Container-Optimized OS 的里程碑和版本号。在该文件中,VERSION_ID 的值(例如 VERSION_ID=81)表示里程碑,BUILD_ID 字段的值(例如 BUILD_ID=12871.1160.0)表示版本号。Container-Optimized OS 映像名称中也包含里程碑和版本号。例如,映像 cos-81-12871-1160-0 的里程碑为 81,版本号为 12871-1160-0

长期支持 (LTS) 里程碑

用于生产用途且支持期较长的里程碑标记为 LTS(长期支持)。在 Compute Engine 上,我们使用映像系列功能来标记和识别我们的 LTS 版本。

下表提供了 Compute Engine 上可用的 Container-Optimized OS 版本的摘要:

活跃里程碑

操作系统版本 映像项目 映像系列 构建者 弃用日期 版本说明
COS 85 LTS cos-cloud cos-85-lts Google 2021 年 12 月 里程碑 85
COS 81 LTS cos-cloud cos-81-lts Google 2021 年 6 月 里程碑 81
COS 77 LTS cos-cloud cos-77-lts Google 2020 年 12 月 里程碑 77

过往里程碑

操作系统版本 映像项目 映像系列 构建者 弃用日期 版本说明
COS 73 LTS cos-cloud cos-73-lts Google 2020 年 6 月 里程碑 73
COS 69 LTS cos-cloud cos-69-lts Google 2019 年 12 月 里程碑 69

可能同时存在多个活跃 LTS 里程碑。例如,以下命令显示了当前的活跃 LTS 映像系列:

$ gcloud compute images list --no-standard-images --project=cos-cloud | grep lts
# NAME                      PROJECT    FAMILY      DEPRECATED  STATUS
cos-77-12371-1079-0         cos-cloud  cos-77-lts              READY
cos-81-12871-1200-0         cos-cloud  cos-81-lts              READY
cos-85-13310-1041-9         cos-cloud  cos-85-lts              READY

LTS 里程碑的生命周期

大约每 6 个月会在其自己的映像系列 cos-[MILESTONE]-lts 中引入一个新的 Container-Optimized OS LTS 里程碑。在标记为 LTS 之前,里程碑会经历大约 4 个月的功能开发和 2 个月的广泛测试和稳定化。

Container-Optimized OS LTS 里程碑的生命周期如下所示:

阶段 时长 说明
开发 4 个月 开发阶段,里程碑在此期间接受重大软件包升级和新功能。
cos-dev 系列中每月发布一次或根据需要发布。
稳定 2 个月 功能被冻结,主要进行扩展测试、问题修复,并对版本进行稳定。
视需要在 cos-beta 系列中发布。
生产 15 个月 里程碑的维护阶段,优先解决生产问题以及安全修复。
视需要在 cos-[MILESTONE]-lts 系列中发布。
弃用 该里程碑的所有映像都标记为已弃用,并移除 cos-[MILESTONE]-lts。用户可能仍会引用已弃用的映像,但将不会收到任何错误修复或安全更新。

提升到 LTS 系列后,LTS 里程碑具有以下优势:

  • 支持期为 15 个月
  • 在整个支持期间提供安全修复
  • 修复所有生产问题
  • 专门的版本说明页面,其中列出对映像所做的每项更改。

我们建议您为所有生产部署使用 LTS 系列中的映像。

在 LTS 里程碑的 LTS 支持期结束后,相应的映像系列将不再接收任何安全修复或问题修复。此外,相应的 cos-[MILESTONE]-lts 映像系列将被标记为已弃用。

请参阅支持政策,详细了解这些系列的支持承诺。

选择正确的 Container-Optimized OS 版本

在 Compute Engine 上,Container-Optimized OS 的映像系列可引导您选择符合预期用途的正确映像。我们强烈建议您与生产环境一起设置分层测试,以利用映像系列 API 提供的便利。

映像系列 说明 建议用途
cos-[MILESTONE]-lts 此系列遵循特定生产就绪里程碑的版本。此系列中的映像仅接收安全修复和稳定性修复。 适合运行所有生产工作负载。从最高里程碑开始,以获得最长的支持期。
cos-stable 此系列遵循我们的最新生产就绪里程碑。此系列中的映像接收所有安全修复和稳定性修复。包含新功能的最新 LTS 里程碑也将在此系列中每六个月发布一次。 创建您计划手动配置和维护的一次性实例。
cos-beta 此系列遵循稳定阶段中的下一个主要版本。 用于持续测试以验证新功能和操作系统升级。
cos-dev 此系列遵循我们的最新开发中版本。此系列中的映像接收重大更改和可能不稳定的功能。 用于实验和一次性测试。

类似这样的分层测试设置有助于在向生产环境发布新的 Container-Optimized OS 映像主要版本时最大限度地减少问题。