K8s 应用从 Vault 取密钥:Agent sidecar、init-only、VSO、ESO 和 CSI 怎么选
Vault Agent 的 init 和 sidecar 默认各申请 250m CPU,在一个非生产集群里占了一半以上的 CPU requests,实际几乎不用。按 DevSecOps 的要求比较五种接法后,先只保留 init,再换成和生产共用接口的 ESO。
Vault Agent 的 init 和 sidecar 默认各申请 250m CPU,在一个非生产集群里占了一半以上的 CPU requests,实际几乎不用。按 DevSecOps 的要求比较五种接法后,先只保留 init,再换成和生产共用接口的 ESO。
qa、staging、main 各对应一个环境时,修复要在分支间来回 cherry-pick,各环境跑的也不是同一个镜像。DORA 2022 年的报告把主干开发的收益和门禁、自动回滚这类配套规则绑在一起,迁移因此从立门禁开始,分三个阶段停掉环境分支。
8 个 Terraform root 的 state 原先只存在一台笔记本上,换台机器就没法接着跑。迁到 R2 的私有桶后用 use_lockfile 加锁,凭据由包装脚本从 Vault 取,改 state 之前先在本地拍一份快照。
actuator 可以与业务共用端口,也可以通过单独管理端口运行。单独端口能隔离外部流量并统一指标路径,但会引入独立的内嵌 Web 服务与线程池;探针若未配置回主端口可能出现健康误报,采集端口也需在 Service 与 ServiceMonitor 中对齐。
Jenkins 用 SSH 登录 VM 部署,登录所有目标机的凭据和应用配置都集中在 CI 控制器上。方向反过来之后,控制器被攻破也登录不了生产机,代价在部署结果的反馈、有顺序的部署、每台 VM 上的部署脚本。K8s 上这已是主流,VM 上也有先例。