Kubernetes – 为“服务”创build特定的命名空间

在我们的微服务架构中,我们有许多有状态的服务:

  • MongoDB的
  • MySQL的
  • Redis的
  • ElasicSearch

我们还有两个Kubernetes namespaces用于我们的不同环境:

  • 分期
  • 生产

我们在两个环境/命名空间中运行上述每个有状态的服务。 我一直在想,由于预算有限,我们的集群资源有限。 我们是否应该为这些服务创build第三个命名空间,并将它们用于生产环境和临时环境? 例如创build一个

“服务”命名空间?

这种情况下最好的做法是什么? 有什么缺点吗?

名称空间通常不会彼此交谈,除非使用完全限定名称。

对于Staging和Prod使用相同的后端服务听起来像是一个非常冒险的赌注:任何你在分期中搞砸的东西都会自动在Prod中。 可能不是你想要的…

但如果你想知道你是否可以,是的,你可以,如果你使用FQDN(即service-name.svc..cluster.local)到达服务。