使用命名空间隔离工作负载

本页介绍了如何通过以下方式提高集群的可靠性和性能:识别在默认命名空间中运行的工作负载,并将这些工作负载移至专用命名空间。

关于命名空间

在 Kubernetes 中,命名空间可让您在一个集群内隔离资源组。资源名称在命名空间中必须是唯一的,但不必在命名空间之间保持唯一性。

关于默认命名空间

创建集群时,Kubernetes 会创建一个名为 default 的命名空间,并默认将此命名空间用于所有资源。我们不建议在生产集群中为工作负载使用 default 命名空间。

如果您将工作负载部署到 default 命名空间,则会面临以下风险:

  • 因共享资源(CPU、内存)和网络而导致的嘈杂邻居问题或资源耗尽导致工作负载性能下降。
  • 因意外的命名冲突和环境之间的互动而导致的中断。
  • 由于访问权限和网络隔离不充分,安全性较弱。
  • default 命名空间随时间推移而过度拥挤,以及难以进行隔离清理而导致的集群资源使用效率低下。

为何要将工作负载部署到专用命名空间?

将工作负载部署到专用命名空间的好处包括:

  • 通过使用命名空间绑定的内存和 CPU 资源配额进行资源隔离,提高了可靠性和性能稳定性,降低了“相邻用户争用”问题和资源耗尽的风险。
  • 增强的安全性:使用 RBAC 授权的命名空间范围的访问权限控制,遵循最小权限原则;使用命名空间范围的网络政策,隔离应用之间的网络通信。
  • 通过以下方式简化管理和运营

    • 减少共享同一集群的不同工作负载或团队之间的命名冲突。
    • 隔离可观测性。
    • 缩小问题排查和调试范围。
    • 进行费用归因和优化。
    • 将操作定位到特定命名空间,而不会影响集群的其余部分。
  • 多租户,可按应用、环境和团队整理和隔离集群资源及政策。

检查特定集群的 default 命名空间

如需检查特定集群的 default 命名空间中运行的工作负载,请检查集群的 default 命名空间:

  1. 转到工作负载页面。

    转到“工作负载”

  2. 集群字段中,输入集群的名称。

  3. 命名空间字段中,输入 default

将工作负载迁移到专用命名空间

确定在 default 命名空间中运行的工作负载后,请将其迁移到专用命名空间,以实现更高的可靠性、更稳定的性能和更强的安全性。

后续步骤