我们正在将我们的ruby微服务移动到kubernetes,并且我们用于在config/application.yml
中保存特定于环境的配置。使用kubernetes,您可以为每个服务创建特定于环境的文件,例如config/kubernetes/production.yml
等如何使用kubernetes配置环境特定的应用程序配置
尽管kubernetes pod配置文件能够容纳环境变量,但您似乎无法在其中保存结构化数据。
举一个例子,在application.yml
我们有
development: &development
process:
notifier:
type: 'terminal-notifier'
...
production: &production
process:
notifier:
type: 'airbrake'
api_key: 'xxxx'
host: 'xxx.xxx.com'
...
是否合理,继续这种做法与kubernetes并在application.yml
破坏环境了或根本kubernetes有其他最佳实践置备吊舱结构化配置?
注意,直到所有的服务都迁移,我们基本上保持配置为这样:
kubernetes_staging:
<<: *staging
...
将它的工作有一个配置/ application.yml文件,并将它放入您的码头工人的形象,并使用相同的图像为各类吊舱,然后控制通过改变'-e'参数来使用哪个环境?例如: '.spec.container []。command:[“rails”“server”“-e”,“production”]' –
这就是我们现在正在做的事情。我们通过设置“RUN_ENV”环境变量来指定kubernetes配置中的参数。所以我想用rails的方式保持最佳做法? – user1047833
我对Rails没有任何经验,所以我不能说那个。 –