首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用kubernetes提供特定环境的应用程序配置

如何使用kubernetes提供特定环境的应用程序配置
EN

Stack Overflow用户
提问于 2015-11-03 08:47:32
回答 1查看 722关注 0票数 2

我们正在将我们的ruby微服务转移到kubernetes,我们曾经在config/application.yml中保存特定于环境的配置。使用kubernetes,您可以为每个服务创建特定于环境的文件,例如config/kubernetes/production.yml等。

虽然kubernetes pod配置文件能够保存环境变量,但您似乎无法在其中真正保存结构化数据。

例如,在application.yml中,我们有

代码语言:javascript
复制
development: &development
  process:
    notifier:
      type: 'terminal-notifier'
  ...

production: &production
  process:
    notifier:
      type: 'airbrake'
      api_key: 'xxxx'
      host: 'xxx.xxx.com'
  ...

使用kubernetes继续这种实践并打破application.yml中的环境是合理的,还是kubernetes对于为pod提供结构化配置有其他一些最佳实践?

注意,在迁移所有服务之前,我们基本上必须保持这样的配置:

代码语言:javascript
复制
kubernetes_staging:
  <<: *staging
  ...
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-10 16:20:57

您可以通过几种方法来做到这一点,一种是继续在单个文件中执行您要做的事情,另一种是使用标签来指定要使用哪个环境的配置,另一种是使用名称空间。我个人建议使用名称空间,这样您就可以为每个环境拥有单独的.yml文件,这些环境可能产生相同的吊舱,但配置不同,因此要做到这一点,您可以使用暂存、prod等名称空间。名称空间也是拥有相同的kubernetes集群的一种很好的方式,它具有分阶段和生产的概念。此外,还可以为某些命名空间指定权限。

下面是名称空间https://github.com/kubernetes/kubernetes/blob/release-1.0/docs/design/namespaces.md上的文档

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33494763

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档