升级 Anthos clusters on Bare Metal

安装新版 bmctl 时,您可以升级使用较早版本创建的现有集群。将集群升级到最新的 Anthos Clusters on Bare Metal 版本可为集群新增功能和修复,还可确保您的集群保持受支持状态。您可以使用 bmctl upgrade cluster 命令升级管理员集群、独立集群或用户集群。

启用 SELinux

如果想要启用 SELinux 来保护容器,则必须确保先在 Enforced 模式中启用 SELinux,然后再升级集群。如果您是从 Anthos clusters on Bare Metal 1.7.1 或更高版本升级,SELinux 将默认启用。如果在集群中停用了 SELinux 或者您不确定是否已启用 SELinux,请参阅使用 SELinux 保护容器了解有关如何启用 SELinux 的说明。

Anthos clusters on Bare Metal 仅支持 RHEL 和 CentOS 系统中的 SELinux。

在 Anthos clusters on Bare Metal 中升级管理员集群、独立集群、混合集群或用户集群

下载并安装新版 bmctl 时,您可以升级使用较早版本创建的管理员集群、混合集群、独立集群和用户集群。对于给定的 bmctl 版本,集群只能升级到同一版本。

集群升级之前会运行预检检查以验证集群状态和节点运行状况。

以下示例展示了从版本 1.7.2 到 Anthos clusters on Bare Metal 1.8.9 的升级过程。

您可以按照相同的方式将任何给定版本升级为下一个可用版本(例如,从 1.8.0 升级到 1.8.1)。也支持跳过升级,例如从 1.7.1 升级到 1.8.9。

Anthos clusters on Bare Metal 支持每个节点最多配置 250 个 pod。此配置只能在集群创建期间完成,不能针对现有集群更新。

升级管理员集群、独立集群、混合集群或用户集群

下载并安装新版 bmctl 时,您可以升级使用较早版本创建的管理员集群、混合集群、独立集群和用户集群。对于给定的 bmctl 版本,集群只能升级到同一版本。

首先,您需要下载最新的 bmctl,然后修改相应的集群配置文件,最后发出 bmctl upgrade cluster 命令以完成升级。

  1. Cloud Storage 存储桶下载最新的 bmctl,然后使用 chmod 向所有用户授予 bmctl 执行权限:

    gsutil cp gs://anthos-baremetal-release/bmctl/1.8.9/linux-amd64/bmctl bmctl
    chmod a+x bmctl
    
  2. 修改集群配置文件,将 Anthos clusters on Bare Metal 集群版本从 1.7.2 更改为 1.8.9。下面显示了来自管理员集群配置的示例:

    ---
    apiVersion: baremetal.cluster.gke.io/v1
    kind: Cluster
    metadata:
      name: cluster1
      namespace: cluster-cluster1
    spec:
      # Cluster type. This can be:
      #   1) admin:  to create an admin cluster. This can later be used to create user clusters.
      #   2) user:   to create a user cluster. Requires an existing admin cluster.
      #   3) hybrid: to create a hybrid cluster that runs admin cluster components and user workloads.
      #   4) standalone: to create a cluster that manages itself, runs user workloads, but does not manage other clusters.
      type: admin
      # Anthos cluster version.
      # Change the following line from 1.7.2 to 1.8.9, shown below
      anthosBareMetalVersion: 1.8.9
    
  3. 将集群升级到 1.8.9 时,您必须通过 Connect 将集群注册到项目舰队(如果尚未注册)。

    1. 按照“启用 Google 服务和服务帐号”页面上的配置服务帐号以与 Connect 搭配使用中的说明,手动创建服务帐号并检索 JSON 密钥文件。
    2. 在集群配置文件的关联 gkeConnectAgentServiceAccountKeyPathgkeConnectRegisterServiceAccountKeyPath 字段中引用下载的 JSON 密钥。
  4. 使用 bmctl upgrade cluster 命令完成升级:

    bmctl upgrade cluster -c CLUSTER_NAME --kubeconfig ADMIN_KUBECONFIG
    

    请替换以下内容:

    • CLUSTER_NAME:要升级的集群的名称。
    • ADMIN_KUBECONFIG:管理员集群 kubeconfig 文件的路径。