32.3. 升级 MetalLB
默认情况下,将命名空间订阅到 metallb-system 的 Subscription 自定义资源 (CR) 会自动将 installPlanApproval 参数设置为 Automatic。这意味着,当红帽提供的 Operator 目录包含 MetalLB Operator 的较新版本时,MetalLB Operator 会自动升级。
如果需要手动控制 MetalLB Operator 升级,请将 installPlanApproval 参数设置为 Manual。
32.3.1. 手动升级 MetalLB Operator 复制链接链接已复制到粘贴板!
要手动控制升级 MetalLB Operator,您必须编辑将命名空间订阅到 metallb-system 的 Subscription 自定义资源(CR)。Subscription CR 作为 Operator 安装的一部分创建,且 CR 默认将 installPlanApproval 参数设置为 Automatic。
先决条件
- 将集群更新至最新的 z-stream 版本。
- 使用 OperatorHub 安装 MetalLB Operator。
-
使用具有
cluster-admin角色的用户访问集群。
流程
输入以下命令在
metallb-system命名空间中获取metallb-operator订阅的 YAML 定义:oc -n metallb-system get subscription metallb-operator -o yaml
$ oc -n metallb-system get subscription metallb-operator -o yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 通过将
installPlanApproval参数设置为Manual来编辑SubscriptionCR:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令查找 MetalLB Operator 的最新 OpenShift Container Platform 4.14 版本:
oc -n metallb-system get csv
$ oc -n metallb-system get csvCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
NAME DISPLAY VERSION REPLACES PHASE metallb-operator.v4.14.0 MetalLB Operator 4.14.0 Succeeded
NAME DISPLAY VERSION REPLACES PHASE metallb-operator.v4.14.0 MetalLB Operator 4.14.0 SucceededCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令检查命名空间中存在的安装计划。
oc -n metallb-system get installplan
$ oc -n metallb-system get installplanCopy to Clipboard Copied! Toggle word wrap Toggle overflow 将 install-tsz2g 显示为手动安装计划的输出示例
NAME CSV APPROVAL APPROVED install-shpmd metallb-operator.v4.14.0-202502261233 Automatic true install-tsz2g metallb-operator.v4.14.0-202503102139 Manual false
NAME CSV APPROVAL APPROVED install-shpmd metallb-operator.v4.14.0-202502261233 Automatic true install-tsz2g metallb-operator.v4.14.0-202503102139 Manual falseCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令来编辑命名空间中存在的安装计划。确保将
<name_of_installplan>替换为安装计划的名称,如install-tsz2g。oc edit installplan <name_of_installplan> -n metallb-system
$ oc edit installplan <name_of_installplan> -n metallb-systemCopy to Clipboard Copied! Toggle word wrap Toggle overflow 在编辑器中打开安装计划后,将
spec.approval参数设置为Manual,并将spec.approved参数设置为true。注意编辑安装计划后,升级操作会启动。如果在升级操作过程中输入
oc -n metallb-system get csv命令,则输出可能会显示Replacing或Pending状态。
验证
输入以下命令验证升级是否成功:
oc -n metallb-system get csv
$ oc -n metallb-system get csvCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
NAME DISPLAY VERSION REPLACE PHASE metallb-operator.v<latest>.0-202503102139 MetalLB Operator {product-version}.0-202503102139 metallb-operator.v{product-version}.0-202502261233 SucceededNAME DISPLAY VERSION REPLACE PHASE metallb-operator.v<latest>.0-202503102139 MetalLB Operator {product-version}.0-202503102139 metallb-operator.v{product-version}.0-202502261233 SucceededCopy to Clipboard Copied! Toggle word wrap Toggle overflow