微服务集群从 Vault Agent 切换到 ESO,核心在于平滑过渡与权限收敛。通过 Raft 热升级结合内置 PKI 开启 TLS、以 CEL 策略防范配置越权,配合双轨比对与分批灰度,安全完成数十个服务的 Sidecar 替换。
Posts for: #devops
K8s 网络策略与出站控制:云原生 CNI、Calico、出网代理和 Cilium 怎么选
标准 Kubernetes NetworkPolicy 能拦住 Pod 访问私网网段与云主机元数据,但管不了动态 IP 的外部域名和跨云策略统一。对比云厂商原生 CNI、Calico、出网代理与 Cilium 的优缺点后,按场景给出各自的适用边界与落地方式。
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 年的报告把主干开发的收益和门禁、自动回滚这类配套规则绑在一起,迁移因此从立门禁开始,分三个阶段停掉环境分支。
Jenkins 部署从 push 改成 pull:VM 按 digest 自己拉镜像
Jenkins 用 SSH 登录 VM 部署,登录所有目标机的凭据和应用配置都集中在 CI 控制器上。方向反过来之后,控制器被攻破也登录不了生产机,代价在部署结果的反馈、有顺序的部署、每台 VM 上的部署脚本。K8s 上这已是主流,VM 上也有先例。
Kubernetes 怎样用容器重现虚拟机
借 Ivan Velichko 在 iximiuz 上的系统解析,回顾软件部署从虚拟机到容器编排的演进脉络:分析 VM 时代的实例抽象、Docker 单进程容器的断层,以及 Kubernetes 怎样用三层对象重现经典服务模型。
tmux 远程服务器实践:尽量降低 SSH 中断对命令的影响
DGX Spark 和 GPU 集群上跑 vLLM 部署或长任务时,用 tmux 把命令从 SSH 会话里摘出来,再集成进 Makefile;窗格分割做实时监控,nohup 和 systemd 各管一段。
梳理 kubernetes-best-practices 仓库,补上 Gateway API 等新特性
以 diegolnasc/kubernetes-best-practices 仓库为蓝本过一遍 K8s 生产实践,顺手补上 Gateway API、ValidatingAdmissionPolicy、原生 Sidecar 这些仓库还没覆盖的新特性。
Homelab 过热?给 Proxmox Debian 宿主机降温的完整实战
Homelab 的 Proxmox 宿主机(AMD Ryzen 5 5600H)CPU 温度长期 72°C,通过诊断发现 VM 内存超售、Turbo Boost 未关、KSM 高频扫描三个热源,用 Ansible 一键优化后降到 62°C。
给 mirrord 开发者按 namespace 签发 kubeconfig
给 mirrord OSS 做一套按 namespace 授权的开发者接入 demo:kubeconfig 走 Kubernetes CSR API 签发,ClusterRole 集中审查能力,授权和撤销都落在 RoleBinding 这一层。