helmfile与多个客户的最佳实践



我们希望有一些建议,因为我们希望在部署过程中集成helmfile。。。

我们的基础设施有以下详细信息:

  • 我们有很多客户
  • 所有客户都安装了相同的服务(每个客户都有自己的服务,客户之间不共享(
  • 每个客户的凭据不同
  • 我们更喜欢单独的部署过程(我们不想同时升级所有客户时间(
  • 所有客户配置数据都被分离到单独的配置中文件,如:
    • config/customer1.yaml
    • config/customer2.yaml
    • config/customer3.yaml

所以我想知道,我们是否应该使用";"环境";使用客户名称进行升级。或者您会推荐另一个变量吗?你认为为这个过程创建多个helmfiles更好,还是只创建一个?

谢谢!

您认为为这个过程创建多个helm文件更好,还是只创建一个helm?

在多个环境中使用一个helmfile非常实用,可以节省编写多个helmfiles的时间。

我们应该使用"环境";客户名称?

对于类似的设置(部署到具有不同值和配置的多个环境(,我在Helmfile:中有

- name: my-app
namespace: "{{ .Namespace }}"
chart: k4r-distance-matrix-api
values:
- my-app/values.yaml  ## here go the common values if any exists
- my-app/values.{{ .Environment.Name }}.yaml  ## here goes the environment specific values

在我的CI中的deploy步骤中,我有:

.deploy:
stage: deploy
variables:
ENVIRONMENT: ""
CONTEXT: ""
NAMESPACE: ""
before_script:
- kubectl config use-context $CONTEXT
script:
- helmfile -e "$ENVIRONMENT" --namespace "$NAMESPACE" sync

相关内容

  • 没有找到相关文章

最新更新