Summary
Third occurrence of the node-wide control-plane freeze on Olares 1.12.6 (same host, same failure signature as reported in #3971). This time the trigger was not an LLM install/update but a full-tree metadata scan of the JuiceFS mount, which starved the entire node (etcd, rsyslog, sshd, kubelet) via memory exhaustion + storage stall.
Timeline (journal evidence)
| Time |
Event |
| ~20:15–20:30 |
Full-tree walk over /olares/rootfs (juicefs info-style output): 696,154 files / 95,430 dirs / 718 GiB traversed via FUSE + Redis metadata |
| 20:31:07 |
etcd range requests begin hanging |
| ~20:31–20:35 |
System-wide I/O stall: JuiceFS chunk read from local MinIO took 4m38s (slow request ... timeout after 1m0s, cost: 4m38.4s); etcd ranges 4m39s; rsyslog file actions suspended (log writes failing) |
| 20:35:46–48 |
OOM killer fires (container killed, exit 137); sshd MaxStartups throttling; k3s remotedialer i/o timeout |
| 20:36:09 |
Last journal entry — total freeze. Recovery only via physical reboot |
Analysis
Hardening recommendations
- Bound metadata-heavy operations: run tree scans / size accounting under cgroup limits (e.g.
MemoryMax) so they kill themselves instead of the node; avoid full-tree walks on live mounts during workload activity.
- Disable
writeback_cache (synchronous uploads) to remove the un-flushed queue that amplifies stall windows.
- Add a storage-path watchdog / graceful degradation: a stalled FUSE mount should degrade affected workloads, not freeze etcd/sshd/kubelet.
- Consider a memory ceiling for the
juicefs mount client process.
Classification
Systemic weakness (missing isolation + missing degradation), not a bug in a single component.
Summary
Third occurrence of the node-wide control-plane freeze on Olares 1.12.6 (same host, same failure signature as reported in #3971). This time the trigger was not an LLM install/update but a full-tree metadata scan of the JuiceFS mount, which starved the entire node (etcd, rsyslog, sshd, kubelet) via memory exhaustion + storage stall.
Timeline (journal evidence)
/olares/rootfs(juicefs info-style output): 696,154 files / 95,430 dirs / 718 GiB traversed via FUSE + Redis metadataslow request ... timeout after 1m0s, cost: 4m38.4s); etcd ranges 4m39s; rsyslog file actions suspended (log writes failing)Analysis
Hardening recommendations
MemoryMax) so they kill themselves instead of the node; avoid full-tree walks on live mounts during workload activity.writeback_cache(synchronous uploads) to remove the un-flushed queue that amplifies stall windows.juicefs mountclient process.Classification
Systemic weakness (missing isolation + missing degradation), not a bug in a single component.