Kubernetes:如何管理同一应用程序的多个单独部署



我们正在将应用程序的部署从使用虚拟机迁移到Kubernetes,由于我对Kubernete的了解非常有限,我不知道如何为多个客户端设置部署。现在,我们为每个客户端都有一个单独的VM,但如何在Kubernetes中以成本和资源高效且易于管理的方式分离客户端?

我设法使用名称空间创建了开发和暂存环境,这非常有效。为了更新开发和阶段部署,我只使用kubectl apply -f <file> --namespace staging

现在我需要为几个客户端(50多个(将应用程序部署到生产环境中。它们应该彼此完全分离(使用单独的环境变量和机密(,而代码应该是相同的。我不知道实现这一目标的最佳方式是什么。

你能告诉我在Kubernetes中什么是正确的方法吗?

您可以使用Kustoize。它为配置定制提供了纯粹的声明性方法,以管理任意数量的独特定制的Kubernetes配置。

https://github.com/kubernetes-sigs/kustomize/tree/master/examples

  • 一个(或一组名称空间(由客户提供
  • kustomize有一个非常好的模式系统,可以处理一般配置和客户端的一些调整
  • 使用NetworkPolicy隔离客户端之间的网络

相关内容

最新更新