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

Kubernetes:如何管理同一应用程序的多个单独部署,kubernetes,kubectl,Kubernetes,Kubectl,我们正在将应用程序的部署从使用VM迁移到Kubernetes,由于我对Kubernetes的了解非常有限,我不知道如何为多个客户端设置部署。 现在我们为每个客户机都有一个单独的VM,但是如何在Kubernetes中以一种成本、资源高效且易于管理的方式来分离客户机呢 我设法使用名称空间创建了开发和登台环境,这非常有效。 要更新开发和登台部署,我只需使用kubectl apply-f--namespace staging 现在我需要为多个客户端(50+)将应用程序部署到生产环境中。它们应该彼此完全分

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

我设法使用名称空间创建了开发和登台环境,这非常有效。 要更新开发和登台部署,我只需使用
kubectl apply-f--namespace staging

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

你能告诉我在库伯内特斯做这件事的正确方法吗?

你可以用。它提供了配置定制的纯声明性方法,以管理任意数量的明确定制的Kubernetes配置

  • 按客户列出的一个(或一组名称空间)
  • 有一个非常好的模式系统来处理一般配置和客户机的一些调整
  • 使用
    NetworkPolicy
    隔离客户端之间的网络

谢谢您的回复。Kustomize看起来非常有用,也非常棒。我以后肯定会花一些时间来学习它,但你能告诉我,它是否允许我只更新所有客户端的部署,而不在代码中的某个地方硬编码所有部署?因为如果仍然需要我硬编码所有代码,那么我将坚持在
kubectl apply-f--namespace
命令中硬编码它们以节省时间。