31.3. 升级 MetalLB


默认情况下,将命名空间订阅到 metallb-systemSubscription 自定义资源(CR)会自动将 installPlanApproval 参数设置为 Automatic。这意味着,当红帽提供的 Operator 目录包含 MetalLB Operator 的较新版本时,MetalLB Operator 会自动升级。

如果需要手动控制 MetalLB Operator 升级,请将 installPlanApproval 参数设置为 Manual

31.3.1. 手动升级 MetalLB Operator

要手动控制升级 MetalLB Operator,您必须编辑将命名空间订阅到 metallb-systemSubscription 自定义资源(CR)。Subscription CR 作为 Operator 安装的一部分创建,且 CR 默认将 installPlanApproval 参数设置为 Automatic

先决条件

  • 将集群更新至最新的 z-stream 版本。
  • 使用 OperatorHub 安装 MetalLB Operator。
  • 使用具有 cluster-admin 角色的用户访问集群。

流程

  1. 输入以下命令在 metallb-system 命名空间中获取 metallb-operator 订阅的 YAML 定义:

    $ oc -n metallb-system get subscription metallb-operator -o yaml
  2. 通过将 installPlanApproval 参数设置为 Manual 来编辑 Subscription CR:

    apiVersion: operators.coreos.com/v1alpha1
    kind: Subscription
    metadata:
      name: metallb-operator
      namespace: metallb-system
    # ...
    spec:
       channel: stable
       installPlanApproval: Manual
       name: metallb-operator
       source: redhat-operators
       sourceNamespace: openshift-marketplace
    # ...
  3. 输入以下命令查找 MetalLB Operator 的最新 OpenShift Container Platform 4.12 版本:

    $ oc -n metallb-system get csv

    输出示例

    NAME                       DISPLAY            VERSION    REPLACES    PHASE
    metallb-operator.v4.12.0   MetalLB Operator   4.12.0                 Succeeded

  4. 输入以下命令检查命名空间中存在的安装计划。

    $ oc -n metallb-system get installplan

    将 install-tsz2g 显示为手动安装计划的输出示例

    NAME            CSV                                     APPROVAL    APPROVED
    install-shpmd   metallb-operator.v4.12.0-202502261233   Automatic   true
    install-tsz2g   metallb-operator.v4.12.0-202503102139   Manual      false

  5. 输入以下命令来编辑命名空间中存在的安装计划。确保将 &lt ;name_of_installplan > 替换为安装计划的名称,如 install-tsz2g

    $ oc edit installplan <name_of_installplan> -n metallb-system
    1. 在编辑器中打开安装计划后,将 spec.approval 参数设置为 Manual,并将 spec.approved 参数设置为 true

      注意

      编辑安装计划后,升级操作会启动。如果在升级操作过程中输入 oc -n metallb-system get csv 命令,则输出可能会显示 ReplacingPending 状态。

验证

  1. 输入以下命令验证升级是否成功:

    $ oc -n metallb-system get csv

    输出示例

    NAME                                        DISPLAY             VERSION              REPLACE                                 PHASE
    metallb-operator.v<latest>.0-202503102139   MetalLB Operator    {product-version}.0-202503102139  metallb-operator.v{product-version}.0-202502261233   Succeeded

31.3.2. 其他资源

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.