通过 ManagedOSImage 升级 Rancher Elemental 节点

ManagedOSImage 资源用于定义需要应用到一组目标集群中各节点的操作系统镜像或镜像版本。

可以使用其来对 Elemental 节点进行 OS 升级,以及升级过程中新配置的下发。


OS 升级

ManagedOSImage 不是直接对 MachineInventory 升级,而是针对已创建的 Elemental RKE2 集群。系统升级由下游集群中的 system-upgrade-controller 执行。

确认当前版本:

在 local 集群创建 ManagedOSImage

1
2
3
4
5
6
7
8
9
10
11
12
13
14
apiVersion: elemental.cattle.io/v1beta1
kind: ManagedOSImage
metadata:
name: test-upgrade-6216
namespace: fleet-default
spec:
osImage: registry.suse.com/suse/sl-micro/6.0/baremetal-os-container:2.1.3-6.216

concurrency: 1
cordon: false
drain: null

clusterTargets:
- clusterName: "test"

创建后,会生成 apply-os-upgrader-xxx Pod,对节点进行升级:

等待节点重启后,检查当前版本:


新配置下发

在升级过程中,也可以通过 spec.cloudConfig 下发新配置,例如调整内核参数:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
apiVersion: elemental.cattle.io/v1beta1
kind: ManagedOSImage
metadata:
name: test-upgrade-6216
namespace: fleet-default
spec:
osImage: registry.suse.com/suse/sl-micro/6.0/baremetal-os-container:2.1.3-6.216

cloudConfig:
name: sl-micro-6.0-post-upgrade
stages:
fs:
- name: Configure OS compatibility settings
files:
- path: /etc/sysctl.d/90-kubernetes.conf
owner: 0
group: 0
permissions: 420
content: |
fs.inotify.max_user_watches = 524288

concurrency: 1
cordon: false
drain: null

clusterTargets:
- clusterName: "test"
Author

Warner Chen

Posted on

2026-08-03

Updated on

2026-08-03

Licensed under