This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.16.7. 使用容器镜像预缓存功能
集群可能具有有限的带宽来访问容器镜像 registry,这可能会在更新完成前造成超时。
TALM 不会设置更新的时间。您可以在通过手动应用程序或外部自动化进行更新时应用 ClusterGroupUpgrade CR。
当 preCaching 字段在 ClusterGroupUpgrade CR 中被设置为 true 时,容器镜像预缓存会启动。在成功预缓存后,您可以启动补救策略。当 enable 字段设置为 true 时,补救操作会启动。
预缓存过程可以处于以下状态:
PrecacheNotStarted这是所有集群在第一次协调时会自动分配给
ClusterGroupUpgradeCR 的初始状态。在这个状态中,TALM 会删除来自之前更新中所有 spoke 集群的预缓存命名空间和 hub 查看资源。然后,TALM 为 spoke 创建一个新的
ManagedClusterView资源,以便在PrecachePreparing状态验证删除。PrecachePreparing- 清理之前不完整更新中的所有剩余的资源,资源正在进行中。
PrecacheStarting- 预缓存任务前提条件并创建了作业。
PrecacheActive- 该作业的状态为"Active"状态。
PrecacheSucceeded- pre-cache(预缓存)作业已成功。
PrecacheTimeout- 工件预预缓存已完成。
PrecacheUnrecoverableError- 作业以非零退出代码结束。
16.7.1. 使用预缓存创建 ClusterGroupUpgrade CR 复制链接链接已复制到粘贴板!
预缓存功能允许在更新开始前在 spoke 集群中显示所需的容器镜像。
先决条件
- 安装 Topology Aware Lifecycle Manager(TALM)。
- 置备一个或多个受管集群。
-
以具有
cluster-admin特权的用户身份登录。
流程
在
clustergroupupgrades-group-du.yaml文件中将preCaching字段设置为true来保存ClusterGroupUpgradeCR 的内容:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
preCaching字段设为true,它允许 TALM 在开始更新前拉取容器镜像。
当您要启动更新时,通过运行以下命令应用
ClusterGroupUpgradeCR:oc apply -f clustergroupupgrades-group-du.yaml
$ oc apply -f clustergroupupgrades-group-du.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
运行以下命令,检查 hub 集群中是否存在
ClusterGroupUpgradeCR:oc get cgu -A
$ oc get cgu -ACopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
NAMESPACE NAME AGE ztp-group-du-sno du-upgrade-4918 10s
NAMESPACE NAME AGE ztp-group-du-sno du-upgrade-4918 10s1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- CR 被创建。
运行以下命令,检查预缓存任务的状态:
oc get cgu -n ztp-group-du-sno du-upgrade-4918 -o jsonpath='{.status}'$ oc get cgu -n ztp-group-du-sno du-upgrade-4918 -o jsonpath='{.status}'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在 spoke 集群中运行以下命令来检查预缓存作业的状态:
oc get jobs,pods -n openshift-talm-pre-cache
$ oc get jobs,pods -n openshift-talm-pre-cacheCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
NAME COMPLETIONS DURATION AGE job.batch/pre-cache 0/1 3m10s 3m10s NAME READY STATUS RESTARTS AGE pod/pre-cache--1-9bmlr 1/1 Running 0 3m10s
NAME COMPLETIONS DURATION AGE job.batch/pre-cache 0/1 3m10s 3m10s NAME READY STATUS RESTARTS AGE pod/pre-cache--1-9bmlr 1/1 Running 0 3m10sCopy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令,检查
ClusterGroupUpgradeCR 的状态:oc get cgu -n ztp-group-du-sno du-upgrade-4918 -o jsonpath='{.status}'$ oc get cgu -n ztp-group-du-sno du-upgrade-4918 -o jsonpath='{.status}'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 预缓存任务已完成。