容器内存告警冲到 99.45% 却没触发 OOM,峰值里约 87% 是页缓存;同一个容器热缓存下重启只剩 23.70%,最后把告警的分子换成 RSS。
Posts for: #homelab
restic 夜备内存告警:排查 fsGroup 触发的整库重读
夜间备份那段时间内存接近 limit,按每次运行重新对齐数据后才发现根因:书库 pod 重建时 kubelet 对 local PV 做 fsGroup 权限处理,restic 因此重读整库。
用 external-dns 接管 homelab 的子域名 DNS
两个 K3s 集群的子域名 DNS 从 Terraform 手改交给 external-dns 之后,加一个子域名只剩一步,真正的难点是把既有记录零停机迁过去,得先预埋 ownership TXT。
把重复 series 拦在入库前:我的 Prometheus 内存瘦身
homelab Prometheus 的 active series 少了一半,起因是 k3s 单进程把同一批 apiserver 和 etcd 指标重复暴露;三层核查确认可以丢就在入库前拦掉,内存峰值跟着降了大半。
Homelab 消息通知:Alertmanager 通过 Gotify 推送告警
在 Homelab K3s 集群中,通过部署 alertmanager_gotify_bridge 将 Prometheus Alertmanager 的告警推送到 Gotify,实现自托管消息通知。记录从 Vault 存储 Token、ESO 同步 Secret、到 Alertmanager 路由配置的完整步骤。
Codex CLI 对接远程 Ollama
Codex CLI 用自定义 Provider 配置对接远程 Ollama,网络走 Tailscale,本地编码助手就能用上 Homelab 上的模型;模型怎么选、本地和远程的能力边界在哪也写了。
Homelab 过热?给 Proxmox Debian 宿主机降温的完整实战
Homelab 的 Proxmox 宿主机(AMD Ryzen 5 5600H)CPU 温度长期 72°C,通过诊断发现 VM 内存超售、Turbo Boost 未关、KSM 高频扫描三个热源,用 Ansible 一键优化后降到 62°C。
重启即 sealed:homelab Vault 自愈链路的三个坑
Proxmox VM 一重启 Vault 就 sealed,ExternalSecret 跟着失败:postStart 解锁 hook 被 JSON grep 误判、ESO 没有及时重验,恢复脚本自己还有假阴性,最后改成按 exit code 三态判定。
Timeslot: A Self-Hosted Calendar Availability Feed for a Static Blog
A small self-hosted tool for exposing calendar availability on a static blog without relying on a third-party scheduling platform.
从 Cilium Gateway 到 CoreDNS:一次跨层级的 K8s 连锁故障排查
一次看起来像 Cilium Gateway Degraded 和 ArgoCD Sync 异常的故障,最后追到了 CoreDNS stub resolver、ZITADEL backend 缺失和 Vault 密钥问题。记录完整排查链路、修复动作和后续固化方案。