升级概述

本指南介绍了升级流程,并提供了缓解或修补 Google Distributed Cloud (GDC) 空气隔离环境中的安全漏洞所需的步骤。此内容假设新的 Distributed Cloud 软件包包含相关的安全修复,并且基础设施运维人员 (IO) 可以访问该软件包。Distributed Cloud 涉及手动更新,并且特定安全补丁可能适用于堆栈中的一个或多个组件。

“说明”页面提供了升级各种组件的步骤。有时,根据具体补丁,可能仅需执行部分升级步骤。如果存在 IO 无法立即修复的严重或危急漏洞,Google 可以采取措施(例如屏蔽特定端口、停用功能或关闭任何组件)来暂时缓解漏洞并控制影响范围。此类事件很少发生,在这种情况下,Google 会根据缓解计划提供确切的说明供您遵循。

前提条件

在开始之前,请确保满足以下条件:

  1. 访问系统和执行更新所需的权限:
    • 您的 Google 联系人 (POC) 拥有您和每位运营商的电子邮件地址,以便授予您对 Cloud Storage 存储桶的访问权限。
    • 您的 Google POC 已验证您有权访问下载代码库,以便您能够下载 Distributed Cloud 分发版本
    • 您的 Google POC 在确认您有权访问下载资源库时提供的分发版本和摘要信息。
  2. 用于验证下载和安装的软件包完整性的必要工具:
    • 下载并安装 gdcloud CLI
    • 升级到最新版本
    • https://cloud.google.com/sdk/docs/install 下载并安装 Google Cloud CLI。
    • 验证对 OpenSSL 的访问权限 - 默认位置:/usr/local/ssl
    • 使用 gdcloud auth login 进行身份验证:
    • 运行 gdcloud components update 升级到最新版 CLI。
  3. 引导加载程序服务器安装页面中的将分布式云下载内容转移到隔离环境部分所述,访问安全实体设备将软件包复制到隔离部署
  4. 处于工作状态的分布式云部署。如果一个或多个组件处于损坏状态,请勿继续升级,因为这可能会导致进一步的复杂情况。
  5. 验证部署是否没有正在进行的升级,然后再触发升级
  6. 在开始升级之前,验证您是否已安装之前的补丁。例如,如需升级到 1.x.y,您必须已安装以下内容(如果是次要版本升级或补丁版本升级):

    • 1.(x-1).y' 的次要版本升级,其中 y' 的值为任意值;(x-1) 升级到 x。
    • 或者 1.x.y'' 的补丁版本升级,其中 y'' < y。
    1. 获取当前版本。在此示例中,1.(x-1)y' 为 1.8.0-gdch.843

      kubectl --kubeconfig ROOT_ADMIN_KUBECONFIG get org -n  \
          gpc-system root -ojsonpath='{.spec.version}{"\n"}'
      
    2. ROOT_ADMIN_KUBECONFIG 替换为通过对根管理员集群运行 gdcloud auth login 而获得的 kubeconfig 文件的路径。如需了解相关说明,请参阅获取 kubeconfig 文件

      输出示例:

      1.8.0-gdch.843
      
    3. 验证结果是否与您要升级到的版本一致。

后续步骤

请务必按照说明中指定的顺序执行升级。有些升级需要进行升级前检查和处理,有些则需要进行升级后检查。每个升级部分都会提供适用信息,例如哪些组件会升级、升级是否会中断服务,以及预计停机时间。下面简要介绍了流程:

  1. 下载更新软件包。
  2. 将制品推送到容器注册表。
  3. 执行自动升级。
  4. 请按提供的顺序执行手动升级,即使特定升级不适用于所有组件也是如此。在前一次升级完成后,依次开始每次升级。

前往说明页面开始升级。