Harbor 对接 NeuVector Registry Adapter

Harbor 本身支持对存放的制品进行安全扫描,但需要额外部署扫描器。NeuVector 提供了 Registry Adapter 功能,可与 Harbor 对接以实现扫描能力。

Read more

Rancher 误删除下游 RKE2 集群节点恢复方法

如果通过 Rancher UI 误删除了下游 RKE2 集群节点,最简单的恢复方式是重新注册节点;若涉及节点数量较多且需要快速恢复,可通过恢复 local 集群和下游 RKE2 集群的 ETCD 快照来完成恢复。

需要注意的是,仅恢复下游 RKE2 集群的 ETCD 快照是不够的。对于 Custom 类型的 RKE2 集群,每个节点在 local 集群中都对应有 Machine 等资源,因此需要一并考虑恢复。

此方法需要确保 local 集群和下游 RKE2 集群都有删除操作前的 ETCD 快照备份。

Read more

Longhorn 配置 Storage Network

默认情况下,Longhorn 使用 Kubernetes 集群的默认 CNI 网络,这个网络会被整个集群中的其他工作负载共享,并且通常只涉及单个网络接口。

如果需要隔离 Longhorn 的集群内部数据流量(出于安全或性能考虑),Longhorn 支持通过 Storage Network 设置来实现这一点。

Read more

Docker 部署 Rancher v2.5 版本

Rancher v2.5 版本已经 EOL,特殊情况需要安装部署进行测试,可以通过 Docker 方式启动。

Read more

Rancher 对接 KeyCloak OIDC

Rancher 支持对接 KeyCloak 进行用户身份认证,此处测试基于 OIDC 协议。

环境信息:

  1. Rancher: v2.9.5-ent
  2. KeyCloak: 26.4.5
Read more

Rancher Monitoring 配置自定义仪表盘

Rancher Monitoring 的 Dashboard 是通过监听 Namespace 的 ConfigMap/Secret 来进行加载,默认情况下监控 cattle-dashboards 这个 Namespace。

Read more

RKE 集群 Pod 一直处于 Terminating 状态

RKE 删除 Pod 的时候,Pod 的状态一直处于 Terminating,同时 kubelet 存在如下报错:

1
2025-10-23T14:34:08.462684510Z E1023 14:34:08.462648    3018 nestedpendingoperations.go:301] Operation for "{volumeName:kubernetes.io/configmap/4dc46d4c-aa98-40b2-b941-9393978e4648-aaa-bbb-ccc podName:4dc46d4c-aa98-40b2-b941-9393978e4648 nodeName:}" failed. No retries permitted until 2025-10-23 14:36:10.462606964 +0000 UTC m=+68505754.237199481 (durationBeforeRetry 2m2s). Error: "error cleaning subPath mounts for volume \"aaa-bbb-ccc\" (UniqueName: \"kubernetes.io/configmap/4dc46d4c-aa98-40b2-b941-9393978e4648-aaa-bbb-ccc\") pod \"4dc46d4c-aa98-40b2-b941-9393978e4648\" (UID: \"4dc46d4c-aa98-40b2-b941-9393978e4648\") : error processing /var/lib/kubelet/pods/4dc46d4c-aa98-40b2-b941-9393978e4648/volume-subpaths/aaa-bbb-ccc/ddd-eee: error cleaning subpath mount /var/lib/kubelet/pods/4dc46d4c-aa98-40b2-b941-9393978e4648/volume-subpaths/aaa-bbb-ccc/ddd-eee/3: remove /var/lib/kubelet/pods/4dc46d4c-aa98-40b2-b941-9393978e4648/volume-subpaths/aaa-bbb-ccc/ddd-eee/3: device or resource busy"

该问题不影响新 Pod 的创建(如 Deployment 等资源的更新等等),但集群会残留较多 Terminating 状态的 Pod。

Read more

RKE 创建 Pod 报错 no space left on device

RKE 创建 Pod 的时候,事件显示磁盘空间不足:

1
2025-10-23T14:33:28.367344576Z E1023 14:33:28.367304    3018 pod_workers.go:191] Error syncing pod 39982f3f-4435-47f0-bd9a-401eac35d8e5 ("logistics-api-678f476dc5-rw89k_prod-feiyuntms(39982f3f-4435-47f0-bd9a-401eac35d8e5)"), skipping: failed to "CreatePodSandbox" for "logistics-api-678f476dc5-rw89k_prod-feiyuntms(39982f3f-4435-47f0-bd9a-401eac35d8e5)" with CreatePodSandboxError: "CreatePodSandbox for pod \"logistics-api-678f476dc5-rw89k_prod-feiyuntms(39982f3f-4435-47f0-bd9a-401eac35d8e5)\" failed: rpc error: code = Unknown desc = failed to create a sandbox for pod \"logistics-api-678f476dc5-rw89k\": Error response from daemon: error creating overlay mount to /u/var/lib/docker/overlay2/62fae66c0cd56dd2fdd458c0d454ee14f1622da5231fcf361f21fa76b167e9bb-init/merged: no space left on device"

Docker 报错:

1
2
Oct 23 14:33:28 oser504254 dockerd[2462]: time="2025-10-23T14:33:28.363765012Z" level=error msg="error unmounting /u/var/lib/docker/overlay2/62fae66c0cd56dd2fdd458c0d454ee14f1622da5231fcf361f21fa76b167e9bb-init/merged: invalid argument" storage-driver=overlay2
Oct 23 14:33:28 oser504254 dockerd[2462]: time="2025-10-23T14:33:28.366808721Z" level=error msg="Handler for POST /v1.40/containers/create returned error: error creating overlay mount to /u/var/lib/docker/overlay2/62fae66c0cd56dd2fdd458c0d454ee14f1622da5231fcf361f21fa76b167e9bb-init/merged: no space left on device"

但在宿主机检查容器相关的数据目录,发现磁盘可用空间都是充足的。

Read more