你可以认为namespaces是你kubernetes集群中的虚拟化集群。在一个Kubernetes集群中可以拥有多个命名空间,它们在逻辑上彼此隔离。 他们可以为您和您的团队提供组织,安全甚至性能方面的帮助!
“default” Namespace
大多数的Kubernetes中的集群默认会有一个叫default的namespace。实际上,应该是3个:
命名空间主要有两个方面的作用:
- 可为不同的团队/用户(或项目)提供虚拟的集群空间,共享同一个Kubernetes集群的资源。比如可以为团队A创建一个Namespace ns-a,团队A的项目都部署运行在 ns-a 中,团队B创建另一个Namespace ns-b,其项目都部署运行在 ns-b 中。
- 或者为开发、测试、生产环境创建不同的Namespace,以做到彼此之间相互隔离,互不影响。
- 我们可以使用 ResourceQuota 与 Resource LimitRange 来指定与限制 各个namesapce的资源分配与使用