怎么指定单个集群的 cattle-cluster-agent 镜像

rancher 版本:v2.6.8

问题描述:
更新 rancher 集群 cluster.management.cattle.io 对象的 spec.desiredAgentImage 字段,k3s 上 cattle-cluster-agent 启动失败

重现步骤:

➜ ~ kubectl patch cluster.management.cattle.io c-m-jdgk6b7f --type=‘json’ -p=‘[{“op”: “replace”, “path”: “/spec/desiredAgentImage”, “value”: “rancher/rancher-agent:v2.6.8”}]’
cluster.management.cattle.io/c-m-jdgk6b7f patched
➜ ~

结果:

尝试启动,没有异常信息,直接退出

预期结果:

cattle-cluster-agent 的镜像可以被替换

其他上下文信息:

[/details]

可以通过环境变量去设置,比如:

    --restart=unless-stopped \
    -e CATTLE_AGENT_IMAGE="registry.cn-hangzhou.aliyuncs.com/rancher/rancher-agent:v2.4.2" \
    registry.cn-hangzhou.aliyuncs.com/rancher/rancher:v2.4.2

是指在 rancher 上设置吗?这个我已经验证过了,会在所有接入集群的 cattle-cluster-agent 上生效。
有办法只在单独一个接入集群上生效吗?

对于单个集群生效,我不知道如何操作。

为什么会有这种需求呢?

在 2.6.8 版本,cattle-cluster-agent 内存涨得有点夸张(超过 4G),改了点代码打包了新镜像。
想验证一下。

如果没记错,老版本确实存在cluster agent 内存泄漏的问题,后续版本解决了,你可以升级到最新版本在看看情况