Kubernetes 集群多租户隔离方案

Namespace 只是隔离起点

Namespace 可以划分资源视图,但并不能自动隔离网络、节点、镜像、密钥和运维操作。多租户集群需要在命名空间之上继续配置 RBAC、NetworkPolicy、ResourceQuota、LimitRange 和安全基线。

身份和权限要最小化

RBAC 应按照角色授予最小权限,避免把 cluster-admin 权限扩散给应用团队。ServiceAccount、Secret、ConfigMap 和命名空间操作都需要有明确边界。

网络隔离需要显式策略

在默认互通的集群中,一个业务的 Pod 可能直接访问另一个业务的服务。多租户场景建议使用默认拒绝策略,再按服务依赖显式放行入口和出口流量。

  • RBAC 最小权限
  • 默认拒绝网络策略
  • 资源配额与准入控制

资源与供应链安全同样重要

ResourceQuota 和 LimitRange 可以避免单个租户抢占过多 CPU、内存和存储资源。镜像来源、漏洞扫描、签名校验和 Pod 安全上下文也应纳入多租户治理。