首页/开发/CI/CD 与发布速查/命名空间与隔离
环境与配置管理60 条

命名空间与隔离

用命名空间(或云账号/项目)隔离环境与团队:权限、配额、网络策略按边界收口,降低误操作与横向影响。

CI/CD 与发布速查开发更新于 2026-10-13

命名空间与隔离是什么

命名空间(Namespace)是 Kubernetes 里的管理边界:用它隔离环境与团队,把权限、配额、网络策略按边界收口,降低误操作与横向影响。四个隔离维度常用组合:RBAC 权限、ResourceQuota/LimitRange 资源配额、NetworkPolicy 网络策略、Secret 可见范围。粒度可以按环境(dev/test/prod)或按团队划分;强合规场景直接升级到独立云账号或订阅。注意命名空间是管理边界而不是强安全边界——内核与容器运行时是共享的,更高强度需要独立节点池或集群。

基本信息

隔离维度RBAC 权限、ResourceQuota/LimitRange、NetworkPolicy、密钥可见范围
粒度按环境(dev/test/prod)或按团队/项目划分
账号级强合规场景直接用独立云账号/订阅隔离
网络NetworkPolicy 默认拒绝、按需放行

典型使用场景

  • 多团队共享集群:每团队一个命名空间,权限与配额各自收口。
  • 环境分离:dev/test/prod 不同命名空间,甚至不同集群。
  • 配额治理:先设 requests 与配额,防止单团队超额拖垮集群。
  • 网络收敛:默认拒绝跨命名空间流量,按依赖关系逐个放行。
  • 密钥范围:Secret 按命名空间隔离,缩小泄露影响面。

配额示例

配额示例
apiVersion: v1
kind: ResourceQuota
metadata:
  name: team-quota
  namespace: team-a
spec:
  hard:
    requests.cpu: "20"
    requests.memory: 40Gi
    pods: "100"
# 配合 LimitRange 设默认 requests/limits

隔离维度读法

维度机制效果
权限RBAC 按命名空间授权操作范围收口
资源ResourceQuota/LimitRange防抢占与超额
网络NetworkPolicy限制横向移动
密钥Secret 按命名空间可见缩小泄露面
隔离强度与运维成本正相关:按数据敏感度与事故半径选择合适粒度,不是越细越好。
命名空间不是强安全边界:内核与运行时共享,配合 RBAC 与网络策略使用;更高强度用独立节点池或集群。
命名空间生命周期与资源绑定:删除命名空间会级联删除其中全部资源,生产命名空间的删除权限单独审批。

易错点

  • 共享命名空间多环境混布:资源抢占与权限混同,按环境拆分。
  • 配额未设:一个团队的超额负载拖垮整集群,先设 requests 与配额。
  • 网络策略默认放行:跨命名空间流量无人管控,逐步切换到默认拒绝加白名单。
  • Secret 跨命名空间直接引用:Secret 不能跨命名空间挂载,用同步机制或重新签发。
  • 权限按命名空间给但集群级资源未收口:CRD、节点等集群级权限仍可越界,盘点集群级绑定。

数据来源与参考

  • Kubernetes 文档《Namespaces》
  • Kubernetes 文档《Resource Quotas》
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌