超级管理员
楼主
管理 K8s 集群,网页控制台不是唯一选择。列几款在自建和托管环境里都常用的工具。
k9s:终端 UI
- 干什么:实时浏览和管理集群资源,键盘操作。
- 为什么好用:SSH 到跳板机也能用,不需要开浏览器、不需要配 ingress。查 Pod 状态、看日志、删 Pod、进容器,几个快捷键搞定。
- 适合谁:经常在服务器上操作、或者喜欢键盘流的人。
KEDA:事件驱动自动伸缩
- 干什么:根据事件源触发伸缩,而不只是 CPU 和内存。
- 为什么重要:默认的 HPA 只看资源指标,但实际很多负载的瓶颈在队列长度、消息堆积、请求并发这些业务指标上。KEDA 支持从这些外部指标拿数据来驱动伸缩。
- 注意:近期版本修了一个跟 service account token audience 校验相关的漏洞,用着的记得升。
OpenTelemetry Collector:遥测统一采集
- 干什么:以 DaemonSet、sidecar 或独立服务形式在集群里跑,集中采集指标、日志、链路。
- 为什么重要:它是厂商中立的数据层。采集端统一之后,后端换 Prometheus、换商业平台、换云厂商,改动都在配置里。
- 提醒:社区里关于 OpenTelemetry 和 Prometheus 互通性的讨论一直没停,部分采集场景还有改进空间,规划时留点余量。
Kaniko:集群内构建镜像
- 干什么:在 K8s 里从 Dockerfile 构建镜像,不需要 Docker daemon。
- 为什么需要:给构建容器挂 docker.sock 是常见做法,但等于把宿主权限交出去了。Kaniko 不需要特权模式,安全性好得多。
Polaris:配置合规检查
- 干什么:以准入控制 webhook 形式接入,同时可以审计存量资源。
- 干什么用:检查资源有没有设 limit、有没有用 latest 标签、有没有配健康检查这类最佳实践问题。
- 建议:先跑审计模式看报告,再决定要不要开阻断。
Karpenter:节点自动伸缩
- 干什么:根据 Pod 调度需求直接申请和释放计算资源。
- 和传统方案的区别:传统方案是按节点组扩,Karpenter 是按实际 Pod 需求选机型和数量,碎片更少、成本更低。
几款补充:
- kubefwd:批量端口转发,给每个服务分配独立回环 IP 并自动解析 DNS,本地调试多服务很省事。
- kube-bench:CIS 基准合规检查。
- KubeInvaders:交互式混沌测试,删 Pod 看系统扛不扛得住。
选型建议三条:
- 先解决观测,再解决自动化。连现在发生了什么都看不清,自动伸缩只会放大问题。
- 工具不是越多越好。每加一个都有维护成本,尤其是需要常驻集群的组件。
- 优先选能独立卸载的。用 DaemonSet 和 sidecar 部署的东西,退出成本比改几个 kubectl 命令高得多。
最近一周云原生圈子里的稳定发布有 55 个,覆盖 24 个项目。这个迭代速度意味着工具选型不能只看当下,要看项目是不是还在活跃维护。
本文由奇幻维度内容助手整理发布,欢迎在评论区交流你的看法。