Vault Agent Injector 是一个 mutating admission webhook,只在 pod 创建时改写定义。改了默认资源要重启 pod,injector 不可用时 pod 照常创建却没有密钥,都出自这一点。
Posts for: #kubernetes
用 Trivy Operator 持续扫描 homelab 集群的镜像
两个 K3s 集群里大多是第三方镜像,镜像不动也会冒出新 CVE。Trivy Operator 每天重扫并接进 Prometheus 告警,日常要按 CVE ID 分诊,能升级就升级,升不了带证据豁免,并用报告数对工作负载数确认扫描没有静默失败。
K8s 应用从 Vault 取密钥:Agent sidecar、init-only、VSO、ESO 和 CSI 怎么选
Vault Agent 的 init 和 sidecar 默认各申请 250m CPU,在一个非生产集群里占了一半以上的 CPU requests,实际几乎不用。按 DevSecOps 的要求比较五种接法后,先只保留 init,再换成和生产共用接口的 ESO。
环境分支换成主干开发:制品晋级、feature flag、预览环境和分阶段迁移
qa、staging、main 各对应一个环境时,修复要在分支间来回 cherry-pick,各环境跑的也不是同一个镜像。DORA 2022 年的报告把主干开发的收益和门禁、自动回滚这类配套规则绑在一起,迁移因此从立门禁开始,分三个阶段停掉环境分支。
EKS 上多个服务共用一个 ALB
AWS Load Balancer Controller 默认一个 Ingress 一个 ALB。共用 ALB 有三种做法:IngressGroup、TargetGroupBinding,以及 v3.0.0 起 GA 的 Gateway API。
Pod 短名称解析和 ndots:5 的查询放大
Pod 里的短名称靠 resolv.conf 的 search 域和 ndots:5 补全,外部域名要先拼上每个后缀各查一遍:kind 里解析一次 api.github.com 发了 8 个查询,带上 EKS 节点的后缀是 10 个。
Spring Boot actuator 用业务端口还是单独的管理端口
actuator 可以与业务共用端口,也可以通过单独管理端口运行。单独端口能隔离外部流量并统一指标路径,但会引入独立的内嵌 Web 服务与线程池;探针若未配置回主端口可能出现健康误报,采集端口也需在 Service 与 ServiceMonitor 中对齐。
xiaogpt 怎么接管小爱音箱:轮询原理与 homelab 部署
xiaogpt 不改音箱固件,靠每秒轮询小米云的对话记录截下带关键词的问题,再交给大模型回答。在新加坡密码登录会被小米风控拒绝,只能用 passToken;它会轮换,登录失败还会删掉 token 文件,所以在 K3s 里放 PVC、单文件挂载。
Kubernetes 怎样用容器重现虚拟机
借 Ivan Velichko 在 iximiuz 上的系统解析,回顾软件部署从虚拟机到容器编排的演进脉络:分析 VM 时代的实例抽象、Docker 单进程容器的断层,以及 Kubernetes 怎样用三层对象重现经典服务模型。
Kubernetes 1.37 升级前要过一遍的东西
Kubernetes 1.37 在 2026-08-26 发布,67 项 enhancement 里真正影响升级的不多:四条 ACTION REQUIRED、一批默认值翻开的 Beta gate、三条带版本期限的弃用。