|
本文档采用自动化机器翻译技术翻译。 尽管我们力求提供准确的译文,但不对翻译内容的完整性、准确性或可靠性作出任何保证。 若出现任何内容不一致情况,请以原始 英文 版本为准,且原始英文版本为权威文本。 |
升级生命周期
组件
SUSE® Rancher Prime: OS Manager Operator支持在集群级别配置操作系统版本的几种方式。
每当定义一个新的 ManagedOSIMage 时,相关的 Fleet Bundle 也会由 SUSE® Rancher Prime: OS Manager Operator 生成。
在此上下文中,Fleet用于在 目标的每个集群上应用 upgrade.cattle.io/v1 Plan ManagedOSImage。
然后由在下游 Plan 集群上运行的 System Upgrade Controller 执行 SUSE® Rancher Prime: OS Manager。
版本控制和组件生命周期
在 Rancher 集群上,您可以运行:
kubectl get settings fleet-version system-upgrade-controller-chart-version
图表版本由 Rancher 确定。
根据 Rancher 的安装方式,可以设置以下环境变量,例如在安装 Rancher Helm 图表 时:
CATTLE_SYSTEM_UPGRADE_CONTROLLER_CHART_VERSION
CATTLE_FLEET_VERSION
通常不建议手动更新版本。
还要注意,新的 CATTLE_SYSTEM_UPGRADE_CONTROLLER_CHART_VERSION 将在所有配置的下游集群上触发 system-upgrade-controller 图表更新。
验证成功的升级
验证升级作业的正确执行是确保 SUSE® Rancher Prime: OS Manager 升级过程完成的基本部分。
要排查整个升级过程中的每一步,请参考相关文档。
本节仅描述验证升级计划在一个目标集群上正确应用所需的最后一步。
-
版本高于或等于*v0.13.4*的`system-upgrade-controller`:
kubectl -n cattle-system describe plan os-upgrader-my-upgrade一旦计划应用于所有节点,它将具有`Complete`状态条件。
-
旧版本:
每个计划都有一个`latestHash`状态值,应与每个节点上的计划标签匹配。
可以使用一个简单的脚本列出所有尚未应用该计划的节点:#!/bin/bash # This script prints a list of all nodes where an upgrade plan was not applied. # To further determine the cause of failures, you can analyze the Plan status and the related jobs. # For ex: kubectl -n cattle-system get plans,jobs # Edit this variable according to your ManagedOSImage name. MANAGED_OS_IMAGE_NAME=my-upgrade PLAN_NAME=os-upgrader-$MANAGED_OS_IMAGE_NAME LATEST_HASH=$(kubectl -n cattle-system get plan $PLAN_NAME -o=jsonpath='{.status.latestHash}') printf "Plan '$PLAN_NAME' latest hash is: '$LATEST_HASH'\n" PLAN_LABEL=plan.upgrade.cattle.io/$PLAN_NAME printf "Listing all nodes with mismatching or missing label '$PLAN_LABEL':\n" kubectl get nodes -l $PLAN_LABEL!=$LATEST_HASH